CLI

create-foundry CLI usage, options, and templates.

Overview

create-foundry scaffolds a new Foundry project from a template. It wraps nuxt init with Foundry-specific starter templates.

Installation

No installation needed. Run directly with your package manager:

# pnpm
pnpm create foundry

# npm
npm create foundry

# npx
npx create-foundry

Usage

create-foundry [directory] [options]

Arguments

ArgumentDefaultDescription
directorymy-projectProject directory name

Options

OptionAliasDefaultDescription
--template-tdefaultStarter template to use

Examples

# Create with defaults (./my-project, default template)
pnpm create foundry

# Specify directory
pnpm create foundry my-saas-project

# Specify template
pnpm create foundry my-project -t default

Templates

default

Minimal starter with a landing page and signal capture. Includes:

  • Landing page with hero, benefits, FAQ, and email capture sections
  • Content files in YAML/Markdown (not hardcoded)
  • Webhook integration for lead capture
  • Umami analytics pre-configured
  • Dockerfile for container deployment
  • vercel.json for Vercel deployment

What You Get

my-project/
├── app/
│   └── app.config.ts       # Your app config overrides
├── content/
│   ├── config/
│   │   ├── site.yml         # Business info
│   │   └── navigation.yml   # Header/footer navigation
│   ├── pages/
│   │   └── index.md         # Landing page (MDC sections)
│   └── data/
│       └── faq.yml          # FAQ items
├── content.config.ts        # Content collection definitions
├── nuxt.config.ts           # Nuxt config (extends layer)
├── package.json
├── Dockerfile
└── .env.example

After Scaffolding

cd my-project
pnpm install
pnpm dev

Then:

  1. Edit content/config/site.yml with your business details
  2. Edit content/pages/index.md to customize your landing page
  3. Set NUXT_WEBHOOK_URL in .env to start capturing leads
  4. Deploy — see Deployment

Development

If you're contributing to the CLI itself:

# From the monorepo root
pnpm cli:build    # Build CLI to dist/
pnpm cli:publish  # Publish to npm

The CLI source lives in cli/ and uses:

  • citty — CLI framework
  • tsup — TypeScript bundler
  • @nuxt/cli — Nuxt scaffolding under the hood

How It Works

Under the hood, create-foundry runs:

nuxt init [directory] -t gh:incubrain/foundry/.starters/{template}

This clones the starter template from the Foundry monorepo's .starters/ directory and initializes a fresh project.