Go to file
2020-05-02 15:42:09 +01:00
.github Revert to using ruby image 2020-05-02 15:42:09 +01:00
bin Work around ecb rate limiting 2020-04-02 14:38:07 +01:00
config Work around ecb rate limiting 2020-04-02 14:38:07 +01:00
db/migrate Denormalise database schema 2018-10-07 01:08:45 +01:00
lib Handle rounding edge case 2020-05-02 15:26:03 +01:00
spec Handle rounding edge case 2020-05-02 15:26:03 +01:00
.dockerignore Clean up ignores 2019-12-20 01:02:07 +00:00
.env.example Rebrand, serve HTML 2018-06-08 15:32:52 +01:00
.gitignore Clean up ignores 2019-12-20 01:02:07 +00:00
.rubocop_todo.yml Housekeeping 2020-05-02 15:13:50 +01:00
.rubocop.yml Housekeeping 2020-05-02 15:13:50 +01:00
.ruby-version Bump ruby to 2.7.1 2020-04-01 21:10:11 +01:00
app.json Add Deploy to Heroku button 2018-10-07 01:08:45 +01:00
CHANGELOG.md Handle rounding edge case 2020-05-02 15:26:03 +01:00
config.ru Rebrand, serve HTML 2018-06-08 15:32:52 +01:00
docker-compose.override.yml Revert "Fold back docker-compose configuration into single file" 2019-12-20 00:22:38 +00:00
docker-compose.prod.yml Shorten container names 2019-12-24 13:11:32 +00:00
docker-compose.yml Bump postgres to 12 2020-04-01 11:54:04 +01:00
Dockerfile Bump ruby to 2.7.1 2020-04-01 21:10:11 +01:00
Gemfile Housekeeping 2020-05-02 15:13:50 +01:00
Gemfile.lock Housekeeping 2020-05-02 15:13:50 +01:00
LICENSE Remove dates from license 2017-01-03 12:44:13 +00:00
limit_req.conf Repack app 2018-03-08 23:51:36 +00:00
Procfile Add Deploy to Heroku button 2018-10-07 01:08:45 +01:00
Rakefile Repack app 2018-03-08 23:51:36 +00:00
README.md Ditch codeclimate 2020-04-02 12:40:06 +01:00

Frankfurter

Build

Frankfurter is a free and open-source currency data API that tracks reference exchange rates published by the European Central Bank.

I host a public instance of the API at api.frankfurter.app.

Getting Started

Get the latest exchange rates.

GET /latest HTTP/1.1

Get rates for a past date.

GET /2000-01-03 HTTP/1.1

Get rates for a period.

GET /2010-01-01..2010-01-31 HTTP/1.1

For more examples, read the docs.

Deployment

Deploy

You can self-host Frankfurter with Heroku or Docker.

docker run -d -p 8080:8080 \
  -e "DATABASE_URL=<postgres_url>" \
  --name frankfurter hakanensari/frankfurter

Check out the website for a more detailed walkthrough.

Miscellaneous

Frankfurter was known as Fixer between 2012 and 2018. After selling the original domain, I relaunched under this name.