Self-Hosting Guide

Requirements

  • Docker and Docker Compose
  • Postgres 18 (included in the Compose file)

Quick Start

git clone https://github.com/kirill-markin/expense-budget-tracker.git
cd expense-budget-tracker
cp .env.example .env
make up

This starts Postgres, runs migrations, and launches the web app at http://localhost:3000.

Configuration

Copy .env.example to .env and adjust:

  • DATABASE_URL — Postgres connection string
  • AUTH_MODEnone for local use (no login), cognito for multi-user with email OTP

Updating

git pull
make up

Docker Compose will rebuild and re-run migrations automatically.

AWS Deployment

For production deployment on AWS (ECS Fargate + RDS + ALB + Cognito), see the AWS CDK guide.