Skip to main content
  1. All Posts/

bdgt

Tools PHP

bdgt

Big finance tools in a small package

bdgt is a one-stop personal finance management app. Planned features:

  • Zero-based budgeting system
  • Bill management, calendar, and reminders
  • Account management/transaction history
  • Goal system with automatic monthly budgeting
  • Forecasting (net worth/account balance)
  • Debt and savings calculators
  • Interactive reports

Demo at https://bdgt.it
admin@example.com / admin

Index

Screenshots



Installation

Using PHP on your machine

This project requires PHP 7.4+, a MySQL database, Composer, and NPM.
If you already have PHP installed, you can use php artisan serve or Laravel Valet paired with an installed version of MySQL, or a tool like Takeout.

Click to expand local setup instructions
Run these commands to install dependencies and configure the app:

cp .env.example .env # edit the values in .env to suit your environment
composer install
php artisan key:generate
php artisan migrate
php artisan db:seed
npm install
npm run dev

A dummy account will be created with the following credentials which can be used to log in and preview the app:
Email: admin@example.com
Password: admin

Using Docker (Laravel Sail)

A Docker config is provided with all required dependencies using Laravel Sail.

Click to expand Docker instructions

  1. Copy the .env file and edit the values to suit your environment:

    cp .env.example .env
  2. If you have Composer installed, run composer install to install Laravel Sail. Otherwise, install using the following Docker command (see the docs):

    docker run --rm 
        -v $(pwd):/opt 
        -w /opt 
        laravelsail/php80-composer:latest 
        composer install
  3. Start the containers:

    # Add -d to run in the background
    ./vendor/bin/sail up
  4. Configure the app and build the frontend:

    ./vendor/bin/sail artisan key:generate
    ./vendor/bin/sail artisan migrate
    ./vendor/bin/sail artisan db:seed
    ./vendor/bin/sail npm install
    ./vendor/bin/sail npm run dev

The app will be available on http://localhost:[APP_PORT], depending on the APP_PORT you specified in your .env file (80 by default).
A dummy account will be created with the following credentials which can be used to log in and preview the app:
Email: admin@example.com
Password: admin

Building the frontend assets

If you make changes to JS or SCSS files, you’ll need to recompile the frontend assets.
npm run watch — to automatically compile changes