mirror of
https://github.com/hakanensari/frankfurter.git
synced 2024-11-25 04:22:28 +01:00
.github/workflows | ||
bin | ||
config | ||
db/migrate | ||
lib | ||
spec | ||
.dockerignore | ||
.env.example | ||
.gitignore | ||
.rubocop_todo.yml | ||
.rubocop.yml | ||
.ruby-version | ||
config.ru | ||
docker-compose.yml | ||
Dockerfile | ||
Gemfile | ||
Gemfile.lock | ||
LICENSE | ||
Rakefile | ||
README.md |
Frankfurter
Frankfurter is a free and open-source currency data API that tracks reference exchange rates published by the European Central Bank.
Deployment
Using Docker
The simplest way to run Frankfurter is with Docker:
docker run -d -p 8080:8080 \
-e "DATABASE_URL=<postgres_url>" \
--name frankfurter hakanensari/frankfurter
Using Docker Compose
For a complete setup including PostgreSQL:
- Copy the docker-compose.yml file
- Run:
docker compose up --wait
Contributing
Frankfurter is built with Ruby. To contribute:
- Fork.
- Install dependencies with
bundle install
. - Run tests with
bundle exec rake
. - Push your changes to a feature branch.
- Open a pull request.
Roadmap
-
Infrastructure
- Migrate from PostgreSQL to SQLite for simpler deployment.
- Add API versioning in URL path.
-
Data Sources
- Add support for multiple data providers.
- IMF
- Other central banks
- Add support for multiple data providers.
-
Features
- Add GraphQL endpoint.
- Deploy as a blockchain oracle.