SpendLess is a modern Android finance tracking application with a strong focus on security and data protection. It enables users to track their income and expenses while ensuring their financial data remains secure through local encryption and session management. The app will create a test user with the username "testUser" and a pin of 12345 on first launch of a debug build. This can be used for demo purposes.
- 🔐 Secure local authentication with PIN and optional biometrics
- 💰 Comprehensive transaction tracking and categorization
- 📊 Insightful financial statistics and reporting
- 🔄 Support for recurring transactions
- 📱 Material Design UI with Jetpack Compose
- 🔒 Encrypted local data storage
- 📈 Detailed transaction history with filtering
- 📤 Export capabilities for transaction data
The application demonstrates modern Android development practices and technologies:
- Local session management with configurable timeouts
- Encrypted PIN storage and transaction data
- Biometric authentication support
- Customizable security preferences
- Clean Architecture principles
- Material Design implementation
- Single Activity architecture
- Local-first data approach
- Encrypted local storage for sensitive data
- CSV and PDF export capabilities
- Transaction categorization system
- Support for various currency formats
- 5-digit PIN authentication
- Configurable session duration
- Biometric authentication integration
- Account lockout mechanism with customizable duration
- Local-only account management
- Support for both income and expenses
- Customizable recurring transaction schedules
- Transaction categorization for expenses
- Optional note attachment for transactions
- Comprehensive transaction history
- Customizable currency display formats
- Flexible decimal and thousands separators
- Multiple currency symbol options
- Persistent user preferences
- Clone the repository
git clone https://github.com/BLTuckerDev/SpendLess-
Open the project in Android Studio
-
Build and run the project
- Minimum SDK: 27
- Target SDK: 35
- Kotlin: 2.0.21
This project is licensed under the [Your chosen license] - see the LICENSE file for details.