π Development Pipeline (MVP)¶
Overview¶
Lean, pragmatic CI/CD pipeline for a 3-person startup building an MVP. Focus on shipping fast while maintaining quality - no enterprise theater.
Development Workflow¶
Branch Strategy (Keep It Simple)¶
- Main Branch:
main- Production code (deploy on merge) - Feature Branches:
feat/feature-name- Individual features - Fix Branches:
fix/issue-description- Bug fixes
Note: No develop branch - we're too small for that complexity. Feature branches merge directly to main after review.
Commit Standards¶
- Conventional commits format
- Atomic commits with single purpose
- Descriptive commit messages
- Reference issue numbers when applicable
CI/CD Pipeline¶
GitHub Actions Workflow (MVP)¶
PR Validation (Fast Checks Only)¶
-
Code Quality (< 1 minute)
-
ESLint validation
- Prettier formatting check
-
TypeScript compilation
-
Basic Tests (< 3 minutes)
-
Unit tests (Vitest)
-
Critical path tests only
-
Documentation (< 1 minute)
- MkDocs build verification
Total PR check time: < 5 minutes
Deployment Pipeline (Single Environment)¶
Production Deployment¶
- Trigger: Merge to
main - Target: Cloudflare Pages
- Process:
- Build React + Vite app
- Run smoke tests
- Deploy to Cloudflare Pages (automatic)
- Cloudflare handles rollback if deploy fails
No staging environment - Cloudflare Pages provides preview deployments for PRs automatically.
Quality Gates (MVP - Keep It Real)¶
Code Coverage¶
- Goal: 60% overall coverage
- Critical paths: 80% minimum
- Don't over-test - we're shipping an MVP
Performance Targets¶
- Page load: < 3 seconds on 3G
- API response: < 500ms
- First contentful paint: < 2 seconds
Security (Automated Only)¶
- Dependabot for dependency vulnerabilities
- No manual security audits in MVP
- Supabase RLS for data security
Deployment Strategy (MVP)¶
Simple Deployment¶
- Cloudflare Pages automatic deployment on merge to
main - Cloudflare handles rollback automatically if build fails
- No blue-green - Cloudflare manages zero-downtime deploys
- No feature flags in MVP - use Git branches instead
Monitoring (MVP)¶
Application Monitoring¶
- Tool: Cloudflare Analytics (built-in, free)
- Metrics: Page views, response times, error rates
- Alerts: Email for critical errors only
What We're NOT Monitoring in MVP¶
- No APM (Application Performance Monitoring)
- No custom dashboards
- No on-call rotation
- Keep it simple until we have customers
Development Environment Setup¶
Local Development¶
# Install dependencies
npm install
npm run dev
# Run tests
npm test
npm run test:e2e
# Quality checks
npm run lint
npm run format:check
Release Management (MVP)¶
Versioning¶
- Git commit SHA is the version
- No tags until post-MVP
- No changelogs until we have customers
Rollback¶
- Revert commit in Git
- Push to
main - Cloudflare auto-deploys previous version
- Fix and redeploy
Best Practices (3-Person Team)¶
Code Review¶
- One approval required (we're 3 people)
- Automated checks must pass
- Use async code review - don't block work
Documentation¶
- Update specs when behavior changes
- Document "why" not "what" in code comments
- Keep CLAUDE.md files current
What We'll Add Post-MVP¶
Once we have paying customers and revenue:
- Staging environment
- More comprehensive testing
- Feature flags
- Advanced monitoring
- Automated security scanning
- Performance profiling
For now: Ship fast, validate with real users, iterate based on feedback.