- Login page with form
- Middleware redirects unauthenticated to /login
- Cookie session (7 days)
- Credentials via AUTH_USER/AUTH_PASS env vars
- Default: admin/teamboard
- Kanban with drag-and-drop (5 columns)
- Project sidebar navigation
- API client (projects, tasks, agents, labels)
- Tailwind CSS dark theme
- Docker support, SSR with internal API URL
- Port 3100 (3000 occupied by Gitea)