Skip to content

Expense-Tracker Project with FastAPI Backend and React Frontend

License

Notifications You must be signed in to change notification settings

SahilSuman1011/Expense-Tracker-Project

Repository files navigation

Personal Expense Tracker 💰

A modern expense tracking application built with React, TypeScript, and FastAPI.

Project Structure

expense-tracker/
├── backend/               # FastAPI backend
│   ├── main.py           # Main FastAPI application
│   └── requirements.txt  # Python dependencies
└── frontend/             # React frontend
    ├── src/              # Source files
    ├── public/           # Static files
    ├── package.json      # Node.js dependencies
    └── .env             # Environment variables

✨ Features

  • 💳 Add, edit, and delete expenses
  • 📊 Interactive dashboard with expense trends
  • 🌓 Dark/Light mode toggle
  • 📥 Export expenses to CSV
  • 🔍 Advanced filtering and search
  • 📱 Fully responsive design
  • ⚡ Real-time updates

🛠️ Tech Stack

Frontend

  • React 18 with TypeScript
  • Tailwind CSS
  • shadcn/ui components
  • Recharts for data visualization
  • Framer Motion for animations

Backend

  • FastAPI (Python 3.8+)
  • Pydantic for data validation
  • SQLAlchemy (ready for database integration)
  • CORS middleware
  • Uvicorn server

🚀 Getting Started

Prerequisites

  • Python 3.8+
  • Node.js 18+
  • npm or yarn

Backend Setup

  1. Navigate to the backend directory:
cd backend
  1. Create and activate a Python virtual environment:
python -m venv venv
source venv/bin/activate  # On Windows use: venv\Scripts\activate
  1. Install Python dependencies:
pip install -r requirements.txt
  1. Start the FastAPI server:
uvicorn main:app --reload --port 8000

The API will be available at http://localhost:8000

Frontend Setup

  1. Navigate to the frontend directory:
cd frontend
  1. Install dependencies:
npm install  # or yarn install
  1. Start the development server:
npm run dev  # or yarn dev

The application will be available at http://localhost:5173

📝 API Documentation

FastAPI provides automatic interactive API documentation. Visit:

  • Swagger UI: http://localhost:8000/docs
  • ReDoc: http://localhost:8000/redoc

📄 License

This project is licensed under the MIT License.

About

Expense-Tracker Project with FastAPI Backend and React Frontend

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages