HISAB is a Flutter-based mobile application that helps users manage shared expenses, track balances, and settle payments transparently using Firebase Realtime Database.
- Overview
- Key Features
- Tech Stack
- App Architecture
- Firebase Integration
- Database Structure
- UI & Design
- Getting Started
- Project Status
- Author
HISAB is designed to simplify shared expense management.
It allows users to add expenses, split amounts, track balances, and settle payments in real time.
The app follows clean architecture principles to ensure scalability and maintainability.
- User authentication (Email & Password)
- Add and manage friends
- Create and manage groups
- Add expenses with equal or custom split
- Real-time balance tracking
- Settlement management
- Notifications for key actions
- Clean and modern user interface
- Flutter
- Riverpod (State Management)
- Firebase Authentication
- Firebase Realtime Database
- Clean Architecture
The project follows Clean Architecture with three layers:
- Data Layer: Firebase services and repositories
- Domain Layer: Business logic and use cases
- Presentation Layer: UI screens and state providers
This structure keeps the code organized and easy to maintain.
- Firebase Authentication is used for login and signup
- Firebase Realtime Database is used for storing app data
- Database rules ensure only authenticated users can access data
- Database structure is created dynamically from the app
Main database nodes:
- users
- friend_collections
- groups
- group_members
- expenses
- transactions
- settlements
- notifications
Firebase Realtime Database is schema-less and uses a JSON tree structure.
- Consistent color theme (Indigo, Teal, Amber)
- Rounded UI components
- Soft shadows and smooth animations
- No hard cards
- Responsive layout for all screen sizes
- Flutter SDK installed
- Firebase project created
- Android Studio or VS Code
- Clone the repository
git clone https://github.com/your-username/hisab.git