Skip to content

A full-stack expense tracker built with Next.js, FastAPI, and Neon Postgres, featuring demo account login, data visualization, and CSV export.

Notifications You must be signed in to change notification settings

dnmore/expenz-dashboard

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

42 Commits
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿ’ฐ Expenz - Expense Tracker Dashboard

Expenz is a modern web application designed to help users track, analyze, and understand their financial activity with ease. It provides an intuitive dashboard showcasing income, expenses, budget and insight through an interactive chart. Two built-in demo accounts allow users to explore the full experience instantlyโ€”no signup or data entry required. A dedicated FastAPI service powers CSV export functionality for income and expense records.

Live Demo

โœจ Features

  • Instant Demo Access โ€” Log in with one of two demo accounts to explore the dashboard immediately.

  • Comprehensive Dashboard โ€” View total income, expenses, and budget summaries with dynamic data visualization.

  • Detailed Views โ€” Browse categorized income and expense entries.

  • CSV Export โ€” Export income and expense data directly via a FastAPI-powered backend.

  • Responsive Design โ€” Optimized for both desktop and mobile devices.

  • Smooth Loading Experience โ€” Skeleton loading states ensure a polished and fluid UX.

๐Ÿ› ๏ธ Tech Stack

Frontend

  • Next.js
  • React
  • shadcn/ui
  • lucide-react
  • framer-motion
  • tailwindcss
  • recharts
  • zod

Backend

  • Neon Database(PostgreSQL)

CSV Export Service (Python API)

  • FastAPI
  • uvicorn

โš™๏ธ Installation

  1. Clone the repository:

    git clone https://github.com/dnmore/expenz-dashboard.git
    cd expenz-dashboard
    
  2. Install dependencies Frontend

      cd frontend
      pnpm install
    

    Python Backend (CSV Export)

      cd services/csv-export
      pip install -r requirements.txt
    
  3. Set up environment variables

  • Create .env files in the project root for both the frontend and backend, and define necessary variables (e.g., database connection string, API keys).
  1. Run the application

Start the frontend

 cd frontend
 pnpm run dev

Start the Python Backend

 cd services/csv-export
 uvicorn api.main:app --reload
  1. Access the application

Once both servers are running, open your browser and visit: http://localhost:3000.

๐Ÿค Contributing

Contributions are welcome! Please:

  1. Fork the repository.
  2. Create a new branch (feature/your-feature-name).
  3. Commit changes with clear messages.
  4. Submit a pull request.

๐Ÿ“„ License

This project is licensed under the MIT License.

About

A full-stack expense tracker built with Next.js, FastAPI, and Neon Postgres, featuring demo account login, data visualization, and CSV export.

Resources

Stars

Watchers

Forks

Contributors 2

  •  
  •