The verdict first
Friday 7pm idea → Sunday 11pm TestFlight link. 24 hours of actual work across the weekend. An MVP habit tracker for a specific niche, with auth, streaks, reminders, and a paywall. The code generation took 2 hours; everything else took 22.
The idea
A habit tracker for ADHD — the specific friction being that generic habit apps shame you after you break a streak, and ADHD users specifically hate that. The wedge: soft streaks with built-in “amnesty days” that the app forgives automatically. Narrow niche, strong community on Reddit, clear differentiator. Picked this instead of the three other ideas in my notes because it passed the “would a real user on r/ADHD pay $3/month for this?” test.
Friday evening: setup (2 hours)
- Bought the domain.
- Created Supabase, Clerk, Apple Developer, and RevenueCat accounts.
- Wrote the scaffold prompt using the idea-to-prompt framework — audience, wedge, screens, data, tone.
- Didn’t generate anything yet. Went to bed with the prompt ready.
Friction: Apple Developer Program enrollment took longer than expected — if I hadn’t had an account from a previous project, I’d have lost most of Friday.
Saturday morning: generate + iterate (4 hours)
- Pasted the scaffold prompt into ShipNative at 9am. First preview at 9:03.
- Iterated 12 times between 9–11am: adjusted accent color, fixed the streak counter copy, changed the onboarding flow, added the amnesty-day toggle.
- Exported the Expo project at 11am. Opened in Cursor.
- Ran
eas build --profile developmentfor iOS. Built in 8 minutes. Installed on my iPhone. - It worked. Not pretty, but real. Coffee break deserved.
What worked: scaffold prompt was tight — most iterations were polish, not corrections. What didn’t: tried to iterate the onboarding copy 4 times before realizing it was faster to just edit the strings directly in Cursor.
Saturday afternoon: native features + Stripe (6 hours)
- Wired expo-notifications for daily reminders at the user’s preferred time.
- Added RevenueCat for subscriptions — $3.99/month, $29.99/year, 7-day trial. Followed the RevenueCat + Expo guide. Got stuck for 40 minutes on APNs key setup.
- Configured Supabase tables + RLS policies for users, habits, and check_ins.
- Wired Clerk auth, replaced the mocked user in ShipNative’s output with real auth state.
- Tested end to end: sign up, create a habit, check in, see streak update, close app, reopen — state persisted.
Friction: APNs key upload via EAS credentials had a poorly-documented requirement that the key file needed to stay in place — I moved it and broke builds for 20 minutes.
Saturday evening: polish + privacy + assets (4 hours)
- Wrote the privacy policy using the template. Hosted at
/privacyon my landing page. - Designed the app icon in Figma in 20 minutes. Generated all sizes with App Icon Generator.
- Wrote the App Store listing: title, subtitle, keyword field, description. Followed the keyword research guide.
- Captured 5 screenshots on my iPhone, added text overlays in Figma for the App Store gallery.
- Went to bed at 1am with an app that felt shippable.
Sunday morning: EAS Build + TestFlight (3 hours)
- Ran
eas build --profile production. Took 12 minutes. - Ran
eas submit --platform ios. Uploaded to App Store Connect in 3 minutes. - First TestFlight build rejected by automated checks — missing usage description for notifications. Added it to app.json, rebuilt, resubmitted. 25 minutes lost.
- Second build accepted. Invited 3 friends to TestFlight for sanity checking.
- Filled in App Store Connect App Privacy labels to match the privacy policy.
Sunday afternoon: submit + Product Hunt prep (4 hours)
- Friends tested, found 2 bugs (one state issue, one copy typo). Fixed both in Cursor in 20 minutes.
- Submitted for App Store review. Estimated 24–48 hour review window.
- Set up the landing page with a Coming-to-Product-Hunt embed.
- Wrote the Product Hunt listing in draft form following the PH launch playbook.
- Posted on r/ADHD with a genuine build-in-public note. 40 upvotes, 12 comments, 8 waitlist signups by bedtime.
The hour breakdown
| Phase | Hours |
|---|---|
| Setup + account creation | 2 |
| AI generation + iteration | 2 |
| Cursor edits | 2 |
| Native features (notifications, RevenueCat, auth) | 6 |
| Supabase setup + RLS | 1 |
| Polish + privacy + app assets | 4 |
| EAS Build + TestFlight + resubmission | 3 |
| Launch prep + Reddit post | 4 |
Total: 24 hours of actual work across a 56-hour weekend. Rest was sleep, food, gym, real life.
What worked
- Narrow niche. “Habit tracker for ADHD” is ten times easier to launch than “habit tracker.”
- Scaffold prompt written the night before. Friday night ambition does not translate to Saturday morning clarity.
- Copying the RevenueCat + Clerk + Supabase setups from guides rather than reading API docs cold.
- Using Cursor for last-mile edits instead of iterating endlessly in the AI builder.
- Shipping the Reddit post the same day as TestFlight — validation while the app is still warm.
What didn’t
- APNs key confusion — cost 40 minutes and some frustration.
- Tried to iterate copy in chat 4 times when editing it directly in Cursor would have taken 1 minute.
- Underestimated the time to make 5 App Store screenshots look good — almost 2 hours.
- App Store automated rejection for missing usage description. Simple fix, but a detail I’d have caught with a better pre-submit checklist.
What I’d do differently
- Run the pre-submit checklist first, not last. See the Expo EAS submission checklist.
- Build App Store screenshots from Figma templates, not from scratch.
- Pre-draft the Product Hunt listing before the build starts, not after.
- Switch to Cursor the moment a chat iteration feels repetitive.
- Pre-write the Reddit post too — launch day momentum matters.
Lessons for your weekend build
- Pick a niche where a community already exists. Solo weekend builds die without an audience.
- Write the scaffold prompt Friday evening. Generate Saturday.
- Time-box iteration. If the AI is repeating itself, switch to your IDE.
- Set up RevenueCat + Apple Developer Program before the weekend. The admin time sinks your timeline.
- Your v1 will not be perfect. Ship it to users, not to perfection.