Skip to content

hwennnn/velo

Repository files navigation

Netlify Status

Velo

A travel expense tracking application built with React and FastAPI, featuring multi-currency support and automated debt settlement calculations.

Features

  • Multi-currency expense tracking with real-time exchange rates
  • Fictional member management (add members before they join)
  • Optimal debt settlement algorithms
  • Mobile-first responsive design
  • OAuth authentication (Google, GitHub) via Supabase

Installation

Prerequisites

  • Python 3.11+
  • Node.js 18+
  • Supabase account

Setup

  1. Clone the repository
  2. Configure Supabase project with OAuth providers
  3. Set up environment variables
  4. Run the applications
# Backend
cd backend
cp .env.example .env  # Set up your environment variables
./start.sh

# Frontend
cd frontend
cp .env.example .env.local  # Set up your environment variables
npm install
npm run dev

Tech Stack

Backend

  • FastAPI
  • SQLModel
  • PostgreSQL
  • Supabase
  • Alembic
  • httpx
  • pytest

Frontend

  • React 19
  • TypeScript
  • Vite
  • Tailwind CSS
  • React Router
  • TanStack Query
  • Supabase
  • Zustand

Documentation

  • Backend - API endpoints, database schema, migrations
  • Frontend - Component architecture, routing, state management
  • Setup Guide - Detailed installation and configuration
  • Deployment - Production deployment options

Testing

# Backend tests
cd backend && pytest

# Frontend tests (planned)
cd frontend && npm test

Deployment

See DEPLOYMENT_GUIDE.md for production deployment guides.

License

MIT

About

Multi-currency travel expense tracker with automated debt settlement

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published