Skip to content

imkisi/Wlet

Repository files navigation

Wlet - Finance Tracker App

Wlet is a modern, minimalist finance tracking application built with Jetpack Compose. It helps users track their income and expenses with a clean interface, intuitive swipe navigation, and real-time balance updates.

✨ Features

  • Interactive Dashboard & Analytics (NEW): Visualize expenses using dynamic Bubble Clusters to instantly see how funds are allocated across categories.
  • Daily Transaction Grouping: View your transactions organized by date in clean, gradient-styled cards.
  • Real-time Balance: Keep track of your total wealth with an automatic balance calculator.
  • Swipe Navigation: Seamlessly transition between the Home screen and Settings with horizontal swipe gestures.
  • Floating Action Dock: A persistent navigation bar for quick access to Home, Settings, and adding new transactions.
  • Transaction Management:
    • Add new income/expense entries with name, amount, category, and description.
    • View detailed transaction information.
    • Edit or delete existing transactions via an intuitive bottom sheet.
  • IDR Optimization: Specifically designed for the Indonesian market with "Rp" formatting and no unnecessary decimals.
  • Custom Visuals:
    • Roboto Mono: A monospaced typography choice for a clean, financial look.
    • Custom Icons: Unique iconography for all major actions.
    • Theme support: Minimalist color palette (#F0ECE9) designed for readability.

🛠️ Tech Stack

  • UI: Jetpack Compose (Material 3)
  • Architecture: MVVM (Model-View-ViewModel) + Repository Pattern
  • Database: Room Persistence Library
  • Navigation: Horizontal Pager + Navigation Compose
  • Dependency Management: Gradle Version Catalog (libs.versions.toml)
  • Code Generation: KSP (Kotlin Symbol Processing)

🚀 Getting Started

Prerequisites

  • Android Studio Ladybug (or newer)
  • Android SDK 35
  • Kotlin 2.0.21+

Installation

  1. Clone the repository:
    git clone https://github.com/yourusername/wlet.git
  2. Open the project in Android Studio.
  3. Sync project with Gradle files.
  4. Run the app on an emulator or physical device (API 24+).

📸 Screenshots

📂 Project Structure

  • data/: Contains Room database, entities (Transaction, Category), and DAOs.
  • repository/: Single source of truth for data operations.
  • ui/:
    • home/: Home screen components, transaction cards, and action dialogs.
    • settings/: Settings screen and preference items.
    • theme/: Material 3 theme definitions, colors, and Roboto Mono typography.

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.


Built with ❤️ using Jetpack Compose.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages