finds.dev← search

// the find

range-of-motion/budget

★ 1,068 · PHP · MIT · updated Dec 2024

Get a grip on your finances.

Budget is a self-hostable personal finance app built on Laravel, with a Vue front end and MySQL behind it. It's for people who want their transactions, tags and receipts on a server they control, though the maintainers also run a hosted version at usebudget.com.

Shared budgets are implemented, not just planned: there are space invites, a SpaceInvite model, and per-user API keys with their own middleware. The code is conventional Laravel (repositories, actions, per-model policies, factories for most models), so anyone who has worked in a Laravel app can find their way around quickly. Multi-currency is backed by a conversion_rates table that a scheduled job populates. The repo includes a PHPUnit config, a tests workflow, and a Docker Compose file that brings up MySQL alongside the app, which is more than most personal projects bother with.

The last push was December 2024, nearly two years ago, and the README shows its age: the queue section links to Laravel 7 docs and the build badge points at Travis CI, even though the repo has a GitHub Actions workflow. Self-hosting means a cron entry, a long-running queue worker or Supervisor, mail configuration, and running budget:install before anything works. The README's note that some features need the queue watched is easy to miss. Translation coverage is uneven: de and fr lack files that en has, such as models.php and reports.php, so parts of the UI will show English unless a fallback locale is configured.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →