Personal focus workspace
Tempo
A personal focus workspace connecting a Kanban board, Pomodoro timer, notes, goals, and habits.

“I can connect everyday planning with reliable timing, private data, and meaningful progress tracking.”
01
Problem
Tasks, focus sessions, notes, and habits often live in separate tools. Tempo brings them into one workspace so a plan can become focused work and a useful record of progress.
02
Role
Product design, React and TypeScript frontend, FastAPI backend, data modeling, authentication, timer behavior, and automated testing.
03
Constraints
Timers must survive refreshes and background tabs without losing accuracy. Private records must remain isolated between accounts, completed sessions must not be counted twice, and goals and reviews must respect calendar boundaries.
04
Process
I connected task cards to a shared focus timer, then added notes, subtasks, goals, habits, and review views. Server-side ownership checks protect each account, while deadline-based timing and transactional session saves keep progress consistent.
05
Result
A full-stack workspace with private boards, focus history, personal notes, habit streaks, progress reviews, customizable themes and timers, and a temporary demo that can be explored without signing up.
Experience highlights
- Kanban tasks with priorities, session estimates, notes, and subtasks
- Pomodoro sessions and breaks with refresh recovery and optional completion alerts
- Private scratchpad, automatic or manual goals, and weekday-based habit tracking
- Weekly and monthly reviews of focus sessions, completed tasks, and habits
- Personal themes and timer styles, account settings, and a 24-hour sample workspace
Engineering & performance
- React, TypeScript, and Vite frontend paired with a FastAPI and Pydantic backend
- PostgreSQL support for hosting and SQLite for local development
- Salted scrypt password hashes, HttpOnly sessions, CSRF checks, and account-scoped queries
- Deadline-based timing and transactional saves prevent drift and duplicate session records
- Backend and frontend tests cover account isolation, timer recovery, calendar boundaries, and interface workflows