Scaffold Presets

Framework-specific project scaffolding presets for rapid development.

Bootspring provides framework-specific presets that generate complete, production-ready project structures. Each preset includes best practices, common patterns, and plugin integration.

Available Presets

PresetDescriptionBest For
nextjsNext.js 15 + App Router + TypeScript + Tailwind + shadcn/uiFull-stack web apps
reactReact 19 + Vite + TypeScript + TailwindSPAs, dashboards
nodeExpress/Fastify + TypeScript + ZodAPIs, microservices
fullstackNext.js + Prisma + NextAuth + full stackComplete applications

Using Presets

Basic Usage

Loading code block...

Dry Run Preview

Preview what will be created without writing files:

Loading code block...

Example output:

Scaffold Plan: Framework: nextjs Language: typescript UI: shadcn Styling: tailwind Directories to create: + app/ + app/(auth)/ + app/api/ + components/ + components/ui/ + lib/ + hooks/ + types/ + public/ ... and 8 more Files to create: + app/layout.tsx + app/page.tsx + app/globals.css + components/ui/button.tsx + lib/utils.ts + package.json + tsconfig.json + tailwind.config.ts + next.config.js ... and 18 more Dry run - no files created

Preset Details

Next.js Preset

Loading code block...

Creates:

your-project/ ├── app/ │ ├── (auth)/ │ │ ├── sign-in/ │ │ └── sign-up/ │ ├── (dashboard)/ │ │ └── dashboard/ │ ├── api/ │ ├── layout.tsx │ ├── page.tsx │ └── globals.css ├── components/ │ ├── ui/ │ │ ├── button.tsx │ │ ├── card.tsx │ │ ├── input.tsx │ │ └── ... │ └── layout/ │ ├── header.tsx │ ├── footer.tsx │ └── sidebar.tsx ├── lib/ │ └── utils.ts ├── hooks/ ├── types/ ├── public/ ├── package.json ├── tsconfig.json ├── tailwind.config.ts ├── next.config.js └── .env.example

Includes:

  • App Router setup
  • TypeScript configuration
  • Tailwind CSS with shadcn/ui
  • Authentication routes
  • Dashboard layout
  • API route structure

React Preset

Loading code block...

Creates:

your-project/ ├── src/ │ ├── components/ │ ├── hooks/ │ ├── lib/ │ ├── pages/ │ ├── App.tsx │ ├── main.tsx │ └── index.css ├── public/ ├── package.json ├── tsconfig.json ├── vite.config.ts └── tailwind.config.ts

Includes:

  • Vite build system
  • React Router setup
  • TypeScript configuration
  • Tailwind CSS
  • Component structure

Node Preset

Loading code block...

Creates:

your-project/ ├── src/ │ ├── routes/ │ │ ├── index.ts │ │ ├── auth.ts │ │ └── users.ts │ ├── middleware/ │ │ ├── auth.ts │ │ └── validation.ts │ ├── lib/ │ │ ├── db.ts │ │ └── utils.ts │ ├── types/ │ └── index.ts ├── tests/ ├── package.json ├── tsconfig.json └── .env.example

Includes:

  • Express or Fastify setup
  • Route structure
  • Middleware patterns
  • Zod validation
  • Error handling

Fullstack Preset

Loading code block...

Creates:

your-project/ ├── app/ │ ├── (auth)/ │ ├── (dashboard)/ │ ├── api/ │ │ ├── auth/ │ │ ├── users/ │ │ └── webhooks/ │ ├── layout.tsx │ └── page.tsx ├── components/ ├── lib/ │ ├── db.ts │ ├── auth.ts │ ├── stripe.ts │ └── utils.ts ├── prisma/ │ └── schema.prisma ├── package.json └── ...

Includes:

  • Everything from nextjs preset
  • Prisma database setup
  • NextAuth configuration
  • Stripe integration (if enabled)
  • API route handlers
  • Server actions

Plugin Integration

Presets automatically include files based on your enabled plugins:

Auth Plugin

JWT Sessions:

├── proxy.ts ├── app/(auth)/sign-in/[[...sign-in]]/page.tsx ├── app/api/auth/sign-in/route.ts └── lib/auth.ts

NextAuth:

├── app/api/auth/[...nextauth]/route.ts ├── lib/auth.ts └── types/next-auth.d.ts

Payments Plugin

Stripe:

├── app/api/webhooks/stripe/route.ts ├── lib/stripe.ts └── config/products.ts

Database Plugin

Prisma:

├── prisma/schema.prisma ├── lib/db.ts └── .env (DATABASE_URL)

Testing Plugin

Vitest:

├── vitest.config.ts ├── tests/ │ ├── setup.ts │ └── example.test.ts └── package.json (test scripts)

Customizing Output

From SEED.md

If you have a SEED.md, scaffold reads configuration from it:

Loading code block...

From Config

Use bootspring.config.js:

Loading code block...

Specific Components

Scaffold specific parts:

Loading code block...

Post-Scaffold Steps

After scaffolding:

1. Install Dependencies

Loading code block...

2. Set Up Environment

Loading code block...

3. Initialize Database (if using Prisma)

Loading code block...

4. Start Development

Loading code block...

Tips

Review Before Scaffolding

Always use --dry-run first:

Loading code block...

Don't Overwrite Existing Files

Scaffold skips existing files by default. Use with confidence in existing projects:

Loading code block...

Customize After Scaffolding

Presets provide a starting point. Customize after scaffolding:

  1. Adjust component styles
  2. Modify API routes
  3. Add your business logic
  4. Configure providers