Mobile Apps

DebtMate: Peer-to-Peer Debt Tracking

DebtMate is a Flutter Android mobile application designed to simplify tracking shared expenses, partial payments, and group balances.

Problem Statement

The core challenge

Friends and colleagues lack a simple, shared tool to log peer-to-peer debts, leading to awkward calculations and complex calculations.

Key Requirements

  • Secure user profile setup with email/password and Google authentication.
  • Real-time database sync for shared balances, group logs, and payment states.
  • Expense split calculator supporting equal and custom splits.

Architectural Breakdown

  • Mobile Frontend: Flutter Android app using Riverpod for clean state handling.
  • Backend Services: Google Firebase infrastructure managing auth and database sync.
  • Navigation Core: Declarative routing configured through go_router.

Implementation Strategy

We developed the app in Flutter and Dart, wiring Firebase Firestore rules to sync balances, manage group dependencies, and handle local attachments.

Technical Decisions

  • Chose Riverpod for state management due to its testability and clean provider models.
  • Implemented Firebase Auth to support secure Google and email login flows.

Key Challenges Solved

  • Handling original transaction currency preservation across shared groups was resolved by storing transactions with explicit currency properties.

Quality Assurance & Testing

Conducted exploratory manual testing on multiple Android devices, simulating partial network connection states to verify data sync behavior.

Project Outcome

Built an Android-first debt tracking application with cloud synchronization, group expense management, split logic, payments, reminders, reporting, and multi-currency support.

Technology Stack

FlutterDartFirebase FirestoreFirebase AuthFirebase Cloud MessagingRiverpod

Related Engineering Services

Add an AI assistant to your site

Tell us about your project. We'll reply on the same day.