Indie dev

  • You Need A Nap

    I didn’t like naps. Or I thought I didn’t. I liked the idea of something other than coffee or energy drinks giving me enough of a boost to get through the day. So, of course, I tried hard to become a nap person.

    It never worked, for one simple reason: the moment I set an alarm for a short, 20-minute power nap, my anxiety would kick in. “You have 20 minutes until the alarm goes off. SLEEP NOW!” Then the alarm would go off, and I wouldn’t have slept a single minute. So I concluded I really wasn’t a nap person.

    Still, I kept thinking: “If only a nap timer could detect when I fell asleep and start counting then. Maybe my anxiety would shut up.” And my optimistic self would add: “One day I’ll build that app.” But I never did. Until AI got good enough to help me build it.

    So, here it is: You Need A Nap, an Apple Watch nap timer that waits for you to fall asleep before it starts the countdown. It may be an app for an audience of one, or maybe two if you’re still reading.

    Here’s how it works: you open the app, choose a nap duration, close your eyes, and relax. The app uses your wrist movement and heart rate measurements to try to detect when you’ve fallen asleep. It then starts the timer and wakes you with a gentle vibration—or a very annoying alarm sound, for those who sleep like a log. It’s not infallible: sometimes it mistakes deep relaxation for sleep, which I’m happy to count for my purposes. There’s also a fallback that starts the timer after a timeout, for those days when you can’t even relax and don’t want to wait forever for the countdown to begin.

    My initial plan was to vibe code it because I completely underestimated its complexity. Surely Apple would provide a sleep detection API, and it would just be a matter of calling a few methods here and there. How hard could it be? Of course, I couldn’t find an API that did what I needed, and just measuring a drop in heart rate wasn’t enough. Instead, I went on a long journey of trial and error with the watch’s heart rate and motion sensors, testing all sorts of heuristics and feeding Claude scientific papers on sleep detection until I had something that worked for me. It took months, mainly because I can’t take more than one nap a day. And contrary to popular belief, not that many people in Spain take siestas regularly—at least none of my friends.

    You can download the app for free! Not because I wanted it to be free. I originally wanted to charge a subscription so I could cover the Apple Developer Program fee: $99 a year. That was all I needed to break even. Then reality punched me in the face.

    When I looked into charging for subscriptions in Spain, my understanding was that the autónomo (self-employment) fees would push my break-even point to at least €300 a month. That’s a simplification, and it leaves out introductory exemptions, but it was enough to make me realize I didn’t want a small administrative hobby. So, fuck it. It’s free now—and that, kids, is why business viability is so important.

    I guess I’m an indie dev now—I even built a landing page. Whether I release more apps is a different question: getting this one through the App Store release process was such a pain in the ass, even with AI’s help.

    In the meantime, enjoy your anxiety-free power naps. You probably need one. And if you wake up feeling refreshed, a five-star review would make my day.

    Oh, and I shamelessly borrowed the app’s name from You Need A Budget. I hope they don’t sue me 😅