Spend Smarter, Save More. Your Personal Finance Companion, Everywhere.
A sleek, cross-platform finance tracker built with Flutter and Supabase that runs seamlessly on Mobile, Web, and Windows.
FinFlow is a modern, intuitive, and secure application designed to help you take full control of your financial life. Track your income and expenses with ease, categorize your spending, and gain clear insights into your financial habits. Built with a single Flutter codebase, FinFlow delivers a consistent and beautiful native experience across all your devices.
FinFlow is a full-featured application designed for a seamless user experience. Click below to view the gallery in your preferred theme.
βοΈ View Light Mode Screenshots
|
A simple and beautiful onboarding experience to welcome users and highlight the app's value proposition from the very first launch. |
Robust and secure user sign-up and sign-in powered by Supabase Auth. Your financial data is protected from the start. |
|
The central hub gives you an instant snapshot of your balance, income, and expenses. A live list of recent transactions keeps you up-to-date. |
Group transactions by category to see a detailed breakdown of your spending, including the percentage of total expenses. |
|
An intuitive bottom-sheet interface makes adding income or expenses incredibly fast. Categorize and tag on the fly to maintain perfect records. |
Take full control by creating and managing your own spending categories. Tailor the app to fit your unique financial life. |
|
Further organize your transactions with custom tags, making it easy to track specific projects or events like #Vacation or #Work. |
View your account information and securely update your password. User control and security are at the core of FinFlow. |
π View Dark Mode Screenshots
|
A simple and beautiful onboarding experience to welcome users and highlight the app's value proposition from the very first launch. |
Robust and secure user sign-up and sign-in powered by Supabase Auth. Your financial data is protected from the start. |
|
The central hub gives you an instant snapshot of your balance, income, and expenses. A live list of recent transactions keeps you up-to-date. |
Group transactions by category to see a detailed breakdown of your spending, including the percentage of total expenses. |
|
An intuitive bottom-sheet interface makes adding income or expenses incredibly fast. Categorize and tag on the fly to maintain perfect records. |
Take full control by creating and managing your own spending categories. Tailor the app to fit your unique financial life. |
|
Further organize your transactions with custom tags, making it easy to track specific projects or events like #Vacation or #Work. |
View your account information and securely update your password. User control and security are at the core of FinFlow. |
FinFlow is packed with features to make financial management simple and effective.
- Cross-Platform: A single codebase for a consistent experience on Android, iOS, Web, and Windows.
- Secure & Complete Authentication: Safe sign-up and sign-in powered by Supabase Auth, including a secure flow for password resets.
- All-in-One Dashboard: Get an instant snapshot of your total balance, income, and expenses.
- Advanced Transaction Management: Effortlessly add, edit, and delete records, with powerful filtering by date or category.
- Insightful Analysis: Instantly see where your money goes with a percentage breakdown of your spending by category.
- Deep Categorization: Organize your spending your way with custom categories and tags for detailed tracking.
- Light & Dark Modes: Choose the look that's right for you with beautifully crafted light and dark themes.
- Smart Connectivity Monitoring: The app intelligently detects your online status to ensure data is always synced and up-to-date.
- Reliable Data Sync: Your data is securely stored and synchronized across all your devices using the Supabase realtime database.
- Sleek & Responsive UI: A clean, modern, and user-friendly interface that looks great on any screen size.
FinFlow is built with a modern and robust stack, leveraging the power of Flutter for the UI and Supabase for the backend. Here are some of the key packages and technologies that make it work:
- Core: Flutter & Dart
- Backend as a Service (BaaS): Supabase using
supabase_flutter - State Management:
provider - Routing:
go_routerfor a declarative, URL-based navigation system. - Key Utility Packages:
connectivity_plus: For checking network status.flutter_svg: To render beautiful SVG assets.intl: For date and number formatting.shared_preferences: For simple local data storage.
To get a local copy up and running, follow these simple steps.
- Ensure you have the Flutter SDK installed.
- You will need a free Supabase account.
-
Clone the repository:
git clone https://github.com/OmarAfifi-CSE/FinFlow.git cd FinFlow -
Set up your Supabase Project:
- Go to Supabase and create a new project.
- Inside your project, navigate to the SQL Editor and run the
schema.sqlscript from this repository to create the necessary tables and security policies.
-
Configure Supabase Credentials:
- Go to your Supabase project's Project Settings > API to find your keys.
- Open the file
lib/main.dart. - Paste your Supabase URL and anonKey directly into the
Supabase.initializefunction:// In lib/main.dart await Supabase.initialize( url: 'YOUR_SUPABASE_URL_HERE', anonKey: 'YOUR_SUPABASE_ANON_KEY_HERE', );
-
Install dependencies:
flutter pub get
-
Run the application:
flutter run
You can choose the target device (e.g., Chrome for web, a mobile emulator, or Windows).
Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement".
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature) - Commit your Changes (
git commit -m 'Add some AmazingFeature') - Push to the Branch (
git push origin feature/AmazingFeature) - Open a Pull Request
Distributed under the MIT License. See LICENSE for more information.
Created with β€οΈ to make finance tracking accessible to everyone.
















