What We're Building
We're building OverClockTimer — a clock app to help manage your productivity.
It's a clock/timer that sits on top of all your windows.
That's it.
We're surprised an elegant solution to this problem doesn't already exist, so we've set out to build it ourselves.
In the upcoming posts, we'll share our vision for what a good timer app should feel like as we get to building those features.
As a special challenge, we want to build this entire project — from start to finish — in a week.
This blog will document our process.
SwiftUI and Liquid Glass
Apple's introduction of liquid glass in 2025 was met with intense vitriol (etymological pun intended). This is understandable; people don't like change.
The reality though is that liquid glass is here to stay, so as developers we should lean into it and find places where it feels right. Leaning into it also gives our app a native macOS feel, which matters when you're building something that lives on screen all day.
For OverClockTimer, since the core UI component is an "always on top" rectangle that can be moved anywhere, it lends itself naturally to liquid glass. From our first prototype, we've noticed the effect makes the app feel like a part of the screen — blending into it.
Not just something that sits on top.
We're also being mindful of concentricity in our UI edges — a concept we picked up from this YouTube video by Sean Allen.
Apple has already showcased their love for concentricity in their hardware. Stack your iPad on your MacBook and you'll notice the edge radii align.
In the UI sense, this means the edges of your UI components should fit nicely into each other.
You can see a visual of this in our X post.
Website
We'll also need a website where people can learn about and download the app.
For day 1, the focus was getting the core building blocks in place.
We chose to build the website with Nuxt because it's the full stack framework I was most familiar with.
We started by designing and implementing the landing page. Then we decided it would be fun to set up a little blog to track and share our progress.
For hosting, we went with Railway because I’ve been reading a lot about it and wanted to try it out. Plus, if we end up needing a database or storage bucket for distribution, it's all right there in the same dashboard. So far, we're enjoying it.