Quickstart

Go from zero to a running validation site in under 5 minutes.

Prerequisites

  • Node.js 22 or later
  • A package manager — pnpm is recommended, npm works too

Scaffold a New Project

The fastest way to start is with the create-foundry CLI:

npx create-foundry my-project

This clones the starter template into my-project/ with everything pre-configured.

The CLI uses @nuxt/cli under the hood. You can also pass --template default explicitly, though default is the only template currently available.

Install Dependencies

cd my-project
pnpm install

Start the Dev Server

pnpm dev

Your site is now running at http://localhost:3000. Open it in your browser and you'll see the starter landing page.

First Customization

Open content/config/site.yml and change the business name:

content/config/site.yml
business:
  name: "My Startup"
  legalName: "My Startup LLC"
  foundingYear: 2026
  logo: "/favicon-96x96.png"
  mission: "We help people do amazing things."

socials:
  x: https://x.com/yourhandle
  github: https://github.com/yourrepo

Save the file. The dev server will hot-reload and you'll see the updated name in the header and footer immediately.

Configuration Checklist

After scaffolding, work through these files to make the project yours:

FileWhat to Change
content/config/site.ymlBusiness name, legal name, socials, mission
content/config/navigation.ymlHeader links, footer columns, banner
app/app.config.tsTitle, description, logo paths
nuxt.config.tsSite URL, route rules, module config
content/pages/index.mdLanding page content (hero, benefits, offer)
content/team/founder.ymlYour name, bio, avatar, social links
app/assets/theme.cssBrand colors — change the hue value to rebrand
public/Replace favicon files with your logo
.envCopy from .env.example, set NUXT_PUBLIC_SITE_URL
You don't need to do all of these right now. The starter works out of the box with placeholder content. Customize as you go.

Key Commands

CommandWhat It Does
pnpm devStart development server
pnpm buildProduction build
pnpm previewPreview production build locally
pnpm lintRun ESLint
pnpm testRun unit tests

Adding to an Existing Nuxt Project

If you already have a Nuxt 4 project and want to add Foundry as a layer:

pnpm add @incubrain/foundry

Then extend it in your nuxt.config.ts:

nuxt.config.ts
export default defineNuxtConfig({
  extends: ['@incubrain/foundry'],
})

You'll also need to:

  1. Create a content.config.ts that imports schemas from @incubrain/foundry/schemas
  2. Set up your content/ directory with the expected structure
  3. Configure app/app.config.ts with collection mappings

See Project Structure for the full directory layout and Configuration for all available options.

Next Steps

Now that your project is running, learn about the Project Structure to understand where everything lives.