Inspiration
Important dates are everywhere: passports expire, insurance policies need renewal, warranties end, subscriptions renew, and return windows close. Yet these dates are often buried inside documents, receipts, screenshots, or labels and are easy to forget.
I wanted to make remembering them as simple as taking a photo.
That idea became Mindkeep: Expiry Reminders — an iPhone app designed around one simple concept:
Capture it now. Mindkeep will remind you later.
What it does
Mindkeep lets users photograph a document or label, select an existing photo or screenshot, or enter information manually.
The app recognizes text on-device, identifies possible dates, and lets the user select the date that matters. Mindkeep then creates local reminders before that date arrives.
Possible uses include:
- Passport and ID expiration dates
- Insurance renewals
- Warranties
- Return deadlines
- Subscription and free-trial dates
- Documents and certificates
- Any other important date you don't want to forget
Privacy by design
Privacy was a core design decision rather than an afterthought.
Text recognition is performed on-device. Documents and extracted text are not sent to a remote server for processing.
Mindkeep requires:
- No account
- No login
- No advertising
- No tracking
Saved information remains on the user's device.
How I built it
Mindkeep was built as a standalone iOS application using Flutter and Dart.
On-device OCR is handled with Google ML Kit Text Recognition. Detected text is processed locally to identify potential dates, including handling ambiguous date formats so that the user remains in control of the final interpretation.
Reminders use local iOS notifications, while application data is stored locally in an encrypted SQLite database.
Subscriptions are handled through Apple's StoreKit/App Store infrastructure, with RevenueCat used for subscription entitlement management.
Challenges
One of the biggest challenges was making date extraction useful without pretending that software can always understand a date's meaning.
A date such as 03/04/2026 can have multiple interpretations depending on locale. Instead of silently guessing, Mindkeep can present possible interpretations and let the user decide.
Another major part of the project was everything required to turn a working prototype into a real product: privacy decisions, local data storage, subscription infrastructure, App Store requirements, testing, review, and distribution.
What I learned
Building Mindkeep taught me that shipping an application involves much more than writing code.
Product design, privacy, edge cases, user experience, monetization, App Store compliance, and distribution all became part of the engineering problem.
As a physician and radiology resident rather than a professional software developer, taking an idea from a personal problem all the way to a publicly available App Store product has been an incredible learning experience.
What's next
Mindkeep is now live on the Apple App Store.
The next step is learning from real users: improving date recognition, refining the workflow, expanding useful reminder scenarios, and continuing to make the experience as effortless as possible.
The goal remains simple:
Take a photo today. Don't worry about remembering the date tomorrow.
Log in or sign up for Devpost to join the conversation.