bharath/docs/bmad/SPRINT_PLAN.md
Vivek 394117dd74 BharathTrucks MVP - 6 sprints complete
- Govt-app styled freight marketplace
- Role-based auth (driver/shipper/broker/admin)
- Load board with bidding system
- Trip tracking with status flow
- In-app messaging
- Admin panel
- Mobile bottom nav + PWA
- Docker + Coolify ready
2026-05-31 06:21:13 +00:00

245 lines
7.1 KiB
Markdown

# BharathTrucks — Sprint & Milestone Plan
**Version:** 1.0
**Date:** 2026-05-31
**Sprint Duration:** 1 week each
---
## Milestone Overview
```
M1 (Sprint 1-2) M2 (Sprint 3-4) M3 (Sprint 5-6) M4 (Sprint 7-8)
Foundation & Load Board & Dashboards & Polish &
Auth Bidding Communication Launch
────────────────────────────────────────────────────────────────────────────────►
🚀 LAUNCH
```
---
## Sprint 1: Foundation (Week 1)
### Goal: Project setup, infrastructure, landing page
| Task | Story | Hours |
|------|-------|-------|
| Initialize Node.js + Express project | — | 2 |
| Setup EJS templating + layouts | — | 2 |
| Create govt-theme CSS (design system) | — | 4 |
| Setup Supabase project + run schema SQL | — | 2 |
| Create Dockerfile + docker-compose | — | 1 |
| Deploy to Coolify (hello world) | — | 2 |
| Configure Cloudflare + domain | — | 1 |
| Build landing page | WEB-1, WEB-2 | 4 |
| Health check endpoint | — | 0.5 |
| PWA manifest + service worker (basic) | — | 2 |
**Deliverable:** bharathtrucks.com live with landing page
---
## Sprint 2: Authentication (Week 2)
### Goal: Phone OTP login, role-based registration, onboarding
| Task | Story | Hours |
|------|-------|-------|
| Supabase Auth integration (phone OTP) | AUTH-1 | 3 |
| Login page (phone + OTP flow) | AUTH-1, AUTH-6 | 3 |
| Registration page (role selection) | AUTH-2 | 3 |
| OTP verification page | AUTH-1 | 2 |
| Auth middleware (session validation) | — | 2 |
| Role middleware | — | 1 |
| Driver onboarding form | AUTH-3 | 2 |
| Shipper onboarding form | AUTH-4 | 2 |
| Broker onboarding form | AUTH-5 | 2 |
| Post-login redirect by role | AUTH-8 | 1 |
**Deliverable:** Users can register, login, complete profile
---
## Sprint 3: Load Board (Week 3)
### Goal: Shippers post loads, drivers browse and filter
| Task | Story | Hours |
|------|-------|-------|
| Load posting form (shipper) | LOAD-1 | 3 |
| Load board page (list view) | LOAD-2 | 4 |
| Load detail page | LOAD-3 | 2 |
| Filters (route, truck type, date) | LOAD-2 | 3 |
| Broker posts on behalf of shipper | LOAD-4 | 2 |
| Edit/cancel load | LOAD-5 | 2 |
| Public load board (read-only, no auth) | WEB-4 | 2 |
| Load card component (partial) | — | 1 |
| Load status badges | — | 1 |
**Deliverable:** Functional load board with posting and browsing
---
## Sprint 4: Bidding System (Week 4)
### Goal: Drivers bid, shippers accept/reject, rate limiting
| Task | Story | Hours |
|------|-------|-------|
| Bid submission form | BID-1 | 2 |
| Bid list on load detail page | BID-2 | 3 |
| Accept bid flow | BID-3 | 2 |
| Reject bid flow | BID-4 | 1 |
| Bid status notifications | BID-5 | 3 |
| Bid rate limiting (5/day free) | BID-8 | 2 |
| Bid history page (driver) | BID-7 | 2 |
| Withdraw bid | BID-6 | 1 |
| Trip creation on bid acceptance | — | 2 |
| Load status update on booking | — | 1 |
**Deliverable:** Complete bid lifecycle working
---
## Sprint 5: Dashboards (Week 5)
### Goal: Role-specific dashboards with key features
| Task | Story | Hours |
|------|-------|-------|
| Driver dashboard (active trips, loads) | DRV-1, DRV-2 | 4 |
| Trip status updates (driver) | DRV-3 | 2 |
| Shipper dashboard (my loads, bids) | SHP-1, SHP-2 | 4 |
| Broker dashboard (network, loads) | BRK-1, BRK-2 | 4 |
| Commission tracking (broker) | BRK-3 | 3 |
| Earnings summary (driver) | DRV-4 | 2 |
| Bottom navigation (mobile) | — | 1 |
**Deliverable:** All 3 role dashboards functional
---
## Sprint 6: Communication & Notifications (Week 6)
### Goal: In-app messaging, push notifications, WhatsApp share
| Task | Story | Hours |
|------|-------|-------|
| Messaging system (DB + UI) | COM-1 | 4 |
| Conversation view | COM-1 | 3 |
| Push notifications (PWA) | COM-2 | 3 |
| Notification bell + dropdown | COM-2 | 2 |
| WhatsApp share templates | COM-3 | 2 |
| Notification preferences | — | 1 |
| Unread message count | — | 1 |
| Real-time updates (Supabase Realtime) | — | 3 |
**Deliverable:** Users can communicate about loads
---
## Sprint 7: Admin & Payments (Week 7)
### Goal: Admin panel, basic payment tracking, ratings
| Task | Story | Hours |
|------|-------|-------|
| Admin dashboard (metrics) | ADM-1, ADM-2 | 4 |
| User management (list, suspend) | ADM-3 | 3 |
| UPI payment link generation | PAY-1 | 2 |
| Payment confirmation flow | PAY-2 | 2 |
| Transaction ledger | PAY-3 | 2 |
| Rating system (post-delivery) | SHP-4 | 3 |
| Feature flag system | ADM-4 | 2 |
| Admin login (separate) | — | 1 |
**Deliverable:** Admin can manage platform, basic payments work
---
## Sprint 8: Polish & Launch (Week 8)
### Goal: Bug fixes, performance, SEO, launch prep
| Task | Story | Hours |
|------|-------|-------|
| Performance optimization (images, caching) | — | 3 |
| SEO meta tags + sitemap | — | 2 |
| Error pages (404, 500) | — | 1 |
| Loading states + empty states | — | 2 |
| Hindi language strings | AUTH-7 | 3 |
| Mobile responsiveness audit | — | 3 |
| Security audit (headers, inputs) | — | 2 |
| End-to-end testing (manual) | — | 4 |
| Seed data for demo | — | 1 |
| Launch checklist completion | — | 2 |
**Deliverable:** 🚀 Production launch of bharathtrucks.com
---
## Post-Launch Sprints (Phase 2)
### Sprint 9-10: Growth Features
- Driver document management
- Shipper saved drivers
- Broker WhatsApp templates
- Search improvements
- Load recommendations
### Sprint 11-12: Monetization
- Razorpay subscription integration
- Premium feature gating
- Upgrade prompts
- Promoted listings
- Verification services
### Sprint 13-16: Scale
- GPS tracking integration
- SMS notifications
- Advanced analytics
- Fleet owner features
- Android PWA optimization
---
## Launch Checklist
| # | Item | Status |
|---|------|--------|
| 1 | Domain pointing to VPS | ⬜ |
| 2 | SSL working (Cloudflare) | ⬜ |
| 3 | Supabase schema deployed | ⬜ |
| 4 | Auth OTP working | ⬜ |
| 5 | All 3 roles can register + login | ⬜ |
| 6 | Load board functional | ⬜ |
| 7 | Bidding works end-to-end | ⬜ |
| 8 | Dashboards render correctly | ⬜ |
| 9 | Messaging works | ⬜ |
| 10 | Mobile responsive | ⬜ |
| 11 | PWA installable | ⬜ |
| 12 | Health check passing | ⬜ |
| 13 | Error handling in place | ⬜ |
| 14 | UptimeRobot configured | ⬜ |
| 15 | Backup strategy confirmed | ⬜ |
---
## Timeline Summary
| Week | Sprint | Milestone |
|------|--------|-----------|
| Week 1 | Sprint 1 | Infrastructure + Landing |
| Week 2 | Sprint 2 | Auth + Onboarding |
| Week 3 | Sprint 3 | Load Board |
| Week 4 | Sprint 4 | Bidding |
| Week 5 | Sprint 5 | Dashboards |
| Week 6 | Sprint 6 | Communication |
| Week 7 | Sprint 7 | Admin + Payments |
| Week 8 | Sprint 8 | Polish + Launch 🚀 |
**Total time to MVP: 8 weeks**
---
*Each sprint has a clear deliverable. No sprint depends on external factors. Ship weekly, iterate based on feedback.*