Skip to content

rocketfuel init

The init command creates a new Next.js project with RocketFuel’s opinionated configuration and optional features.

Usage

Terminal window
rocketfuel init [project-name]

Arguments

ArgumentRequiredDescription
project-nameNoName of the project directory. If omitted, you’ll be prompted.

Examples

Create a project with a specific name:

Terminal window
rocketfuel init my-saas-app

Create a project in a specific path:

Terminal window
rocketfuel init ./projects/my-app

Run interactively (prompts for name):

Terminal window
rocketfuel init

Interactive Prompts

After running the command, you’ll be prompted to select optional features:

Better Auth

? Add Better Auth for authentication? (Y/n)

Adds complete authentication system with:

  • Login and signup pages
  • Session management
  • Database schema for users and sessions
  • API routes for auth endpoints

Default: Yes

Stripe Integration

? Add Stripe checkout integration? (y/N)

Adds payment processing with:

  • Checkout session creation
  • Webhook handling for payment events
  • Stripe client configuration

Default: No

BullMQ Job Queues

? Add BullMQ for job queues and background workers? (y/N)

Adds background job processing with:

  • Redis-backed job queues
  • Worker scripts
  • Docker Compose configuration for Redis

Default: No

Resend Email

? Add Resend for email sending? (y/N)

Adds transactional email with:

  • Resend client configuration
  • Email utility functions

Default: No

CLAUDE.md

? Add CLAUDE.md for AI coding assistants? (Y/n)

Adds documentation file that helps AI coding assistants understand your project.

Default: Yes

What Gets Created

The command creates a project with this structure:

my-app/
├── src/
│ ├── app/ # Next.js App Router pages
│ ├── components/ui/ # shadcn/ui components
│ ├── lib/ # Utility functions and configs
│ └── server/db/ # Database client and schema
├── .env.example # Environment template
├── docker-compose.yml # Docker services (if needed)
├── drizzle.config.ts # Drizzle ORM config
├── package.json
├── tailwind.config.ts
└── tsconfig.json

Exit Codes

CodeMeaning
0Success
1Error (directory exists, invalid input, etc.)