Skip to content
A personal budget app
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

Budget App

Title under development. It is an envelope style budgeting app to help users manage their money and meet savings goals.


  • Savings goals
  • Envelopes for allocating funds
  • Expense tracking
  • Cool looking graphs

Technical Design Notes

The client app will be built for mobile (it'll still work on desktop, it'll just look a bit odd). Rather than use Apache Cordova, I've decided to try making a progressive web app.


A high fidelity mockup can be viewed here. This is still under development and will probably change once I begin to build the client app.

API Documentation

The API specification can be found here. It was built using Postman. This is under active development as I am currently building the server. The API spec for the current release will be fully documented in the server readme (to keep this document clean and concise).

Database schema

The ER diagram/ database schema can be found here. It was built in SqlDBM. This is also subject to possible changes, although I'm confident that it's basically correct and complete.


At the moment this project has yet to reach a working pre-alpha release. The client app is currently just boilerplate, as I'm working on the server first.

To test the app (once I actually add some code), clone the repository and run the following commands

git clone
cd budget-app
npm install

Edit the (currently non existant) config.js file to point the api calls to whatever localhost address you're running the server on. You'll need to setup the server and have it running for the app to work. The server can be found here.


If you configured the app correctly then you can test it in your browser of choice (firefox ftw)

npm run serve


  • Vue
  • Vue Router
  • Vuex


Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Please make sure to update tests as appropriate.



You can’t perform that action at this time.