Skip to content

A modern open-source personal finance management application with expense tracking, budgeting, debt management, and AI-powered insights built with Next.js, TypeScript and Prisma.

License

Notifications You must be signed in to change notification settings

WWI2196/fiscal-flow

Repository files navigation

Fiscal Flow

Fiscal Flow Banner

Next.js TypeScript Tailwind CSS Prisma License

🌟 Overview

Fiscal Flow is a modern, open-source personal finance management application built with Next.js, TypeScript, and Prisma. It empowers users to take control of their financial lives with intuitive expense tracking, budget management, and AI-powered insights.

πŸ“Š Application Screenshots

Dashboard

Comprehensive Dashboard

Budgeting

Budget Planning & Tracking

Analytics

In-depth Financial Analytics

Freelance Tools

Freelancer Income Tracking

AI Assistant

AI-Powered Financial Assistant

✨ Features

Core Functionality

  • Dashboard - Centralized view of your financial health
  • Expense Tracking - Monitor and categorize all expenditures
  • Income Management - Track multiple income sources
  • Account Management - Support for bank accounts, cash, and fixed deposits
  • Budget Planning - Set and monitor budgets with visual feedback
  • Zero-Based Budgeting - Allocate every dollar to a specific purpose

Advanced Features

  • AI-Powered Financial Assistant - Ask questions about your finances and get intelligent answers
  • What-If Scenarios - Simulate financial decisions and see the long-term impact
  • Merchant Analytics - Understand spending patterns across different merchants
  • Predictive Cash Flow - View projections based on recurring transactions
  • Financial Health Score - Get a quantitative measure of your overall financial health
  • Debt Management - Track and optimize debt payoff strategies
  • Financial Goals - Set and track progress toward savings targets

Freelancer Tools

  • Freelance Income Tracking - Monitor earnings across multiple platforms
  • Client Profitability Analysis - See which clients provide the best returns
  • Platform Income Analysis - Compare income across different freelance platforms
  • Time Tracking - Track hours worked and calculate effective hourly rates

Technical Features

  • Dark Mode Support - Seamless light/dark theme switching
  • Responsive Design - Works on desktop, tablet, and mobile
  • Offline Support - Core functionality works without an internet connection
  • Data Visualization - Beautiful charts and graphs for better insights
  • Real-time Updates - See changes immediately as you make them
  • Data Export - Export your financial data for external analysis

πŸ“‹ Prerequisites

Before setting up Fiscal Flow, ensure you have:

  • Node.js 16.x or later
  • PostgreSQL 13 or later (or alternative supported by Prisma)
  • npm or yarn
  • Git

πŸš€ Getting Started

1. Clone the Repository

git clone https://github.com/WWI2196/fiscal-flow.git
cd fiscal-flow

2. Install Dependencies

npm install
# or
yarn install

3. Environment Setup

Create a .env file in the root directory:

# Database
DATABASE_URL="postgresql://username:password@localhost:5432/fiscal_flow"

# For AI features (optional)
GOOGLE_GENAI_API_KEY="your-google-ai-api-key"

4. Database Setup

Initialize and seed your database:

# Generate Prisma client
npx prisma generate

# Run migrations
npx prisma migrate dev

# (Optional) Seed the database with example data
npx prisma db seed

5. Start Development Server

npm run dev
# or
yarn dev

Visit http://localhost:9002 in your browser to see the application.

πŸ—„οΈ Database Schema

Fiscal Flow uses Prisma with PostgreSQL (by default). Here's an overview of the main data models:

  • Account: Bank accounts, cash, fixed deposits
  • Expense: All expenditures with categories
  • Income: Revenue streams
  • FreelanceIncome: Specialized income tracking for freelancers
  • Debt: Loans and other debt instruments
  • FinancialGoal: Savings targets
  • RecurringTransaction: Scheduled regular payments and income
  • BudgetAllocation: Budget categories and limits

For complete schema details, see prisma/schema.prisma.

πŸ”§ Configuration

AI Assistant Configuration

The AI financial assistant requires a Google Gemini API key:

  1. Obtain an API key from Google AI Studio
  2. Add the key to your .env file as GOOGLE_GENAI_API_KEY

Styling and Theming

Fiscal Flow uses Tailwind CSS for styling. The main theme configuration is in tailwind.config.ts.

πŸ“± Mobile Experience

Fiscal Flow is fully responsive and works well on mobile devices. For the best experience, you can:

  • Add to Home Screen on iOS/Android for a native app-like experience
  • Configure push notifications (if enabled)

🀝 Contributing

Contributions are welcome! Please check out our contribution guidelines for more information.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

πŸ“„ License

Fiscal Flow is licensed under the MIT License - see the LICENSE file for details.

πŸ™ Acknowledgments

πŸ“ž Support

For issues and features, please open an issue on GitHub.


Made with ❀️ for better financial management

About

A modern open-source personal finance management application with expense tracking, budgeting, debt management, and AI-powered insights built with Next.js, TypeScript and Prisma.

Topics

Resources

License

Stars

Watchers

Forks