mvp

Generate and manage your Minimum Viable Product code.

Synopsis#

bootspring mvp <command> [options]

Description#

The mvp command generates production-ready code from your PRD and seed structure. It creates complete features, API endpoints, database operations, and UI components following best practices.

Commands#

generate#

Generate MVP code from PRD user stories.

bootspring mvp generate [options]

Options:

OptionDescription
--story=<id>Generate code for specific story
--feature=<name>Generate a specific feature
--allGenerate all MVP features
--dry-runPreview without writing files
--agent=<name>Use specific agent for generation

Examples:

1# Generate all MVP code 2bootspring mvp generate --all 3 4# Generate specific user story 5bootspring mvp generate --story=US-001 6 7# Generate a feature 8bootspring mvp generate --feature=user-authentication 9 10# Preview changes 11bootspring mvp generate --all --dry-run

status#

Check MVP generation progress.

bootspring mvp status

Output:

⚡ Bootspring MVP Status PRD: TaskFlow MVP Stories: 12 total Progress: ✓ US-001: User can sign up (completed) ✓ US-002: User can sign in (completed) ✓ US-003: User can create task (completed) ◐ US-004: AI prioritizes tasks (in progress) ○ US-005: User can link PR (pending) ○ US-006: User can enable focus mode (pending) ... Completion: 25% (3/12 stories) Next: bootspring mvp generate --story=US-004

validate#

Validate MVP against PRD requirements.

bootspring mvp validate [options]

Options:

OptionDescription
--story=<id>Validate specific story
--coverageShow test coverage
--acceptanceCheck acceptance criteria

Examples:

1# Validate all stories 2bootspring mvp validate 3 4# Validate specific story 5bootspring mvp validate --story=US-001 6 7# Check with coverage 8bootspring mvp validate --coverage

Output:

⚡ MVP Validation US-001: User can sign up ✓ Email/password form exists ✓ Validation implemented ✓ Success redirect works ✓ Error handling present ○ E2E test coverage (0%) Status: PARTIAL (4/5 criteria) US-002: User can sign in ✓ All acceptance criteria met ✓ Test coverage: 85% Status: COMPLETE

test#

Run MVP-specific tests.

bootspring mvp test [options]

Options:

OptionDescription
--story=<id>Test specific story
--e2eRun end-to-end tests
--unitRun unit tests only
--watchWatch mode

Examples:

1# Run all MVP tests 2bootspring mvp test 3 4# Test specific story 5bootspring mvp test --story=US-003 6 7# E2E tests only 8bootspring mvp test --e2e

deploy#

Deploy MVP to staging or production.

bootspring mvp deploy [environment] [options]

Environments:

EnvironmentDescription
stagingDeploy to staging (default)
productionDeploy to production
previewCreate preview deployment

Options:

OptionDescription
--skip-testsSkip test run before deploy
--skip-checksSkip quality checks

Examples:

1# Deploy to staging 2bootspring mvp deploy staging 3 4# Deploy to production 5bootspring mvp deploy production 6 7# Create preview 8bootspring mvp deploy preview

analytics#

Set up MVP analytics and tracking.

bootspring mvp analytics [options]

Options:

OptionDescription
--provider=<name>Analytics provider
--eventsGenerate event tracking

Providers:

  • posthog (default)
  • mixpanel
  • amplitude
  • plausible

Examples:

# Set up PostHog bootspring mvp analytics --provider=posthog # Generate event tracking bootspring mvp analytics --events

Generation Details#

What Gets Generated#

For each user story, MVP generates:

ComponentDescription
API routesREST endpoints with validation
DatabasePrisma operations
ServicesBusiness logic layer
ComponentsReact UI components
FormsForm handling with validation
TestsUnit and integration tests

Example Generation#

bootspring mvp generate --story=US-003

For story "User can create task", generates:

app/ ├── api/tasks/ │ ├── route.ts # POST /api/tasks │ └── [id]/route.ts # GET/PATCH/DELETE ├── (dashboard)/ │ └── tasks/ │ ├── page.tsx # Task list page │ └── new/page.tsx # Create task page components/ ├── tasks/ │ ├── TaskForm.tsx # Create/edit form │ ├── TaskCard.tsx # Task display │ └── TaskList.tsx # List component lib/ └── services/ └── tasks.ts # Task service tests/ ├── api/tasks.test.ts # API tests └── components/TaskForm.test.tsx

Code Quality#

Generated code follows best practices:

TypeScript#

1// Fully typed interfaces 2interface Task { 3 id: string; 4 title: string; 5 description?: string; 6 priority: Priority; 7 status: TaskStatus; 8 createdAt: Date; 9 updatedAt: Date; 10} 11 12// Type-safe API routes 13export async function POST(request: NextRequest) { 14 const body = await request.json(); 15 const validated = taskSchema.parse(body); 16 // ... 17}

Validation#

1// Zod schemas for validation 2const taskSchema = z.object({ 3 title: z.string().min(1).max(200), 4 description: z.string().optional(), 5 priority: z.enum(['low', 'medium', 'high', 'urgent']), 6});

Error Handling#

1// Consistent error responses 2try { 3 const task = await createTask(data); 4 return NextResponse.json({ data: task }, { status: 201 }); 5} catch (error) { 6 if (error instanceof ValidationError) { 7 return NextResponse.json( 8 { error: { code: 'validation_error', details: error.errors } }, 9 { status: 400 } 10 ); 11 } 12 throw error; 13}

Configuration#

MVP settings in bootspring.config.js:

1module.exports = { 2 mvp: { 3 // Code generation 4 generation: { 5 typescript: true, 6 strictMode: true, 7 comments: true, 8 }, 9 10 // Testing 11 testing: { 12 framework: 'vitest', 13 coverage: 80, 14 e2e: 'playwright', 15 }, 16 17 // Deployment 18 deployment: { 19 staging: { 20 provider: 'vercel', 21 branch: 'develop', 22 }, 23 production: { 24 provider: 'vercel', 25 branch: 'main', 26 requireApproval: true, 27 }, 28 }, 29 30 // Analytics 31 analytics: { 32 provider: 'posthog', 33 trackEvents: true, 34 }, 35 }, 36};

Examples#

Full MVP Generation#

1# 1. Check PRD status 2bootspring prd status 3 4# 2. Generate all MVP code 5bootspring mvp generate --all 6 7# 3. Check progress 8bootspring mvp status 9 10# 4. Validate against PRD 11bootspring mvp validate 12 13# 5. Run tests 14bootspring mvp test 15 16# 6. Deploy to staging 17bootspring mvp deploy staging 18 19# 7. Set up analytics 20bootspring mvp analytics --provider=posthog

Story-by-Story Development#

1# Get next story 2bootspring loop next 3 4# Generate code for story 5bootspring mvp generate --story=US-004 6 7# Run story tests 8bootspring mvp test --story=US-004 9 10# Validate story 11bootspring mvp validate --story=US-004 12 13# Mark complete 14bootspring loop complete US-004

Custom Agent Generation#

# Use specific agent bootspring mvp generate --feature=ai-prioritization --agent=ai-ml-expert # Generate with frontend expert bootspring mvp generate --story=US-007 --agent=frontend-expert