SpendLess is a finance tracking app with a focus on security. The aim is to keep track of the users income and expenses while also securing the data in terms of accessing the app and storing data.
![]() |
![]() |
![]() |
![]() |
![]() |
| Dashboard | Add Expense | Preferences | Pin | Report |
spendless-submission-demo.mp4
- Biometric Authentication: Users can use their fingerprint or face to unlock the app.
- Income and Expense Tracking: Users can add their income and expenses with recurring support.
- Reports: Users can export reports in CSV or PDF format.
- Widget: Users can add a widget to their home screen to quickly add an expense.
- Security Preferences: Users can set up security preferences with session expiration and lockout duration.
- Expense preferences: Users can set up expense preferences to view their expenses in a certain way.
- Language: Kotlin
- Architecture: Clean Architecture with MVVM
- Dependency Injection: Hilt
- Database: Room
- UI Framework: Jetpack Compose
- Background Processing: WorkManager
- Testing: JUnit5
- Android Studio
- JDK 17 or newer
- Android SDK 34 or newer
- Clone the repository:
git clone git@github.com:rribeiro1/spendless-android.git-
Open the project in Android Studio
-
Sync the project with Gradle files
-
Run the app on your device or emulator
The project uses Gradle for building. To build the project:
./gradlew buildTo execute unit tests:
./gradlew app:testDebugUnitTestTo create the APK (build -> outputs -> apk -> release):
./gradlew assembleReleaseSee LICENSE file for details.
Main contributors:




