Skip to content

harshita7126/Expensify

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

18 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Expensify - Personal Expense Manager

React Vite Supabase Tailwind CSS Deployed Vercel

A full-stack personal finance management application that helps users track expenses, monitor budgets, analyze spending patterns, and visualize financial insights through interactive dashboards.

Preview

Dashboard Preview

๐Ÿš€ Live Links


๐ŸŽฏ Try It Yourself

  1. Create an account or log in securely using the Supabase Auth panel.
  2. Log your transactions under the Expenses tab with custom categories.
  3. Set spending limits inside the Budgets dashboard to track real-time progress constraints.
  4. Analyze spending patterns through interactive charts and cash-flow insights.

โœจ Features

  • Real-Time Expense Tracking: Log, search, filter, and manage transaction types (income/expenses) instantly.
  • Interactive Analytics Dashboards: Rich data visualizations break down your overall balance, monthly spending trajectories, and savings metrics.
  • Smart Budget Monitoring System: Establish category-specific financial caps and visually track your spending limits via live progress tracking indicators.
  • Secure User Authentication: Implements robust user signups, logins, and session protections using Supabase Auth layers.
  • Centralized State Management: Optimized data flow architecture using clean, reactive stores managed via Zustand.
  • Polished User Experience: Features smooth layout transitions using Framer Motion and contextual state cues via native Toast notifications.
  • Responsive Fluid UI: Fully optimized layout structures built for seamless mobile, tablet, and desktop display variants with a native persistent Dark/Light mode toggle.

๐Ÿ“ธ Screenshots

Welcome Dashboard Overview

Dashboard

Transaction Management Panel

Expenses

Category Financial Analytics

Analytics

Budget Limit Allocation

Budgets


๐Ÿ’ป Tech Stack

Frontend & Core Utilities

  • React.js & Vite (Build Tool)
  • JavaScript (ES6+)
  • Tailwind CSS (Advanced modern interface layouts)
  • Zustand (Lightweight, centralized local state management)
  • React Router DOM & Lucide React (Navigation & iconography frameworks)
  • Framer Motion (Fluid layout animations)
  • Recharts (Interactive, performance-optimized data graph layers)

Backend, Database & Auth

  • Supabase (Relational Postgres hosting, row-level security policy sets, and Auth mechanisms)

Deployment

  • Vercel

๐Ÿ—๏ธ Architecture

Frontend (React + Zustand)
        โ†“
Supabase Auth
        โ†“
PostgreSQL Database
        โ†“
Analytics & Budget Calculations
        โ†“
Recharts Visualization Layer

โš™๏ธ How It Works

  1. Secure Session Validation: Supabase Auth verifies user states, mapping individual ledger accounts strictly to isolated relational unique IDs.
  2. Client-Side Store Mapping: Zustand instantiates centralized balance, ledger, and target parameters across runtime processes.
  3. Database Ledger Mutations: Adding or deleting transactions triggers seamless updates directly into the real-time Supabase SQL backing structure.
  4. Budget Evaluation: Local math processors intersect current expense aggregates against budget categories to calculate delta variances.
  5. Dynamic Data Composing: Recharts modules clean tracking inputs to display interactive cash-flow and saving diagrams natively on user feeds.

๐Ÿ› ๏ธ Installation & Local Setup

1. Clone the Repository

git clone https://github.com/harshita7126/Expensify.git
cd Expensify

2. Install Project Dependencies

npm install

3. Configure Environment Variables

Copy the existing template file to generate a local environment profile:

cp .env.example .env

Open the freshly created .env file and insert your exact Supabase credentials:

VITE_SUPABASE_URL=your_supabase_url_here
VITE_SUPABASE_ANON_KEY=your_supabase_anon_key_here

4. Database Setup Instructions

  1. Open your project dashboard container inside the Supabase SQL Editor.
  2. Open the file located locally at database/schema.sql.
  3. Copy the entire SQL script contents, paste them directly into your Supabase query window, and click Run to generate the required relational database schema and security configurations.

5. Run the Development Server

npm run dev

๐Ÿ“‚ Project Structure

Expensify
โ”‚
โ”œโ”€โ”€ database/            # Supabase SQL schema definitions and row-level policies
โ”œโ”€โ”€ public/              # Static public browser assets
โ”œโ”€โ”€ src/
โ”‚   โ”œโ”€โ”€ components/      # Reusable visual interface modules
โ”‚   โ”œโ”€โ”€ lib/             # Core setups, utilities, and client initializations
โ”‚   โ”œโ”€โ”€ pages/           # Base layout entry routes 
โ”‚   โ”œโ”€โ”€ store/           # Zustand state tracking definitions
โ”‚   โ”œโ”€โ”€ App.jsx          # Parent navigation layer routers
โ”‚   โ””โ”€โ”€ main.jsx         # Application process entry mountpoint
โ”‚
โ”œโ”€โ”€ .env.example
โ”œโ”€โ”€ package.json
โ”œโ”€โ”€ vite.config.js
โ””โ”€โ”€ README.md

๐Ÿ“Š Core Ledger Metrics

The ecosystem processes your personal financial parameters down into four specific matrices:

  • Liquidity Balance: Dynamic tracking summarizing your total calculated revenue subtracted against category costs.
  • Spending Trajectory Match: Live comparative graphs plotting your historical monthly expenditures against cash inflows.
  • Budget Proximity Ratios: Interactive processing layers warning users as aggregate category parameters approach limit scopes.
  • Category Density: Data mapping to visually highlight where your largest cost points occur.

๐Ÿ”ฎ Future Roadmap

  • Dynamic cross-format parsing models to export transactional statements into CSV/PDF sheets.
  • Automated recurring expense scheduling and monthly balance cycles.
  • Real-time text or email alerts as spending parameters exceed 90% budget caps.
  • Multi-currency validation systems with automated conversion updates.

๐Ÿ‘ฅ Author

Harshita Labba - Computer Science & Engineering Student


๐Ÿ“„ License

This project is licensed under the MIT License.

About

Personal finance dashboard for expense tracking, budget management, spending analytics, and financial insights using React, Supabase, PostgreSQL, and Recharts.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors