DEV Community

Cover image for I Built a Chrome Extension to Block Distracting Sites and Fix My Pomodoro Timer — Here's What I Learned
Promise Uzoechi
Promise Uzoechi

Posted on

I Built a Chrome Extension to Block Distracting Sites and Fix My Pomodoro Timer — Here's What I Learned

Let me be honest about something embarrassing.

I've read Deep Work. I've read Atomic Habits. I had a colour-coded Notion workspace that would make a productivity influencer cry with joy. I used three different Pomodoro apps across three years. I had a site blocker installed.

I was still wasting about two hours a day.

It took me an embarrassingly long time to figure out where the leak was.


The moment I finally saw it

One afternoon I was watching my own screen — actually watching myself work, not in a productivity-hack way, just because I was curious — and I noticed something. Every time I finished a Pomodoro session and went to start the next task, I'd open a new Chrome tab.

And in the half-second before I typed anything, my hand just... went to Twitter. Or Reddit. Or sometimes I'd start typing a URL and somehow end up on a completely different one.

The new tab page was the leak.

Not the sites themselves. Not my willpower. The empty, invitation-shaped blank canvas that Chrome opens every time you hit Cmd+T was giving my brain a window to hijack the transition.

My site blocker wasn't catching it because I technically wasn't browsing to a distraction site yet. I was just "in between" tasks. The blocker sees a navigation. The decision to navigate happens before that.


So I built a fix

I'm a developer. This is what we do instead of therapy.

I built a Chrome extension called Ashdeck that replaces the new tab page entirely. When you open a new tab, instead of a blank canvas, you see:

  • Your current Pomodoro timer (running or ready to start)
  • My task list I can see exactly what I'm working on
  • A site blocker that activates the moment a session starts
  • Science-backed soundscapes Binaural beats, café noise, white noise built in.

The idea is simple: remove the moment of emptiness. Give the transition a destination.

The result surprised me. The issue wasn't willpower. It was the blank state. Once the new tab showed me exactly what I was supposed to be doing next, the decision to go to Twitter stopped being automatic. I had to actively override something, not passively drift.


What I learned building this

A few things that weren't obvious going in:

1. The blocker and timer have to live in the same place

I tried building them separately first. The blocker alone felt punishing — like a rule without context. The timer alone was easy to ignore because you could just open a new tab and browse freely between sessions.

Together they create a feedback loop. The timer tells you you're in a session; the blocked tab enforces it without you having to remember.

2. The new tab page is the most underrated real estate in the browser

Every productivity extension wants to be a sidebar widget or a popup. But you open a new tab dozens of times a day. It's the single highest-frequency touchpoint in your entire computing session, and almost everyone is using it for a pretty photo and a quote.

3. Users split into exactly two camps

  • "I would never replace my new tab page" (visceral, immediate rejection)
  • "I've been looking for this exact thing for three years" (immediate install, immediately tell their friends)

I haven't found a middle ground yet, which I think means the positioning is actually pretty tight.


Where it's at now

Ashdeck has been live for about eight months. It's a free Chrome extension. I added an AI notepad recently because I kept wanting to brain-dump thoughts mid-session without switching apps.

The thing I'm still not happy with: the site blocking mechanism.

I built it in a way that works for most use cases but has some edge cases around incognito mode and certain redirect patterns. If you try it and run into weirdness, please tell me honestly.

If any of this resonates, you can try it at ashdeck.com. If it doesn't solve your problem, I'd genuinely like to know why, because that's useful too.


Over to you

What's the most unexpected place you've found productivity leaks in your workflow? or your current focus setup?

Top comments (0)