Finances
A comprehensive personal finance management application built with TypeScript.
Overview
A full-stack TypeScript personal finance management application that helps users track their financial health with multi-account support, household expense sharing, and automated transfer suggestions.
Tech Stack
- Frontend: React 18 + TypeScript + Vite + TailwindCSS
- Backend: Node.js + Express + TypeScript
- Database: PostgreSQL with Prisma ORM
- Deployment: Docker Compose
Key Features
- Multi-tenant Architecture: Header-based authentication with user isolation
- Account Management: Track multiple financial accounts (checking, savings, etc.)
- Income & Expense Tracking: Recurring payments with flexible scheduling
- Household Management: Shared financial tracking for families/roommates
- Transfer Suggestions: Automated recommendations based on paydays
- Dashboard: Upcoming payments and budget overview
Architecture
- Authentication via
X-User-IDheaders (designed for Ory Oathkeeper proxy) - Development mode includes user switching for testing
- Real-time data with TanStack Query
- Secure API with input validation and sanitization
Development
# Frontend
cd client && npm run dev
# Backend
cd server && npm run dev
# Docker
docker-compose up