DE

$ ./fintrack self-host

A personal finance tracker that runs on your own server

For people who want a clear view of their money without handing their bank data to another app. Self-host it with Docker or any Node.js host and a PostgreSQL database.

FinTrack screenshot

$ cat features.md

  • Track several bank accounts and cards, each in its own currency, and log income, expenses and transfers.
  • Dashboard with total balance, six months of income vs. expenses, and spending by category.
  • Categories, a monthly budget per category, and recurring payments you log with one click.
  • Import PDF bank statements with a built-in parser (no AI service): transactions are categorised and duplicates skipped. Export everything to CSV.
  • Optional open-banking sync via TrueLayer (sandbox or live), on demand or daily, with your own developer credentials.
  • Login per user; your financial data stays in your own PostgreSQL database.

$ cat why.md

I wanted to see where my money goes without giving yet another company access to my bank account. FinTrack started as my own tracker; this is the cleaned-up version anyone can run.

$ self-host-it

Requirements
Docker with Compose, or Node.js 20+ and PostgreSQL 13+ (a free Neon database works). Minimum config: DATABASE_URL, NEXTAUTH_SECRET, NEXTAUTH_URL.
Built with
Next.js, PostgreSQL
License
MIT

The repository goes public on GitHub soon. Until then, ask me for the code and I'll send you access.

Get the source