New Project Playbook
Step-by-step guide for starting a new software project.
Overview
This playbook covers everything needed to go from idea to first commit.
Checklist
Phase 1: Planning
- Define the problem (Phase 1: Capture)
- Validate the idea (Phase 2: Validate)
- Create initial designs (Phase 3: Design)
- Write PRD (Phase 4: Spec)
Phase 2: Setup
- Choose tech stack
- Set up repository
- Configure development environment
- Set up CI/CD
- Configure deployment
Phase 3: Foundation
- Create project structure
- Set up database
- Implement authentication
- Create base UI components
Tech Stack Decision
Before starting, decide on:
| Layer | Options | Decision |
|---|---|---|
| Frontend | Next.js, React, Vue | |
| Backend | Node, Python, Go | |
| Database | PostgreSQL, MongoDB | |
| Hosting | Vercel, AWS, GCP | |
| Auth | Clerk, Auth0, Custom |
Document decisions in ADRs.
Repository Setup
# Create new repository
gh repo create [name] --private
# Clone and setup
git clone [repo-url]
cd [name]
# Initialize project (example for Next.js)
npx create-next-app@latest . --typescript
# Initial commit
git add .
git commit -m "Initial project setup"
git push
Project Structure
Recommended structure:
project/
├── src/
│ ├── app/ # Pages/routes
│ ├── components/ # UI components
│ ├── lib/ # Utilities
│ ├── services/ # API/external services
│ └── types/ # TypeScript types
├── tests/
├── docs/ # Project documentation
├── .env.example # Environment template
├── README.md
└── package.json
Environment Setup
- Create
.env.examplewith all required variables - Copy to
.env.localfor local development - Configure production secrets in hosting platform
CI/CD Setup
Minimum CI pipeline:
- Lint check
- Type check
- Unit tests
- Build verification
Next Steps
After setup is complete:
- Start building core features
- Follow the Add Feature Playbook
- Prepare for Deployment