Goal
Build a focused productivity app that supports deep work through Pomodoro timing, keeps all tasks visible on a Kanban board, and uses AI to surface insights that help users improve their habits over time — not just track them.
A productivity system that combines Kanban task management, Pomodoro focus sessions, and an AI coaching layer — so users can plan, execute, and reflect all in one place.
Build a focused productivity app that supports deep work through Pomodoro timing, keeps all tasks visible on a Kanban board, and uses AI to surface insights that help users improve their habits over time — not just track them.
Led full-stack development end-to-end: UX flow design, data modelling with Prisma, authentication, Kanban drag-and-drop, Pomodoro timer, analytics dashboard, Groq AI integration, Docker deployment, and a full Jest test suite.
User / Browser
Next.js 15 App Router
Client Components · Server Components · Middleware
API Routes · NextAuth.js v5
Credentials auth · bcrypt · Route guards
Prisma ORM
PostgreSQL · Migrations
Groq API
Llama 3.1 8B Instant
Docker Compose
App + Postgres containers
GitHub Actions
CI/CD · Tests · Build
Three-column board (To Do, In Progress, Completed) with drag-and-drop via @dnd-kit. Optimistic UI updates before server sync. Filter by status or priority with task count badges per column.
SVG ring progress animation with Focus, Short Break, and Long Break modes. Web Audio API notification on completion. Links sessions to tasks and persists them to the database.
Server-rendered dashboard with Recharts visualizations — daily focus time trends, task distribution by status and priority, session completion rates, and peak activity hours.
Calls Groq's Llama 3.1 8B Instant model to analyze your session and task data, then returns 3–5 personalized coaching recommendations. Falls back to rule-based insights if the API is unavailable.
A floating chat interface with full conversation history. Can create, update, and delete tasks through natural language. Dispatches task events in real time without full page reloads.
Credentials-based sign-in with NextAuth.js v5 and bcrypt. Route-level middleware guards protect all authenticated pages. Zod validates all inputs at API boundaries.
A single Next.js monorepo — App Router handles both the UI and all API routes.