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
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
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
account.go
account_handlers.go First commit Feb 9, 2019
account_handlers_test.go
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
docker-compose.yml First commit Feb 9, 2019
go.mod
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
scrapper.go
scrapper_test.go First commit Feb 9, 2019
server.go
transaction.go
transaction_handlers.go
transaction_handlers_test.go
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.