Get a Genesis project running in minutes.
Use this while Genesis is still private / unpublished:
git clone <your-genesis-repo>
cd genesis
npm install
npm run build:packagesCreate projects with the local CLI and --local so @genesis/* packages link from disk (no registry):
node cli/dist/index.js create my-app --localExample with a template, no prompts:
node cli/dist/index.js create my-portfolio --local -y -t informational-site
cd my-portfolio
cp .env.example .env
npm install
npm run devOnce @genesis/cli is published to GitHub Packages:
- Copy
.npmrc.exampleand setGITHUB_TOKEN(see Publishing). - Run:
npx @genesis/cli create my-app
cd my-app
cp .env.example .env
npm install
npm run devFull publish and tagging guide: Publishing.
genesis create my-appYou will be prompted for:
- Project name — e.g.
my-app - Project structure — monolith (default) or Turborepo monorepo
- Template — blank, informational site, SaaS, or e-commerce (index · SaaS guide)
- Modules — only for
custom(full picker), or optional Customize modules? for named templates
Example session (informational site):
Project name: my-portfolio
Project structure: Monolith
Select template: Informational Website
Marketing and content sites without user accounts or payments
Includes: Branding
? Customize modules for this template? No
Example session (custom):
Project name: my-app
Select template: Blank (custom)
Select modules:
[x] Authentication
[x] Branding
Skip prompts with flags:
# SaaS starter with default modules (auth, branding, payments, dashboard)
genesis create acme-saas -y -t saas-app
# Turborepo monorepo with apps/web
genesis create acme-saas -y -t saas-app --structure monorepo
# Blank project with specific modules
genesis create my-shop -t custom -m branding,payments,dashboard
# Informational landing page
genesis create my-site -y -t informational-site
# E-commerce starter
genesis create my-store -y -t ecommerce| Flag | Description |
|---|---|
-y, --yes |
Use template defaults without prompts (structure defaults to monolith) |
-s, --structure <type> |
monolith (default) or monorepo — see Project structure |
-t, --template <name> |
custom, informational-site, saas-app, ecommerce — see Templates |
-m, --modules <list> |
Comma-separated module IDs, e.g. auth,branding,payments |
-l, --local |
Link @genesis/* from the local monorepo (file: paths) — see Publishing |
cd my-app
cp .env.example .env
# Edit .env with your credentials
npm install
npm run devcd my-app
cp apps/web/.env.example apps/web/.env
# Edit .env with your credentials
npm install
npm run dev # runs turbo dev in apps/webOpen http://localhost:3000.
- Templates index — starters vs complete apps; SaaS, Informational, E-commerce
- Configure environment variables
- Set up genesis.config.ts
- Add or remove modules
- Pick a workflow for your use case