Hey DEV community! 👋
I recently transitioned from a long career in hardware engineering (NPI, manufacturing) to full-time solo software development. When you work for yourself, you quickly realize your biggest enemy isn't the code—it's managing your own attention.
I rely heavily on the "1-Minute Rule": if I’m procrastinating on a complex feature or just need to rest my eyes from the screen (the 20-20-20 rule), I commit to just 60 seconds.
But there was a huge flaw in my system: Using a smartphone as a timer.
I would pick up my phone to set a 1-minute alarm, see a notification, swipe down, and suddenly 30 minutes had vanished. The tool meant to keep me focused was distracting me.
I needed a timer that lived right where I worked—in the browser—with absolute zero friction. No app downloads, no logins, no heavy JavaScript payloads.
So, I built 1 Minute Timer.
🛠️ The Tech Stack & Architecture
As developers, we love to over-engineer things, but for this project, I forced myself to keep it blazing fast and minimal.
- Framework: Astro 🚀 I chose Astro because of its "Zero-JS by default" architecture. A simple utility timer shouldn't require a massive React payload to render a clock. Astro allowed me to build a highly performant static site that loads instantly.
- Hosting & Edge Delivery: Cloudflare Pages ☁️ Deploying via GitHub integration to Cloudflare Pages is incredibly smooth. The site is served from the edge, meaning Time to First Byte (TTFB) is virtually non-existent regardless of where the user is.
-
Audio Strategy: Web Audio API vs. MP3s 🎵
Instead of loading heavy
.mp3files for the alarms, I experimented with generating custom soundscapes (like a 'Zen' marimba for stretching, or a 'Sport' buzzer for HIIT) programmatically using the browser's native capabilities.
🐛 A Funny Deployment "Gotcha" (Watch your robots.txt!)
Here is a quick lesson learned for anyone deploying on Cloudflare right now. After pushing the site live, my SEO tools started screaming that my robots.txt was blocking all crawlers (Disallow: /).
I checked my local build, and it was perfect. It turns out Cloudflare's new "Block AI Bots" security feature automatically intercepts and rewrites your robots.txt at the edge to block LLM scrapers (like GPTBot, ClaudeBot, etc.). While great for preventing scraping, it triggered false positives in standard SEO validators.
Tip: If you are launching a new site and need those initial Googlebot crawls, make sure to double-check how your CDN's security rules are modifying your headers and bots files!
🚀 Try It Out
You can check out the live project here: https://1minutetimer.org
It’s completely free, and I built it to be the perfect "tab companion" for developers who need to timebox micro-breaks, do a quick plank while compiling, or just force themselves to start writing a daunting piece of documentation for 60 seconds.
I’d love to hear your feedback on the UI, the sound design, or your own strategies for staying focused when the entire internet is just one tab away.
Happy coding (and focusing)! 💻
Top comments (0)