ExpenseTracker is a modern Android application designed to help users manage their finances effectively. It allows for tracking expenses and income, categorizing transactions, and visualizing spending patterns through intuitive charts.
- Expense Tracking: Easily add, edit, and delete your daily expenses.
- Income Management: Keep track of various income sources.
- Categorization: Organize your expenses into categories with custom names and colors.
- Visual Statistics: View your spending habits with a dynamic Pie Chart showing the distribution of expenses across categories.
- Date Filtering: Filter your financial data by specific date ranges to see how your budget evolves.
- Balance Overview: Get an immediate summary of your total income, total expenses, and current balance.
- Modern UI: Built using Material Design components, Fragments, and a clean, user-friendly interface.
- Kotlin: Primary programming language.
- Architecture: MVVM (Model-View-ViewModel) pattern for a clean separation of concerns.
- Room Database: For robust local data storage and persistence.
- LiveData & ViewModel: To manage UI-related data in a lifecycle-conscious way.
- Coroutines: For efficient asynchronous operations.
- Navigation Component: To handle application navigation.
- MPAndroidChart: For rendering beautiful and interactive statistics.
- RecyclerView & ListAdapter: For optimized list rendering.
- Android Studio Flamingo or newer.
- JDK 17 or higher.
- Android Device or Emulator running API level 24 (Nougat) or higher.
- Clone the repository:
git clone https://github.com/sanpost/ExpenseTracker.git
- Open the project in Android Studio.
- Wait for Gradle sync to complete.
- Build and run the application on your device or emulator.