Base
Scaffold a base monorepo project with workspaces configuration, ready for adding framework workspaces.
Why Use This Command?
- Creates the root
package.jsonwithworkspacesconfigured forapps/*andpackages/*so you can add workspaces immediately. - Generates a baseline
nova.config.jsonso recipes and utilities have a valid config to work with from the start. - Installs
@cbnventures/novaas a dev dependency so thenovaCLI is available inside the project without a global install.
Requirements
- Node.js runtime — Use any Node.js LTS release.
- Empty directory — The command only works when no
package.jsonexists.
Usage
Options
| Flag | Description |
|---|---|
-d, --dry-run | Preview changes without writing files. |
--name <name> | Project name. |
--output <dir> | Output directory. |
Output Structure
{project-slug}/
├── package.json
├── nova.config.json
├── apps/
└── packages/
How It Works
Interactive Wizard
When run without flags, the command walks you through an interactive wizard:
- Project name — Enter a slug for your monorepo (e.g.
my-app). - Where should the project be created? — Choose between creating a new directory or building in the current working directory.
- Output directory — If creating a new directory, confirm the path (default:
./{project-name}). - Run generators — Optionally run project-level generators (
.editorconfig,.gitignore,LICENSE, etc.).
Non-Interactive Mode
Provide --name and --output to skip all prompts:
nova scaffold starter base --name my-app --output ./my-app
Next Steps
After scaffolding, use nova scaffold app or nova scaffold docs to add workspaces, then run generators for project-level files like .editorconfig, .gitignore, and LICENSE.