A simple budget tracker to keep track of your incoming and outgoing expenses per month as well as statistics about your daily available money. Besides a web-frontend which is also usable on a mobile device it provides a comfortable REST API for all your command-line magic.
All features that I need are implemented. Open an issue if you have the need for an additional feature, or even better, provide a pull request :-).
In the following we show a screenshot of the current mobile user interface with fake data (i.e. everything is positive, no expenses, ...).
Note that you should clone this repository in your
$GOPATH/src/github.com/mlesniak/budget-tracker. In addition, you should have installed go-bindata, e.g. using
go get -u github.com/jteeuwen/go-bindata/...
make to build, hence a
should suffice. To generate docker images for two instances proxied by nginx, use
to generate the docker images budget/nginx and budget/core. Adapt default.conf to provide more instances.
- Backend: Go(lang)
- Frontend: Vuejs + Bootstrap
Note that currently no particular frontend packaging system is used, e.g. nothing like webpack and co.
I will be guided by the following principles
- Open Source everything
- Be open to suggestions
- Write idiomatic go code
- Be pragmatic about testing, but try to test everything
- Do not over-engineer
Since the cookie is (currently) submitted in plaintext, at least a HTTPS connection is mandatory. To generate the necessary server key, use
openssl genrsa -out server.key 2048
To generate the corresponding certificate, use
openssl req -new -x509 -sha256 -key server.key -out server.crt -days 3650
The source code is licensed under the Apache license