- JWT-based auth with access tokens (15m) and refresh tokens (7d)
- User registration, login, logout, and /auth/me endpoints
- Three roles: admin, recruiter, hiring_manager with middleware enforcement
- users and refresh_tokens tables with bcrypt password hashing
- Login and Register pages with full form validation
- Protected routes — unauthenticated users redirect to /login
- Dashboard upgraded: real metrics, pipeline overview with progress bars,
recent activity feed with 30s polling, and quick-action cards
- Dashboard API endpoints: /api/dashboard/metrics, pipeline-summary, recent-activity
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- AI-powered CV parsing (regex extraction of skills, experience, education)
- Multi-channel job posting (LinkedIn, Indeed, Arbetsförmedlingen, Glassdoor, company site)
- Collaborative hiring scorecards with 5-criteria scoring system
- Dashboard with live stats (candidates, jobs, applications, scorecards)
- PostgreSQL schema for candidates, jobs, applications, scorecards
- REST API for all CRUD operations
- React UI with shadcn/ui components throughout
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>