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 🙏

© 2026 – Pkg Stats / Ryan Hefner

@ebay-dt/bonfire-cli

v0.1.0

Published

The Bonfire command-line tool.

Readme

@ebay-dt/bonfire-cli

The Bonfire preparation command for local development.

Usage

Add the package to an application and run this before Next.js development:

{
  "scripts": {
    "dev": "bonfire prepare && next dev"
  }
}
bonfire prepare [--root <application-root>]

prepare validates BF_SESSION_SECRET from the process environment when it is supplied. Otherwise it safely creates or updates <root>/.env.local with 32 random bytes encoded as hexadecimal, without rotating an existing valid secret. It also ensures .env.local is ignored by <root>/.gitignore.

For values already in .env.local, the command accepts only literal values: unquoted #, $ variable expansion, and malformed or multiline quotes are rejected. This keeps the value validated by Bonfire identical to the value loaded by Next.js. Put secrets requiring other dotenv syntax in the process environment instead.

The command never invokes GitHub CLI, loads application configuration, or prints the secret. It exits with 0 on success, 1 on validation or filesystem failure, and 2 for invalid command syntax.

Converting a Next.js scaffold

Convert a compatible Next.js App Router scaffold in place. This command intentionally generates an eBay-configured application, including the eBay preset, corporate GitHub hostname, and deployment defaults:

bonfire convert \
  --root /path/to/app \
  --app-id my-bonfire-app

When running from the Bonfire monorepo, use the workspace package directly (after building the CLI):

pnpm --filter @ebay-dt/bonfire-cli exec node dist/bin.js convert \
  --root /path/to/app \
  --app-id my-bonfire-app \
  --name "My Bonfire App"

--root and --app-id are required. The display name defaults to a humanized app ID (my-bonfire-app becomes My Bonfire App). Hostname defaults to github.corp.ebay.com and the development port defaults to 1995. Data routes are included by default; use --without-data to omit the eBay item gateway adapter. Use --dry-run to inspect the plan and --skip-install to leave dependency installation and type generation to the caller. Existing customized files and conflicting settings stop the conversion rather than being overwritten.

The normal conversion performs pnpm install, formats changed files, runs next typegen, and synchronizes generated repository context. It does not create GitHub/Vercel projects, authenticate a machine, or start the development server.

Context repository operations

Use the context commands explicitly from an instance repository:

bonfire context sync [--check] [--root <root>]
bonfire context install [--check] --app-id <app-id> [--root <root>]

sync writes deterministic repository projections and sync --check performs the same validation without writing. Both default --root to the current working directory and print only generated paths and status. install installs canonical skills and merges MCP definitions into the user's Cursor MCP configuration while preserving unrelated entries. install --check validates machine state without changing it.

Branch preparation

Before starting Next.js in development, run:

bonfire branch prepare --root <application-root> --hostname <hostname>

The command loads environment values with Next-compatible precedence and honors BF_DISABLE_AUTO_BRANCH_SWITCH=true. Disabled mode performs no GitHub CLI or Git operation. When switching is enabled, BF_PROTOTYPE_BASE_BRANCH overrides the default main base branch and must name an existing local or fetched branch; preparation fails rather than silently using another branch. When enabled, an already-authenticated GitHub CLI user is prepared on their login branch through @ebay-dt/bonfire-node. Missing or unauthenticated GitHub CLI is a successful deferred result; other failures return exit code 1. The command never starts interactive authentication or prints identity, credentials, paths, or Git output.