CLI Reference
The Nova CLI lets you generate files, apply recipes, scaffold projects, and run utilities.
Not sure what to type? Build the command one section at a time.
Start with nova, then the command and subcommand (if available), and finally the options like --all or -a. Each step shows inline guidance so you don't wonder what to do next.
Get Started
- nova (installed)
- npx (no install)
nova <command> <subcommand> [option]
npx --yes @cbnventures/nova@latest <command> <subcommand> [option]
- Options are recommended. It is recommended to type the option (flags / switches) you want, like
--allor-a. No assumptions. This helps you learn the command faster. - Build it step by step. Start with
nova. Add the command. Add the subcommand if needed. Finish with options like--allor-a. Repeat until it feels natural.
Commands
All commands below show a help screen when run with the --help or -h option, so you can explore safely and avoid accidental runs.
Generators
Create semi-tailored versions of supported vendor and project essentials, populated with values from nova.config.json at the monorepo root.
All commands in "Generators" are shaped as nova generate <subcommand> or nova gen <subcommand>.
AWS
| Subcommand | What It Does |
|---|---|
aws-amplify | Create a amplify.yml file for AWS Amplify deployments |
Cloudflare
| Subcommand | What It Does |
|---|---|
cloudflare-workers | Create a wrangler.toml file for Cloudflare Workers deployments |
Docker
| Subcommand | What It Does |
|---|---|
docker-compose | Create a docker-compose.yml file for Docker builds |
docker-file | Create a Dockerfile for Docker builds |
Docusaurus
| Subcommand | What It Does |
|---|---|
docusaurus-config | Create a docusaurus.config.ts file for Docusaurus configuration |
GitHub
| Subcommand | What It Does |
|---|---|
github-funding | Create a ./github/FUNDING.yml file for GitHub to enable sponsor links |
github-issue-template | Create a ./github/ISSUE_TEMPLATE directory for GitHub to create issue templates |
github-workflows | Create a ./github/workflows directory for GitHub to enable CI/CD automation |
Must-Haves
| Subcommand | What It Does |
|---|---|
must-haves-dotenv | Create a .env file for managing local environment secrets across your project |
must-haves-editorconfig | Create a .editorconfig file for managing consistent coding styles |
must-haves-gitignore | Create a .gitignore file for managing files that should be excluded from Git commits |
must-haves-license | Create a LICENSE file for managing project license agreements |
must-haves-post-install | Create a post-install.ts file for expanding on post-install controls |
must-haves-read-me | Create a baseline README.md file for your project |
Next.js
| Subcommand | What It Does |
|---|---|
nextjs-config | Create a next.config.mjs file for Next.js configuration |
Vite
| Subcommand | What It Does |
|---|---|
vite-config | Create a vite.config.mjs file for Vite configuration |
Recipes
Apply scripted edits that automate routine maintenance, using values from nova.config.json at the monorepo root.
All commands in "Recipes" are shaped as nova recipe package-json <subcommand> or nova rcp package-json <subcommand>.
| Subcommand | Shorthand | What It Does |
|---|---|---|
cleanup | clean | Remove unsupported keys and reorder remaining keys in workspace package.json files |
normalize-artifacts | norm-art | Normalize files, bin, man, directories, private, and publishConfig in workspace package.json files |
normalize-bundler | norm-bun | Normalize types, module, sideEffects, and esnext bundler fields in workspace package.json files |
normalize-dependencies | norm-dep | Normalize dependency fields and optionally pin versions in workspace package.json files |
normalize-modules | norm-mod | Normalize exports, main, type, browser, and imports fields in workspace package.json files |
normalize-tooling | norm-tool | Normalize scripts, gypfile, config, and workspaces in workspace package.json files |
sync-environment | sync-env | Sync engines, os, cpu, libc, devEngines, and packageManager in workspace package.json files |
sync-identity | sync-id | Sync name, version, description, keywords, and license to workspace package.json files |
sync-ownership | sync-own | Sync homepage, bugs, author, contributors, funding, and repository to workspace package.json files |
Scaffolding
Bootstrap full project starters for popular builders and tools. All scaffolds are built as a monorepo and include Docusaurus built in.
All commands in "Scaffolding" are shaped as nova scaffold <subcommand> or nova scaf <subcommand>.
| Subcommand | Project Type |
|---|---|
nextjs | Next.js |
Utilities
Tools for diagnostics, quick checks, and development helpers.
All commands in "Utilities" are shaped as nova utility <subcommand> or nova util <subcommand>.
| Subcommand | Shorthand | What It Does |
|---|---|---|
changelog | log | Record changes and release versioned changelogs |
initialize | init | Generate a new nova.config.json configuration file for use with nova generate and nova recipe commands |
run-recipes | run-rcp | Run all enabled recipes and finalize workspace package.json files |
run-scripts | run-scr | Run package.json scripts by pattern in sequential or parallel mode |
transpile | xpile | Transpile TypeScript with filtered diagnostics, emitting compiled output for project-owned files |
type-check | type-chk | Run full TypeScript type checking scoped to project-owned files, filtering out third-party diagnostics |
version | ver | Generate a Markdown-ready snapshot of your development stack versions (e.g., node --version) |
Troubleshooting
Exit Codes
| Code | Meaning | Result |
|---|---|---|
0 | Success | Response of the executed command |
1 | Error | Help text displayed |
Quick Fixes
- Prefer explicit command, subcommands, and options for clarity, fewer mistakes, and predictable behavior. For example,
nova utility version --allinstead of the alternate variants.