warmbox/docs/sprints/sprint-2.1.md

40 lines
1.1 KiB
Markdown

# Sprint 2.1 — Web dashboard MVP
**Status:** Done
## Goals
Warmbox-branded operator dashboard for daily warmup management without curl.
## Screens
| Route | Purpose |
|-------|---------|
| `/` | Workspace overview, metric cards, alerts |
| `/campaigns` | Campaign list with status filters |
| `/campaigns/new` | 4-step wizard with recipe preview |
| `/campaigns/:id` | Overview, activity, satellites, compliance tabs |
| `/mailboxes` | CRUD + connection test |
| `/mailboxes/:id` | Detail + DNS check |
| `/activity` | Global log feed |
| `/settings` | AI settings, API key gate, job triggers |
## Stack
- Vite 6 + React 19 + TypeScript
- Tailwind + shadcn-style components
- TanStack Query + React Router v7
- Recharts for ramp and placement charts
- Mobile: bottom nav `< md`, sidebar `≥ md`
## Auth (self-hosted)
- API key stored in `sessionStorage`
- Skipped when server has no `API_KEY` set (dev mode)
## Verification
1. Open dashboard, enter API key if required
2. Create mailbox via provider preset
3. Launch campaign through wizard
4. Confirm stats on dashboard and campaign detail