Thrifty

Simple monthly income and expenses web application

100 stars 5 forks last commit first released BSD-2-Clause

Actively maintained

Last commit 3 Apr 2026.

Thrifty is a minimal web application for tracking monthly income and expenses. It provides a straightforward UI for adding, editing, and deleting income/expense entries and exposes a small Go API with Swagger documentation.

Key Features

  • Add, edit, and delete income and expense entries through a SvelteKit UI.
  • Two-row layout for income and expenses with responsive collapse to a single column on small screens.
  • API implemented in Go with OpenAPI/Swagger documentation available at the API's swagger endpoint.
  • Currency configurable via environment variable to display different ISO currency symbols.
  • Supports SVG icons for categories/entries and stores data in a local SQLite database (docker volume by default).
  • Distributed as Docker images and runnable via docker-compose; builds provided for amd64 and arm64.
  • Development-friendly: frontend uses pnpm (Node) and SvelteKit; backend is a Go module with optional Swag tooling for generating docs.

Use Cases

  • Personal monthly budgeting and quick cash-flow overviews for individuals.
  • Lightweight self-hosted finance tracker for households or small teams that do not require advanced accounting features.
  • Developer/demo projects where a simple full-stack example (SvelteKit + Go + SQLite + Docker) is needed.

Limitations and Considerations

  • Intentionally minimal feature set: not designed for detailed transaction categorization, multi-account reconciliation, or full bookkeeping.
  • No built-in user authentication or multi-tenant/multi-user account management in the default setup.
  • Uses SQLite for storage by default, which limits horizontal scaling and concurrent write-heavy workloads compared with server-grade databases.

Thrifty is best suited for users who want a simple, self-hosted personal finance tracker or a compact full-stack reference app. It prioritizes simplicity and ease of deployment over advanced accounting features.

Categories:

Tags:

Tech Stack:

Share:

Similar to Thrifty

Akaunting logo

Akaunting

Online accounting software for small businesses and freelancers

10.1k
3k
Last commit

Self-hostable online accounting software to manage invoices, expenses, payments, and cash flow for small businesses and freelancers.

Actively maintained
Alternative to:
Akaunting Cloud logo
Akaunting Cloud
+13
Wallos logo

Wallos

Open-source self-hosted personal subscription and expense tracker

8.4k
419
Last commit

Wallos is a self-hostable web app for tracking recurring subscriptions, multi-currency expenses, notifications and simple analytics for household finances.

GPL-3.0Actively maintained
Alternative to:
TrackMySubs logo
TrackMySubs
+19
SQLPage logo

SQLPage

SQL-only web app builder that generates UI from SQL queries

2.5k
177
Last commit

SQLPage is a fast SQL-only web app builder that turns .sql files into interactive web pages and APIs on top of your existing database.

MITActively maintained
Alternative to:
Retool logo
Retool
+19

Workout Tracker

Self-hosted web app for tracking GPX-based workouts and stats

1.2k
51
Last commit

Self-hosted workout tracking web app for GPX/TCX/FIT activities with maps, stats, heatmaps, equipment tracking, and an API for automated uploads and syncing.

Actively maintained
Alternative to:
Hevy logo
Hevy
+3
Firefly III logo

Firefly III

Self-hosted personal finance manager with budgets, reports, and API.

24.4k
2.3k
Last commit

Open-source, self-hosted personal finance manager for tracking expenses, budgets, and reports with a REST API.

AGPL-3.0Actively maintained
Alternative to:
Mint (Intuit Mint) logo
Mint (Intuit Mint)
+17
Datasette logo

Datasette

Explore and publish SQLite data as a web UI and JSON API

11.4k
901
Last commit

Open source tool to publish SQLite databases as an interactive website with a JSON API, with a powerful plugin system for search, auth, and customization.

Apache-2.0Actively maintained
Alternative to:
Directus Cloud logo
Directus Cloud
+10