Budget is an open-source web application that helps you keep track of your finances.
You can use Budget by hosting it yourself, or using the instance hosted by us.
- Insertion and management of transactions
- Ability to organize transactions using tags
- Facilitate uploading and organizing of receipts
- Support for importing transactions (CSV format)
- Reports that visualize financials (showing weekly balance and most expensive tags, for example)
- Supports multiple currencies
- Available in multiple languages
- Weekly summary available through e-mail
- PHP 7.2.5 or higher
- HTTP server (for example Apache or NGINX)
- MySQL
- Composer
- Node.js
- Clone the repository (
git clone https://github.com/range-of-motion/budget.git
)- You should always check out a tag, since the
master
branch might not always be stable (git checkout TAG
)
- You should always check out a tag, since the
- Install dependencies (
composer install --no-dev -o
) - Run installation command (
php artisan budget:install
) - Configure additional services in
.env
(database or mail, for example) - Run migrations for database (
php artisan migrate
) - Head over to your list of crons (
crontab -e
) and add* * * * * cd /path-to-budget && php artisan schedule:run >> /dev/null 2>&1
Note that in order for certain features to work properly, the jobs queue needs to be watched. This can be done by either running php artisan queue:work
or using Supervisor.
You can run Budget using Docker. Spinning it up (docker-compose up
) will create 3 containers–for MySQL, PHP and NGINX.
Disclaimer–currently the Docker setup is missing cronjobs and the queue worker.