Inspiration

I wanted to make a fun app, that I thought would be contained in scope so I could polish it up. I remember seeing another cool widgets app, and realizing that most widgets didn’t appeal to me, and that I thought I could do something interesting in this space.

Other inspirations that helped:

  • Character customizers in video games
  • Clocks and watches in the real world
  • Software that is fun for the sake of being fun

What it does

Hands lets you design your own clocks, and then add them to your home screen as widgets. You can also share clocks you’ve designed, so others can use them too.

How we built it

Its build in Swift and SwiftUI, with a lot of help from Claude and Codex.

Challenges we ran into

Apple’s widget implementation does not provide a nice way to animate a second hand (either as 1 second ticks or as a smooth sweep). So figuring out how to do this was really tricky, and I’m pleased that I managed it without using any private apis.

The clock editor has so many controls, so figuring out a way to design the editor in a way that it isn’t overwhelming and confusing was pretty difficult. I hope the final result is ok, but I’d love to hear feedback on how to improve this further.

Accomplishments that we're proud of

  • I designed and drew all the fonts myself. It was my first time drawing typefaces and I learnt a huge amount. I started drawing the numerals myself, and then ended up designing the whole app typeface too.
  • I wrote custom shaders that will warp the text to fit the shape of the clock-face (ie circular or round rect)
  • I built a custom color picker that uses OKLCH for better color control. It has a bunch of cool features like pulling color out of an image, or generating complementary colors etc

What we learned

  • Designing typefaces is super fun and really difficult
  • Small apps aren’t necessarily small projects

What's next for Hands: Analog Clock Widgets

Next is probably iPad and iPhone Duo support.

After that, I don’t know yet! There are so many possible directions to take this. Maybe some combination of:

  • More typefaces?
  • More editor features (shadows / gradients etc)?
  • Glass widgets?
  • A watch app?

Built With

  • claude
  • codex
  • revenuecat
  • swift
  • swiftui
Share this project:

Updates

Submission history