A beautiful, minimalist focus timer that helps you get into deep work. No accounts, no tracking, no bloat. Just you and your flow state.
A single HTML file. Open it in any browser — it works offline, no install needed.
- Pomodoro Timer — 25min focus / 5min break / 15min long break. Keyboard shortcuts for everything.
- Task List — Built-in todo list that persists in your browser. Add tasks, check them off, stay organized.
- Stats Tracking — See your daily sessions, total focus minutes, and streak. Data lives in localStorage — private, local, yours.
- Beautiful Design — Dark mode, smooth animations, ambient gradient orbs. Designed to be calming and distraction-free.
- Sound Alerts — Optional chime when a session ends. Uses Web Audio API — no sound files needed.
- Fullscreen Mode — Hit
Fto go fullscreen. Minimize distractions. - Keyboard Shortcuts —
Spacestart/pause,Rreset,Sskip,1/2/3switch modes,Mtoggle sound,Ffullscreen,Nnew task.
| Key | Action |
|---|---|
| Space | Start / Pause timer |
| R | Reset timer |
| S | Skip to next mode |
| 1 | Focus mode (25 min) |
| 2 | Short break (5 min) |
| 3 | Long break (15 min) |
| M | Toggle sound |
| F | Toggle fullscreen |
| N | Focus task input |
- Open
index.htmlin any modern browser - Click "Start" or press
Space - Focus for 25 minutes
- Take a 5-minute break
- Repeat. Watch your streak grow.
Want to change the timer durations? Open the file and edit the MODES object near the top of the <script> block:
const MODES = {
focus: { label: 'FOCUS', seconds: 25 * 60, next: 'short' },
short: { label: 'BREAK', seconds: 5 * 60, next: 'focus' },
long: { label: 'LONG BREAK', seconds: 15 * 60, next: 'focus' },
};Change 25 * 60 to whatever you prefer (e.g., 50 * 60 for 50-minute focus sessions).
Personal + Commercial use allowed. You may not resell or redistribute this file as a competing product.