A native iOS app that turns expense tracking into something you'd actually use. It started as a personal need during a trip to South Korea—manually tracking receipts in multiple currencies was cumbersome, so I built a tool to capture them via photos. That experience exposed the real problem: most expense trackers assume a single currency. The app evolved into a currency-agnostic solution that handles real-world complexity.
The core challenge: building a sophisticated data layer that syncs across devices reliably while handling complex domain logic—receipt extraction, multi-currency conversion, budget forecasting.
Key technical decisions: SwiftData with schema versioning and deduplication logic to handle messy real-world data. CloudKit integration for seamless iCloud sync without the usual complexity. An interactive analytics engine that computes time-based trends and expense forecasting in-memory without blocking the UI. The app also includes a soft-delete recovery system, so users can undo mistakes, and Siri shortcuts integration for voice-driven expense logging.
The app is localized across multiple languages and ships with memory-efficient patterns for handling large expense datasets—important when users have years of transaction history on their phone.
