Expense App is a robust, privacy-first, offline-capable mobile application built to help you track household and vehicle expenses, while providing intelligent financial health insights. Designed completely as a free software project, this application runs fully on-device, ensuring your data never leaves your smartphone.
- Offline-First & Private: Uses local IndexedDB (via Dexie.js) to store all your data locally. No cloud sync, no tracking, complete privacy.
- Household Expenses Tracking: Log rent, electricity, water, gas, and telecommunications for multiple registered properties.
- Fuel & Vehicle Logging: Keep track of your car's fuel consumption, odometer readings, and expenses. Supports both Metric (Liters, KM) and Imperial (Gallons, Miles) units based on your language preferences.
- Intelligent Financial Health: A dedicated dashboard that uses the 50/30/20 rule to evaluate your budget (Basic Needs, Lifestyle, Wealth Building) and provides smart recommendations based on your spending habits.
- Multi-Asset Management: Register and switch between multiple houses or vehicles to segment your expenses precisely.
- Internationalization (i18n): Full support for English (
en-US) and Spanish (es-MX). - Theming: Seamless Light and Dark mode support.
- Cross-Platform Ready: Built with Ionic and Capacitor, ready to be compiled into a native Android APK or an iOS app.
- Ionic Framework - UI Toolkit
- Angular - Web Framework
- Capacitor - Native runtime
- Dexie.js - Minimalist IndexedDB wrapper
- Ngx-Translate - Internationalization
- Node.js (v18 or higher recommended)
- Ionic CLI (
npm install -g @ionic/cli) - Android Studio (for building the Android APK)
- Clone the repository and install dependencies:
npm install
- Start the development server:
ionic serve
To build the native Android application, run the provided NPM script which handles the Ionic build, Capacitor sync, and opens Android Studio:
npm run test-deviceFrom Android Studio, you can generate a signed APK for deployment via Build > Generate Signed Bundle / APK.
Contributions, issues, and feature requests are welcome! Feel free to check the issues page. If you'd like to contribute code:
- Fork the project.
- Create your feature branch (
git checkout -b feature/AmazingFeature). - Commit your changes (
git commit -m 'Add some AmazingFeature'). - Push to the branch (
git push origin feature/AmazingFeature). - Open a Pull Request.
This project is free software. You can distribute it and/or modify it under the terms of your preferred open-source license.
Built with ❤️ for better personal finance management.