Skip to content

An open-source expense management system for personal and multi-company use. Track income, expenses, accounts, and payees with clean financial insights. Designed for startups, freelancers, and growing teams.

License

Notifications You must be signed in to change notification settings

InnvoTechnologies/expenseflow

Repository files navigation

logo

A modern, full-stack finance application built with Next.js 15, specialized in multi-currency tracking, AI-powered insights, and automated transaction categorization.

License Next.js TypeScript Tailwind CSS

🚀 Features

Core Financial Management

  • Multi-Currency Support: Track accounts and transactions in any currency (USD, AUD, EUR, etc.) with automatic base currency conversion.
  • Account Types: Manage Bank Accounts, Cash, Mobile Wallets, Credit Cards, Savings, and Investments.
  • Transaction Handling: Record Income, Expenses, and Transfers between accounts.
  • Category Management: Hierarchical categories with custom icons and types.
  • Payee Management: Track who you pay or receive money from.

🤖 AI-Powered Assistance

  • Smart Categorization: Automatically suggests categories for new transactions based on description and history.
  • Natural Language Input: "Lunch 12.85 AUD at KFC" automatically parses into a structured transaction.
  • Financial Insights: AI analysis of spending patterns, anomalies, and monthly summaries.
  • Chat Assistant: Integrated AI chat to query your financial data and ask questions about your spending.

📊 Dashboard & Analytics

  • Real-time Dashboard: Overview of net worth, recent activity, and spending trends.
  • Visual Reports: Charts and graphs for income vs expenses, category breakdowns, and more.
  • Savings Goals: Track progress towards financial targets.
  • Subscription Tracker: Manage recurring payments and billing cycles.

🔐 Security & Auth

  • Secure Authentication: Powered by Better-Auth with Google OAuth support.
  • Cloudflare Turnstile: Bot protection on sign-in and registration forms.
  • Data Privacy: Granular control over user data with export and wipe options.

🛠️ Tech Stack

⚡ Getting Started

Prerequisites

  • Node.js 18+
  • PostgreSQL database
  • Yarn or NPM

Installation

  1. Clone the repository

    git clone https://github.com/InnvoTechnologies/expenseflow.git
    cd expenseflow
  2. Install dependencies

    yarn install
  3. Set up environment variables Copy the .env.example file to .env and fill in the values

  4. Run Database Migrations

    yarn drizzle-kit migrate
  5. Start Development Server

    yarn dev

Open http://localhost:3000 to view the app.

📂 Project Structure

src/
├── app/              # Next.js App Router pages and API routes
├── components/       # Reusable UI components (Shadcn + Custom)
├── db/               # Drizzle schema and database connection
├── hooks/            # Custom React hooks
├── lib/              # Utility functions, auth client, and API helpers
└── server/           # Server-side logic and actions

🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

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

Star History

Star History Chart

📄 License

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

About

An open-source expense management system for personal and multi-company use. Track income, expenses, accounts, and payees with clean financial insights. Designed for startups, freelancers, and growing teams.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Languages