Project
Mihver — a health coach running 30 modules from one chat
Modules that track the day — from prayer times to medication schedules, water intake to sleep patterns — all in one app, and all controllable with a single Turkish sentence.
The problem
For Turkish-speaking users, daily health and habit tracking — prayer times, medication, water intake, sleep — is usually spread across five separate apps, each with its own interface and its own reminder system. There was no single place where all of it could be managed in natural language.
The solution
I built a single iOS app containing more than 30 modules — prayer, medication, water, sleep, exercise, diet, tasks, finance, reminders, journal, mood, quitting smoking, earthquake alerts and more. Every module can also be driven from the chat through a rule-based Turkish natural-language engine I called "LocalAgent": a sentence like "update yesterday's sleep record to 7 hours" or "delete the medication I just added" finds the right record in SwiftData and updates it directly.
As the number of modules grew, the interface became the real difficulty: nobody wants to see 30 modules at once. So modules can be switched on and off by category, and the ones used often can be starred and pinned to the home screen. The app's scope is wide; its day-to-day surface is only as wide as the user chooses.
Technology
A detail worth highlighting
The app's startup recovery chain tells the difference between a SwiftData store file being "unreadable" (because the device is locked) and being "corrupt" — confusing the two can wipe data for no reason. Mihver goes through the unreadable check first, and only if the store is genuinely corrupt (and only if a backup passes quick_check verification) does it recover atomically; store files are never deleted outright in any automatic flow, they are moved to quarantine first.
Screens
Let's talk about a similar problem
If there is a product with a wide scope that still has to keep a simple interface, there is a lot to talk about.