Fin is an open source backend API to track personal finances, made with Go 💸
Branch: master
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
migrations First commit Feb 9, 2019
test First commit Feb 9, 2019
vendor First commit Feb 9, 2019
.dockerignore Add Procfile to .dockerignore Feb 10, 2019
.gitignore Add .env and .vscode to .gitignore Feb 9, 2019
.travis.yml Add both testing and coverage Feb 10, 2019
Dockerfile Small fixes around, remove Heroku from .travis.yml Feb 10, 2019
LICENSE Add LICENSE Feb 9, 2019
Makefile Add Coveralls Feb 10, 2019
Procfile Add Procfile for Heroku Feb 10, 2019
README.md Improve README.md Feb 10, 2019
account.go First commit Feb 9, 2019
account_handlers.go First commit Feb 9, 2019
account_handlers_test.go First commit Feb 9, 2019
category.go First commit Feb 9, 2019
category_handlers.go First commit Feb 9, 2019
category_handlers_test.go First commit Feb 9, 2019
currency.go First commit Feb 9, 2019
currency_handlers.go First commit Feb 9, 2019
currency_handlers_test.go First commit Feb 9, 2019
docker-compose.yml First commit Feb 9, 2019
go.mod Add goveralls to go mod Feb 10, 2019
go.sum Add goveralls to go mod Feb 10, 2019
handlers_utils.go First commit Feb 9, 2019
main.go Get PORT from env var Feb 9, 2019
router.go First commit Feb 9, 2019
scrapper.go First commit Feb 9, 2019
scrapper_test.go First commit Feb 9, 2019
server.go First commit Feb 9, 2019
transaction.go First commit Feb 9, 2019
transaction_handlers.go First commit Feb 9, 2019
transaction_handlers_test.go First commit Feb 9, 2019
transaction_test.go First commit Feb 9, 2019

README.md

Fin

Fin is an open source backend API to track personal finances, made with Go. Very alpha.

Documentation at Postman Build Status Coverage Status

Considerations

I used this project to learn Go. Expect some messy code. Maybe some bugs. Definitely bugs.

So far this project has no "hosted version", so you need to deploy by yourself.

Using it

Set the environment variables:

$ export DB=postgres://user:pass@host:port/dbame
$ export DB_TEST=postgres://user:pass@host:port/dbame
$ export PORT=5000

Run it:

$ git clone git@github.com:jonatasbaldin/fin
$ make build
$ make run

With Docker:

$ docker pull jonatsabaldin/fin
$ docker run -e DB="postgres://user:pass@host:port/dbame" -e PORT=5000 -p 5000:5000 jonatasbaldin/fin

Contributing

Building the project and running tests. Requires Go v1.11 or later.

$ git clone git@github.com:jonatasbaldin/fin
$ make test
$ make build

You may want to tackle some issues.

Roadmap

  • Add User profiles
  • Add support for crypto currencies Rates
  • Add logs/telemetry
  • Add fin service to docker-compose.yml

License

MIT.