Skip to content

Android project with RoomDB, WorkFlow Api, and Flow-Coroutine to add, edit, and filter expenses of the user. The project has the functionality to backup and restore the database.

Notifications You must be signed in to change notification settings

Jo-Android/Expense-History

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Expense-History

Android project with RoomDB, WorkFlow Api, and Flow-Coroutine to add, edit, and filter expenses of the user. The project has the functionality to back up and restore the database.

Technologies Used

  • Navigation Component: To navigate between fragments
  • Koin: For Dependency Injection
  • Room DB: Library for CRUD operations
  • Android Lifecycle: Performing threading operation with lifecycle awareness
  • Kotlin Coroutines: Library for executing multi-thread operations
  • Kotlin FLow
  • GSON: Used for converting database table to GSON file
  • WorkManger: Used for executing Backup - Restore operations

Database Structure

The database has 3 tables. Users, Categories, and Expenses.

Relation:

  • Every category is connected to a user and can be a sub-category for another one
  • Every Expense is connected to a category

Screenshots

1. Expense List

List All the expenses saved in DB and group them by the month

#2 Filter Expenses

#2.1 Filter by user & category

Filter by user and / or category

#2.2 Filter by Date

You can also filter by selecting a date range

3. Add New Expense

New expense page to add all the pieces of information required to the database

#3.1 Select Date

Add a date to the new transaction by selecting a day from the Date Picker Dialog

#3.2 Select Category

Add a Category from the list of categories

#4. Edit Expense

5. Settings

Settings page where you can modify the user and category table or backup and restore the database.

6. User Detail

This page will list the user information. You can edit or delete the user. If there are any users related to it, they will be displayed in the Sub Users table

7. Category Detail

This page will list the category information. You can edit or delete it. If there are any categories related to it, they will be displayed in the Sub Categories table

About

Android project with RoomDB, WorkFlow Api, and Flow-Coroutine to add, edit, and filter expenses of the user. The project has the functionality to backup and restore the database.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages