https://github.com/lineofflight/frankfurter
💱 Currency data API
https://github.com/lineofflight/frankfurter
api currency currency-api money ruby
Last synced: 12 months ago
JSON representation
💱 Currency data API
- Host: GitHub
- URL: https://github.com/lineofflight/frankfurter
- Owner: lineofflight
- License: mit
- Created: 2018-03-08T14:40:57.000Z (about 8 years ago)
- Default Branch: main
- Last Pushed: 2025-03-28T13:54:16.000Z (about 1 year ago)
- Last Synced: 2025-05-08T12:04:20.527Z (12 months ago)
- Topics: api, currency, currency-api, money, ruby
- Language: Ruby
- Homepage: https://frankfurter.dev
- Size: 3.04 MB
- Stars: 665
- Watchers: 16
- Forks: 104
- Open Issues: 27
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# Frankfurter
[](https://github.com/lineofflight/frankfurter/actions)
[Frankfurter](https://frankfurter.dev) is a free and open-source currency data API that tracks reference exchange rates published by institutional and non-commercial sources like the European Central Bank. Check the website for a detailed walkthrough.
The API is publicly available at .
## Deployment
### Using Docker
The simplest way to run Frankfurter locally is with Docker:
```bash
docker run -d -p 80:8080 lineofflight/frankfurter
```
Once the container is running, open your browser and go to `http://localhost`.
### âš¡ Using One-Click Deploy
| Cloud Provider | Deploy Button |
|----------------|---------------|
| AWS |
|
| DigitalOcean |
|
| Render |
|
Generated by DeployStack.io
## Libraries / Tools
- [beancount-exchangerates](https://github.com/xuhcc/beancount-exchangerates): a [Beancount](https://beancount.github.io/) price source plugin using this API
- [frankfurte-rs](https://github.com/Rolv-Apneseth/frankfurte-rs): Rust library and CLI to interface with this API
## Contributing
Frankfurter is built with Ruby. To contribute:
1. Fork.
2. Install dependencies with `bundle install`.
3. Run tests with `bundle exec rake`.
4. Push your changes to a feature branch.
5. Open a pull request.
## Roadmap
- [x] Migrate to SQLite
- [x] Add API versioning in path
- [ ] Multiple Data Sources
- [ ] Add GraphQL endpoint
- [ ] Deploy as a blockchain oracle
### Reporting Missing Currencies
If you notice a currency missing from our data, please open an issue and include a suggested source with the missing data. We're looking for non-commercial sources like the European Central Bank that publish current and historical daily rates at the end of each working day.