npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

create-opub-app

v0.1.7

Published

Create OPub app with one command

Downloads

5

Readme

Create OPub App

A CLI tool to create a new OPub app.

Why

We need a way for anyone to start a new personalized OPub app as fast and easily as possible. They should be able to choose a project name, theme, or a template while starting. A CLI checks those boxes.

Get Started

npm create opub-app@latest

Arguments

The CLI takes optinal arguments

npm create opub-app@latest [package-name] -- [options]

eg: npm create opub-app@latest my-opub-app -- -e d4d -m pnpm

Options

  • -e, --example - An example to bootstrap the app with. [d4d | data-exchange]
  • -m, --manager - Explicitly tell the CLI to bootstrap the application using specific package manager. [npm | pnpm | yarn | bun]
  • --noGit - Explicitly tell the CLI to not initialize a new git repo in the project
  • --noInstall - Explicitly tell the CLI to not run the package manager's install command

Tech Stack

  • commander - backbone of the CLI
  • clack - used for interactive prompt
  • got - HTML request library
  • tar - extract tar compressed file
  • @vercel/ncc - compile Node.js modules into a single file

Design

The CLI is designed to be as simple as possible. It asks for the project name, options and does some validations. It then fetches the template from the OPub GitHub repository and extracts it to the current working directory.

OPub CLI Design

Next Steps

  • [x] Test in various environments

    • [x] Windows (WSL2)
    • [x] Linux
    • [x] Mac
  • [ ] Add option to choose theme

  • [x] Ask for new name if the provided one is not unique

  • [x] Add option to select template based on initiative

  • [x] Add support for multiple package managers

    • [x] npm
    • [x] yarn
    • [x] pnpm
    • [x] bun