v0.1.0 — First public release
expense-budget-tracker v0.1.0
First public release of an open-source, self-hosted expense and budget tracker with multi-currency reporting and a SQL API designed for AI agents.
Highlights
- Budgeting, balances, and transaction management UI (Next.js 16 + TypeScript)
- Multi-currency reporting with runtime FX conversion in Postgres
- Workspace-based data isolation via Postgres RLS
- SQL Query API (
POST /v1/sql) with API-key auth for machine clients and LLM agents - AWS CDK infrastructure for production deployment (ECS Fargate, RDS, ALB/Cognito, API Gateway/Lambda, WAF, monitoring)
- Daily exchange-rate ingestion worker (ECB, CBR, NBS/NBU sources)
Security model
- API keys are stored hashed (no plaintext storage)
- SQL API executes under the same RLS context model as the web app
- SQL API includes statement timeout + result limits + usage-plan throttling
- API keys can be revoked from Settings
Quick start
git clone https://github.com/kirill-markin/expense-budget-tracker.git
cd expense-budget-tracker
open -a Docker
make upThen open: http://localhost:3000
Known limitations (v0.1.0)
- No automated test suite is wired yet (
make testtarget currently references missingnpm testscripts) - Auth is intentionally minimal and deployment-mode dependent (
AUTH_MODE=nonefor local,AUTH_MODE=proxyfor production proxy/JWT setup) - In current auth model, each user works in a default workspace mapping
Documentation
- Deployment:
docs/deployment.md - AWS deployment:
infra/aws/README.md - Architecture:
docs/architecture.md
License
MIT