gen-package-name
v0.0.11
Published
Package Name Generator for Node.JS
Maintainers
Readme
gen-package-name
CLI utility that generates npm package name ideas and checks availability against the npm registry.
Features
- Interactive package-name selection flow with regenerate + exit actions
- Non-interactive generation mode for scripts and CI
- Availability checks for generated names and one-off names
- Package metadata lookup with
--info - JSON output for automation with
--json - Optional availability-only filtering with
--available-only
Requirements
- Node.js
>=16 - pnpm (for local development)
Installation
Install globally:
npm install -g gen-package-nameRun without installing:
npx gen-package-nameLocal development setup:
git clone https://github.com/f3rnox/gen-package-name.git
cd gen-package-name
pnpm installUsage
Interactive mode:
gen-package-nameNon-interactive generation from description:
gen-package-name -d "parse json streams" -nGenerate 10 names from explicit keywords, keep only available, emit JSON:
gen-package-name -k parse,json -c 10 -a -jCheck one package name:
gen-package-name --check my-package-nameFetch package metadata:
gen-package-name --info chalk --jsonCLI options
Usage: gen-package-name [options]
Generate available npm package names interactively or via flags.
Options:
-V, --version print version and exit
-d, --description <text> describe the package; used to extract keyword seeds
-k, --keywords <list> comma- or space-separated keyword seeds (overrides
--description extraction)
-c, --count <n> number of package names to generate (default: 5)
-a, --available-only only output names that are available on npm
(default: false)
-j, --json emit machine-readable JSON output (default: false)
-n, --non-interactive skip prompts; print generated names and exit
(default: false)
--check <name> check whether a specific package name is available
on npm
--info <name> fetch and print npm registry metadata for a package
--no-color disable colored output
-h, --help display help for commandHow the interactive flow works
- Resolve keywords from
--keywords,--description, or an interactive prompt. - Generate a batch of candidate names.
- Check npm availability for each candidate.
- Pick a name, regenerate the list, or exit.
- If the selected name is taken, display registry metadata for that package.
Development
pnpm install
pnpm dev
pnpm build
pnpm test
pnpm lint
pnpm lint:eslint
pnpm formatScripts
| Script | Description |
| --- | --- |
| pnpm start | Run the CLI via tsx |
| pnpm dev | Run in development mode |
| pnpm build | Build TypeScript and generate docs |
| pnpm test | Run tests with vitest |
| pnpm lint | Run markdownlint and eslint |
| pnpm lint:eslint | Run eslint only |
| pnpm format | Format with prettier |
| pnpm serve:docs | Serve generated TypeDoc docs locally |
| pnpm serve:coverage | Serve coverage report locally |
Contributing
Contributions are welcome. Please open an issue before submitting a pull request for significant changes.
- Fork the repository
- Create a feature branch (
git checkout -b feat/my-feature) - Commit using Conventional Commits
- Push and open a pull request
Changelog
See CHANGELOG.md.
License
MIT © 2026 Cris Mihalache
