• Stars
    star
    187
  • Rank 206,464 (Top 5 %)
  • Language
    PHP
  • License
    MIT License
  • Created almost 10 years ago
  • Updated almost 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Big finance tools in a small package

bdgt

build status

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
[email protected] / admin

Index

Screenshots

screenshot: bills page

screenshot: goals page

screenshot: reports

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: [email protected]
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: [email protected]
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