Admin CRM
Pipeline overview
Lead → Questionnaire → Discovery Call → Proposal → Contract → Invoice → Work Order → Case Study
Each step is reflected in lead.status and displayed as a PipelineStrip on the lead detail page.
Lead statuses
new → contacted → questionnaire → qualified → proposal → proposal-sent → won → active-project → retainer → closed
Status values and colors live in lib/lead-constants.ts.
Lead detail page
/admin/leads/[id] renders:
- PipelineStrip — visual progress bar showing current stage
- Stage card — update status
- Value card — deal value
- Notes card — internal notes
- QuickActions card — send questionnaire, create case study, etc.
- Contract, Invoice, WorkOrder, Retainer cards — one per stage
Admin routes
| Route | Purpose |
|---|---|
/admin/leads | Leads table |
/admin/leads/[id] | Lead detail |
/admin/projects | Projects table (published + drafts) |
/admin/questionnaires | Template list |
/admin/proposals | Proposals table |
/admin/contracts | Contracts table |
/admin/invoices | Invoices table + payment tracking |
/admin/work-orders | Work orders table |
/admin/service-orders | Service orders + status dropdown |
/admin/retainers | Retainers table |