https://github.com/lineofflight/frankfurter
💱 Currency data API
https://github.com/lineofflight/frankfurter
api currency currency-api money ruby
Last synced: 5 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 (over 7 years ago)
- Default Branch: main
- Last Pushed: 2025-03-28T13:54:16.000Z (7 months ago)
- Last Synced: 2025-05-08T12:04:20.527Z (6 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.