
Habi
Turn Your Calendar Events Into Habits
I started building this app three months ago to solve a very personal problem.
My daughter kept forgetting things before basketball practice.
The event was always on the calendar, but the things she needed were not: water bottle, sports eyewear, shoes.
We tried reminders.
We tried habit trackers.
They never quite worked, because they lived outside the calendar.
So I thought: why not have an app that turns calendar events into habits?
That’s how Habi was born.
Disclaimer: I do have Swift programming experience, but building this alone was clearly out of scope.
So I made a very intentional decision early on:
use a basic, native tech stack.
The more native the stack, the more likely you get good AI-generated code—because that’s what the models are trained on.
Tech stack
Swift & SwiftUI for the app
No custom server. I use Apple iCloud for sync:
lower cost
better privacy
easier marketing later on
One-shot prompt (disaster)
My first attempt was to ask the AI to build the entire app in one shot.
This never worked.
It might work for toy apps, but once the app grows, everything falls apart.
Code keeps changing.
Architecture drifts.
And at some point, you don’t really own the code anymore.
That was a hard no for me.
I drive. AI write.
Having morphing code that changes with every prompt iteration is not an option.
If you don’t control the architecture, you don’t own the product.
So this is the model I ended up with:
I own the architecture.
AI write and owns some islands.
What does this mean?
The AI writes small, contained pieces of code often exploratory, often black boxes while the overall system design is driven by me.
I never ask the AI to:
fix system-wide bugs
implement large features end-to-end
refactor the entire app
Instead, I break everything down into small, well-defined tasks.
At most, a function.
Sometimes, a small group of files.
Example Prompts
Create me an animation that does 1,2,3. (Black box code, I don't care about the code as far as the animation work)
Use cloud sync engine to write minimalist production ready Apple Cloud files (exploratory code)
Write me function to de-bounce writing into desk with max delay (Black Box Function)
Review this code and find me bugs (Code Review)
Using this simple strategies , I was able to scale Habi to:
595 Swift files
73,000 lines of code
Without losing control of the architecture.
Without fighting the AI.
Without pretending the AI is a senior engineer.
NEXT Post will be: How I'm going to market my Habit Tracker?
About
I built Habi after a small but recurring problem at home. My daughter kept forgetting things before basketball practice. The event was always on the calendar, but the things she needed were not. Water bottle, sports eye

Comment