2024 · Solo · browser extension
Quiet Hours
A focus timer and habit log for the browser, deliberately without streaks.
- Chrome Extension
- JavaScript
- CSS
The problem
I tried a few habit trackers in eighth grade and noticed they made me feel worse. Missing one day broke a streak, and a broken streak made it easier to quit entirely. The tools were built to pull me back in, not to help.
What I built
Quiet Hours is a small browser extension with a single timer and a plain log of sessions. It can gently mute distracting sites while a session runs, and at the end of the week it shows how much time you spent focused — without counting consecutive days or sending reminders.
The whole interface fits in the extension popup: start, pause, and a soft chime when you're done.
- No streaks, badges, or notifications by design
- Optional site muting using declarative network rules
- All data stays in local extension storage
- Used by a handful of classmates during finals week
Tech stack
- Manifest V3Service-worker background with alarms for session timing
- JavaScriptNo build step; small enough to read in one sitting
- CSSA calm popup that respects the system color scheme
What I learned
This was my first project where the most important features were things I chose not to build. It made me realize that software has a mood, and that the default habits of apps aren't neutral.
On the technical side, Manifest V3's service worker lifecycle confused me for a long time. Timers that rely on staying in memory don't survive, so I learned to store start times and compute elapsed time instead.