Skip to content

KSSidll/Arru

Repository files navigation

Arru

Your expenses tracker


API Kotlin Jetpack Compose material

Arru is an app for expenditure tracking/analysis

Features

  • Light/Dark mode
  • Wide screen support
  • Local backups
  • Polish and English localization
  • Transaction baskets tracking your total expenditure with optional product, category, shop and producer spending tracking
  • Comparisons between prices at different shops
  • Ranking of categories and shops based on total money spent
  • Merging capabilities for categories, shops, products and producers

Plans for the future updates (Roadmap)

  • Alternative names for Products and Product Categories for easier searching
  • Filtering for easier searching
  • Groups to aggregate data for easier analysis
  • Cloud backups (most likely Google Drive)
  • Option to use an online database (most likely Firebase)
  • Exporting and importing app data as CSV (currently can only perform a backup in the app folder)

Tech Stack & Libraries

  • Android Studio Jellyfish 2023.3.1

  • Kotlin based

  • Coroutines for asynchronous computing

  • Flow to emit values from data layer reactively

  • Hilt for dependency injection

  • Compose Navigation Reimagined for animated navigation

  • Vico Compose for graphs

  • Fuzzywuzzy for fuzzy searching capabilities

  • Jetpack

    • Compose - Modern Declarative UI style framework based on composable functions

    • Room - Persistence library providing abstraction layer over SQLite

    • Material You Kit - Material 3 powerful UI components

    • ViewModel - Manages UI-related data holder and lifecycle awareness. Allows data to survive configuration changes such as screen rotations

    • Lifecycle - Observe Android lifecycles and handle UI states upon the lifecycle changes