What it provides
- Kanban board — drag-and-drop task management across 5 status columns
- Task detail — full task view with comments, metadata, and reminder scheduling
- Contact management — browse and search contacts with cross-channel identities
- Auto-refresh — updates every 10 seconds
Tech stack
| Component | Technology |
|---|---|
| Framework | Next.js 15 (App Router) |
| Frontend | React 19 |
| Styling | Tailwind CSS 3.4 |
| Drag-and-drop | @hello-pangea/dnd |
Architecture
The client has no database or backend logic of its own. It’s a pure frontend that proxies all operations to the service REST API:Pages
| Page | Path | Description |
|---|---|---|
| Kanban board | / | 5-column board: Backlog, Todo, In Progress, In Review, Done |
| Task detail | /tasks/[id] | Description, status, priority, comments, reminders |
| Contact list | /contacts | Searchable list with avatars and identity counts |
| Contact detail | /contacts/[slug] | Profile with identities, emails, phones, notes |
Client vs. cloud UI
| Feature | Client | Cloud |
|---|---|---|
| Auth | None | Supabase magic link |
| Database | None | Supabase PostgreSQL |
| Multi-tenancy | N/A | Teams with roles |
| API tokens | N/A | PAK management |
| Task reminders | Full CRUD | Calendar view |
| Comments | Read-only | Read + write |
| Team management | N/A | Member invites, roles |