travelExpenseTracker is an Android app specifically designed for the Queen's Student Cluster Competition Team (now known as the Queen's High-Performance Computing Club) to efficiently track their travel expenses and incomes while participating in SC24 (sc24.supercomputing.org) and SC25. The app allows users to log transactions and visualize financial data with charts. While the app provides a comprehensive list of recorded transactions, users must manually transfer these records into Excel spreadsheets to generate financial statements.
As the Financial Lead for the team, I wanted to create a tool that would simplify financial tracking for everyone involved and help me manage the team's finances more effectively. This app allows me to track each competition member's expenses and incomes during their travels. When they return, I use the recorded list of transactions to review and organize the team's budget, ensuring everything aligns with our financial goals. While the app doesn't directly generate Excel spreadsheets, it provides all the necessary details to manually create financial statements based on the recorded data.
This project reflects my dedication to keeping our team organized and financially prepared, so we can focus on achieving success at the competitions.
-
Secure Login:
- Login with username and password.
- Authentication managed using
LoginRepositoryandLoginDataSourcewith SQLite database. - Built using Android Studio's Login Activity.
-
Home Screen:
- Displays a list of recorded income and expenses with filtering options.
- Add new transactions with details like date, notes, and categories.
-
Statistics Page:
- Visualize financial insights with:
- PieChart: Displays expense distribution by category.
- Grouped BarChart: Compares income and expenses over time.
- Visualize financial insights with:
-
Settings Page:
- Change the appβs currency.
-
Manual Export:
- Use the transaction list on the Home Screen to manually transfer records into Excel spreadsheets.
- Built using Android Studio's Login Activity.
- User credentials are securely managed via SQLite-based
LoginRepositoryandLoginDataSource. - Configured as the main activity in
AndroidManifest.xml.
- Displays a transaction list with filtering options.
- Add transactions with:
- Type: Income or Expense.
- Category: Customizable (e.g., Travel, Food, Accommodation).
- Date: Custom date selection.
- Notes: Add additional details.
- Visual insights using:
- PieChart: Proportional expense distribution.
- Grouped BarChart: Income vs. expense comparison.
- Adjust app currency preferences.
- Programming Language: Java/Kotlin
- IDE: Android Studio
- Database: SQLite
- Charting Library: MPAndroidChart
- Log in with your username and password.
- Record your income and expenses on the Home Screen.
- View insights and trends on the Statistics Page.
- Adjust app settings, including currency preferences, on the Settings Page.
- Manually transfer transaction records into an Excel spreadsheet.
- Multi-language support.
- Direct Excel export functionality.
- Cloud backup for data synchronization across devices.
- Advanced filtering options and custom reporting formats.
Feel free to contribute or suggest improvements by submitting an issue or pull request!
For assistance with the Travel Expense Tracker:
-
Bug Reports: Open an issue here.
-
Questions: Email johnnietse994@gmail.com
When reporting issues, please include:
- Android version (e.g., Android 13)
- Device model (e.g., Pixel 6)
- Exact steps to reproduce the issue
- Screenshots (if applicable)
We welcome contributions from the community!
How to help improve this project:
- π΄ Fork the repository
- πΏ Create a branch for your feature (
git checkout -b feature/your-feature) - πΎ Commit your changes (
git commit -m 'Add feature(s)') - π Push to the branch (
git push origin feature/your-feature) - π Open a Pull Request
Please ensure your code follows existing style patterns.
MIT License
Copyright (c) 2024 Johnnie Tse
| Login or Register Page | Adding Income or Expense Page | Home Page | Statistics Page Part 1 |
|---|---|---|---|
![]() |
![]() |
![]() |
![]() |
| Statistics Page Part 2 | Date Selection Calendar Page | Date Selection Page (through typing the date ranges) | Date Selection Page (through tapping the date ranges on the calendar) |
|---|---|---|---|
![]() |
![]() |
![]() |
![]() |
| Settings Page Part 1 | Settings Page Part 2 |
|---|---|
![]() |
![]() |
A short walkthrough of the application is available below.









