# Building Pomo: A Pomodoro Timer That Actually Helps You Focus

> The story behind building a minimalist Pomodoro timer with concentration music and productivity tracking.

- Published: 2026-01-20
- Tags: project, react, productivity
- URL: https://www.woza.ink/blog/building-pomo

🔥 Quick vibe: Minimal UI, maximal focus. No bloat. No bells. Just a little app that gets out of your way and helps you get stuff done.

**Hook:** Want a Pomodoro timer that doesn't try to be your life coach? Same. I built one that respects your attention and only nudges you when it matters — with a splash of chill music links and a tiny bit of accountability.

> CALL OUT — Why this exists
>
> Most Pomodoro apps are either a shrine to metrics or a blank timer. Pomo lives between those extremes: simple UI, optional concentration music, and non-invasive progress tracking. Use it. Ignore it. Either way, it respects your focus.

## TL;DR — The short, funky version
- Clean, distraction-free timer front-and-center ⏱️  
- One-click concentration music links (YouTube/Spotify) 🎧  
- Local-only persistence — no backend, no tracking 👀  
- Built with React + Local Storage, deployed on Vercel 🚀

---

## The Problem with Existing Apps

Here's the pattern I kept running into:

1. Overly simple: just a timer — no context, no nudge, no soul.  
2. Feature-bloated: settings, badges, streaks, and a dashboard that screams for attention.

I wanted something that sat politely on your screen and helped you do one thing: focus.

## Design Goals (the short manifesto)
- Visible timer, minimal chrome.  
- Quick access to calming audio — one click to get into the zone.  
- Keep the data local and private.  
- Make progress visible without turning it into a KPI contest.

## What I Built

Pomo focuses on three core things:

### 1) Clean Timer Interface
The timer comes first. Big number. Subtle progress ring. Start / stop / skip. No intrusive onboarding, no nagging modals.

### 2) Concentration Music
Rather than embed a full player (hello complexity), I curated a handful of links to focus playlists. One tap, new tab, get back to work.

### 3) Simple Progress Tracking
You can glance at how many pomodoros you finished that day. No streak shame. No gamified dopamine loop. Just a quiet record.

---

## Tech Notes (for the curious engineer)
- UI: React with tiny local state (no heavy global state nonsense)  
- Persistence: Local Storage for speed and privacy  
- Hosting: Vercel for instant deploys and effortless CI

Minimal dependencies. Maximum focus.

### Small example: the timer hook (concept)
```javascript
// Example: super-simple React hook (concept)
import { useState, useEffect, useRef } from 'react';

function useTimer(initialSeconds = 25 * 60) {
  const [secondsLeft, setSecondsLeft] = useState(initialSeconds);
  const [running, setRunning] = useState(false);
  const intervalRef = useRef(null);

  useEffect(() => {
    if (running) {
      intervalRef.current = setInterval(() => {
        setSecondsLeft(s => {
          if (s <= 1) {
            clearInterval(intervalRef.current);
            setRunning(false);
            return 0;
          }
          return s - 1;
        });
      }, 1000);
    }
    return () => clearInterval(intervalRef.current);
  }, [running]);

  return { secondsLeft, running, start: () => setRunning(true), stop: () => setRunning(false), reset: (s = initialSeconds) => setSecondsLeft(s) };
}
```

(Yes, `useReducer` + effects gives you better control for a production hook — this is the idea.)

---

## UX Decisions I Stand By (short, opinionated)
- No default gamification: if you want streaks, build them into your routine, not the app.  
- Minimal UI: reduce the number of decisions the user must make while focused.  
- `styling` matters: subtle shadows, a readable type scale, and a single accent color keep attention on the tasks, not the app.

## The Hard Part: Simplicity Is Discipline
Every feature request gets the same test: "Does this help people focus, or will it distract them?" The latter loses.

Features that were rejected:
- Built-in music player (too heavy)
- Push notifications for every session (nope)
- Deep analytics dashboards (tempting, but noisy)

---

## Pocket Tips — Make Pomo Work For You
- Use a short playlist for high-focus sessions; a longer one when doing shallow work.  
- Combine a pomodoro with a tiny, clear goal: "Write 200 words" beats "work on project".  
- If you need gentle accountability, share your daily count with a friend — outside the app.

## Final Thoughts
Building simple tooling is deceptively difficult. You strip away features until only what matters remains — and then you ship. That's the essence of Pomo: small, useful, and polite.

If you try it, I'd love to hear what you changed to make it yours.

---

*Try Pomo: https://pomo-coral-eight.vercel.app — and tell me what you changed. Make it funky, make it yours.*

## Notes

1. **context** on "Clean, distraction-free timer front-and-center": The Pomodoro Technique was invented by Francesco Cirillo in 1987 when he couldn't focus while studying for a sociology exam. He grabbed the first kitchen timer he could find — shaped like a tomato (*pomodoro* in Italian) — and bet himself he could concentrate for just two minutes. He spent the next five years refining the method and has since taught it to millions. — Francesco Cirillo (https://en.wikipedia.org/wiki/Pomodoro_Technique)
2. **source** on "Overly simple: just a timer — no context, no nudge, no soul.": A scoping review of 32 studies (5,270 participants) found that time-structured Pomodoro interventions consistently improved focus by 15-25% and reduced mental fatigue by ~20% compared to self-paced breaks. 88% of studies showed positive outcomes. However, the impact on raw productivity and task completion was more variable than commonly claimed. — BMC Medical Education, 2025 (https://pmc.ncbi.nlm.nih.gov/articles/PMC12532815/)
3. **quote** on "Feature-bloated: settings, badges, streaks, and a dashboard that screams for attention.": "Deep work is professional activity performed in a state of distraction-free concentration that pushes your cognitive capabilities to their limit." Cal Newport's research on attention residue shows that switching tasks — even briefly checking email — leaves a cognitive residue that saps focus on the next task. The Pomodoro structure combats this by enforcing single-task blocks. — Cal Newport, *Deep Work* (2016) (https://calnewport.com/deep-work-rules-for-focused-success-in-a-distracted-world/)
4. **context** on "Quick access to calming audio — one click to get into the zone.": The concept of "attention residue" was identified by business professor Sophie Leroy in her 2009 paper *Why Is It So Hard to Do My Work?*. She found that when you switch from Task A to Task B, part of your mind keeps processing Task A, reducing performance on B. Cal Newport popularized this finding to argue for long, uninterrupted focus blocks. — Sophie Leroy, 2009 (https://www.goodreads.com/work/quotes/45502249-deep-work-rules-for-focused-success-in-a-distracted-world)
5. **source** on "Minimal UI: reduce the number of decisions the user must make while focused.": Adobe reported that minimalist design use in mobile apps grew by 147% since 2016, with 44% of designers choosing it for app interfaces. Research shows that clean, uncluttered interfaces reduce cognitive load and create what designers call "cognitive tranquility" — a sense of calm that improves both user satisfaction and task completion. (https://semnexus.com/less-is-more-minimalist-app-design-interface/)
6. **quote** on "Does this help people focus, or will it distract them?": "Who you are, what you think, feel, and do, what you love — is the sum of what you focus on." Newport's central thesis is that our attention literally shapes our experience of reality. Tools that respect attention (rather than competing for it) are a form of user respect. — Cal Newport, *Deep Work* (https://calnewport.com/deep-work-rules-for-focused-success-in-a-distracted-world/)
7. **counter** on "Deep analytics dashboards (tempting, but noisy)": Interestingly, one study found Pomodoro breaks led to a *faster* increase in fatigue compared to self-regulated breaks, and a faster decrease in motivation. The technique works best for people who struggle with starting or who face constant interruptions — if you naturally enter flow states, rigid 25-minute blocks may actually break your rhythm. — Prem et al., 2023 (https://pubmed.ncbi.nlm.nih.gov/36859717/)
