Skip to content

Latest commit

 

History

History
113 lines (81 loc) · 3.4 KB

README.md

File metadata and controls

113 lines (81 loc) · 3.4 KB

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