[verified] feat: add timer customization and themes

This commit is contained in:
2026-07-22 23:45:59 +03:00
parent 128bdc5e16
commit 723b4a221d
16 changed files with 1358 additions and 44 deletions
+19
View File
@@ -12,6 +12,17 @@ A browser-based Pomodoro timer and clock built with React, TypeScript, and Vite.
- Accurate countdown after background-tab throttling
- Sound notification when a segment ends
## Stage 2
- Custom focus, short-break, and long-break durations
- Six built-in backgrounds: three gradients and three local illustrated scenes
- Adjustable background overlay and text color
- Four clock and timer font styles
- Live customization preview with one-click reset
- Automatic settings persistence in IndexedDB
All preferences stay in the browser. No account or backend is required.
## Development
```bash
@@ -27,6 +38,14 @@ npm run lint
npm run build
```
## Architecture
- React and TypeScript for the interface and timer state
- Absolute timestamps for accurate countdowns after tab throttling
- Native IndexedDB for persistent browser settings
- CSS custom properties for live themes, fonts, colors, and overlays
- Vitest and Testing Library for model, persistence, and interface tests
## License
[MIT](LICENSE)