The Starter Kit operates in project mode, which configures it as an end-user application connected to the Cloud API.
Project mode configuration
Your Starter Kit always uses DEVKIT4AI_MODE=project:
DEVKIT4AI_MODE=project
NEXT_PUBLIC_API_URL=https://api.vibecoding.ad
DEVKIT4AI_DEVELOPER_KEY=dk_your_developer_key
DEVKIT4AI_PROJECT_ID=your-project-uuid
DEVKIT4AI_PROJECT_KEY=ak_your_project_api_key
Environment tiers
Deploy your application across multiple environments:
Local development
Purpose: Testing and development on your machine
Configuration:
DEVKIT4AI_MODE=project
NEXT_PUBLIC_API_URL=https://api.vibecoding.ad
DEVKIT4AI_DEVELOPER_KEY=dk_dev_...
DEVKIT4AI_PROJECT_ID=...
DEVKIT4AI_PROJECT_KEY=ak_dev_...
ENVIRONMENT=local
NODE_ENV=development
Access: http://localhost:3004
Staging
Purpose: Pre-production testing with production-like setup
Configuration:
DEVKIT4AI_MODE=project
NEXT_PUBLIC_API_URL=https://api.vibecoding.ad
DEVKIT4AI_DEVELOPER_KEY=dk_staging_...
DEVKIT4AI_PROJECT_ID=...
DEVKIT4AI_PROJECT_KEY=ak_staging_...
ENVIRONMENT=staging
NODE_ENV=production
Access: Your staging URL (e.g., staging.yourapp.com)
Create a separate project in Cloud Admin for staging to isolate data.
Production
Purpose: Live application serving real users
Configuration:
Set via your hosting provider’s environment variable system:
DEVKIT4AI_MODE=project
NEXT_PUBLIC_API_URL=https://api.vibecoding.ad
DEVKIT4AI_DEVELOPER_KEY=dk_prod_...
DEVKIT4AI_PROJECT_ID=...
DEVKIT4AI_PROJECT_KEY=pk_prod_...
ENVIRONMENT=production
NODE_ENV=production
Access: Your production domain (e.g., yourapp.com)
Never commit production credentials to version control.
Environment-specific features
Development mode features
if (process.env.NODE_ENV === 'development') {
// Enable debug logging
console.log('Debug:', data)
// Show development-only UI
return <DevTools />
}
Production optimizations
if (process.env.NODE_ENV === 'production') {
// Enable production features
- Error tracking (Sentry, etc.)
- Analytics (Vercel Analytics)
- Performance monitoring
- Aggressive caching
}
Configuration validation
The Starter Kit validates environment configuration on startup:
export async function hydrateDeploymentMode() {
const issues: ConfigIssue[] = []
// Mode must be "project"
if (process.env.DEVKIT4AI_MODE !== 'project') {
issues.push({
severity: 'error',
message: 'DEVKIT4AI_MODE must be "project" for Starter Kit'
})
}
// Validate required credentials
if (!process.env.DEVKIT4AI_DEVELOPER_KEY) {
issues.push({
severity: 'error',
message: 'DEVKIT4AI_DEVELOPER_KEY is required'
})
}
return {
mode: 'project',
issues,
isReady: issues.filter(i => i.severity === 'error').length === 0
}
}
Deployment checklist
Create environment-specific project
In Cloud Admin, create a project for each environment:
my-app-dev
my-app-staging
my-app-prod
Generate API keys
Generate and copy API keys for each project. Store securely.
Configure hosting provider
Set environment variables in Vercel, Netlify, or your chosen platform.
Deploy and test
Deploy to each environment and verify:
- Authentication works
- API calls succeed
- Data is isolated between environments
Environment isolation
Each environment should have:
Separate projects in Cloud Admin
- Prevents test data mixing with production
- Allows independent API key rotation
- Enables environment-specific permissions
Different API keys
- Development: Unrestricted testing
- Staging: Production-like restrictions
- Production: Strict rate limits and security
Isolated user data
- Register test users in dev/staging
- Never use production data in testing
Next steps