A comprehensive task management web application for teams — featuring authentication, role-based access control, task/user/category management, and a productivity dashboard.
- Authentication — Login, register, forgot password with JWT + httpOnly cookies
- Dashboard — Live stats, charts (status & priority), recent and overdue tasks
- Tasks — Create, edit, delete, filter by status/priority, assign to users and categories
- Users — Manage team members, roles (Admin/Manager/Member), and account status
- Categories — Organize tasks with color-coded categories
- Settings — Theme selection (light/dark/system) and default task preferences
- Responsive — Mobile-friendly sidebar with dark mode support
- Framework: Next.js 15 (App Router)
- Database: Neon Postgres + Prisma ORM
- Auth: JWT (jsonwebtoken) + bcryptjs + httpOnly cookies
- UI: Tailwind CSS v3, Lucide React icons, Recharts
- Language: TypeScript (strict)
# 1. Clone and install
git clone https://github.com/your-org/taskmaster
cd taskmaster
npm install
# 2. Configure environment
cp .env.example .env
# Edit .env and set DATABASE_URL to your Neon Postgres connection string
# Set JWT_SECRET to a secure random string
# 3. Push schema and seed
npx prisma db push
npx prisma db seed
# 4. Start dev server
npm run devOpen http://localhost:3000.
| Password | Role | |
|---|---|---|
| admin@taskmaster.com | admin123 | Admin |
| manager@taskmaster.com | member123 | Manager |
| member@taskmaster.com | member123 | Member |
- Push to GitHub and import into Vercel
- Connect a Neon Postgres database in the Vercel dashboard
- Add
JWT_SECRETto Vercel environment variables - Deploy —
prisma generate && prisma db pushruns automatically in the build step