Cipher is a privacy-first personal finance app for Android that automatically turns bank SMS and supported finance-app notifications into a structured transaction ledger.
I started building Cipher because I wanted a finance tracker that could automate the boring part of recording transactions without requiring my financial data to be sent to a cloud backend.
Today, Cipher has grown far beyond the original transaction tracker. It supports:
• Automatic transaction parsing from bank SMS and supported app notifications
• Multi-account tracking, transfers and account-specific analytics
• Budgets, category breakdowns and spending insights
• Recurring-payment and subscription tracking
• Custom categories, icons, colors and Smart Rules
• Split expenses with settled/unsettled tracking
• Six Android home-screen widgets
• Automated encrypted backups and restore
• CSV and PDF exports
• Multi-currency support
• Multiple language/localization support
• Biometric app lock and privacy mode
• Cipher Pro for additional customization and power-user features
Privacy is a core part of the architecture, not just a feature. Financial transactions and their parsing are handled locally on the device. Cipher does not send financial data to a cloud backend.
Kotlin • Jetpack Compose • MVI • Hilt • Room • SQLCipher • DataStore • Android Glance
Cipher has been an ongoing exercise in building a real, production Android application rather than just a demo project. I've worked on SMS and notification parsing, offline-first architecture, encrypted local storage, background processing, widgets, localization, data migration, backup/restore, Play Store releases, monetization, and maintaining a codebase through multiple major releases.
GitHub: https://github.com/insaneodyssey26/cipher
Google Play: https://play.google.com/store/apps/details?id=com.masum.cipher
Built with