💱 Currency data API
1.7k
Stars
167
Forks
3
Open issues
16
Contributors
AI Analysis
Frankfurter is an open-source currency exchange rates API that aggregates daily institutional forex data from multiple central banks and financial institutions worldwide. It serves developers and fintech applications needing reliable, self-hostable currency conversion and historical rate lookups. Best suited for developers building financial applications, currency converters, or systems requiring institutional-grade exchange data; not a general-purpose API service.
Inferred from signals mentioned in the README (tests, CI, type safety) — not a review of the actual code.
AI's overall editorial judgment — not an average of the bars above, can weigh other factors too.
Open-source currency API aggregating daily rates from central banks and institutional sources
Frankfurter is a self-hostable currency data API that pulls exchange rates from multiple institutional sources (central banks, FRED, etc.) rather than relying on a single provider. It targets developers who need reliable, transparent exchange rate data without vendor lock-in. The public API at api.frankfurter.dev provides free access; users can also self-host via Docker. Real-world adoption appears modest but concentrated among developers seeking an alternative to commercial FX APIs.
Created in March 2018, Frankfurter emerged as a response to limitations in existing currency APIs — seeking to aggregate data from authoritative institutional sources rather than commercial vendors. The project has remained under active maintenance for 8 years, suggesting sustained belief in the problem it solves.
GitHub stars grew from 1,638 baseline with 23 new stars in the last 7 days (approximately 1,200/year extrapolated rate). Growth appears steady but modest, suggesting a stable niche audience rather than rapid adoption. The recent push (2026-06-25) indicates active maintenance rather than dormancy. No surge events or viral adoption indicators visible in available metadata.
Adoption not verified in README. Public API endpoint (api.frankfurter.dev) is operational, indicating self-sustained production use by the maintainers. README mentions 'Show and Tell' discussions category and notes 'Built a library or tool with Frankfurter?' but provides no case studies, user counts, or deployment statistics. Enterprise adoption not evidenced.
Based on README: Rails-like Ruby application with SQLite backend, Docker containerization, and pluggable data provider agents (Bank Al-Maghrib, Banco de México, FRED, etc.). Appears designed for distributed deployment with stateful database persistence. Multiple optional API key integrations suggest an agent-based architecture for fetching from different sources.
Not documented in README. No mention of test suite, CI/CD pipeline, or coverage metrics.
Last push 2026-06-25 (4 days ago from evaluation date 2026-06-29) indicates active ongoing development. Ruby language choice suggests long-term maintenance compatibility. README includes deployment and contribution guidelines (AGENTS.md referenced), implying structured development process. No evidence of abandonment or critical bug backlogs in metadata.
ADOPT IF: you need a self-hosted FX data layer, prefer decentralized institutional sources over commercial vendors, can manage Docker/database operations, and accept modest performance/availability SLAs. AVOID IF: you require guaranteed high-availability SLAs, 24/7 support, or production-grade monitoring/alerting (likely not present). MONITOR IF: your application currently uses a commercial FX API and wants to evaluate long-term lock-in risk, or if you're building internal tooling where operational simplicity outweighs SaaS convenience.
Independent dimensions
Mainstream potential
3/10
Technical importance
6/10
Adoption evidence
3/10
- Single maintainer risk: no visible team structure in README; project continuity depends on one person or small group.
- Data freshness SLA unclear: README does not document update frequency, data lag, or guarantees around rate timeliness — critical for production FX systems.
- Operational burden: self-hosted model requires ongoing database maintenance, API key management for multiple providers, and backfill logic debugging.
- Limited real-world validation: adoption signals weak; unclear how many production systems depend on this, making reliability claims unverified.
- Provider API churn risk: depends on 6+ third-party central bank APIs; changes to their authentication or availability directly impact Frankfurter without centralized control.
Frankfurter will likely remain a stable, modestly-adopted niche tool for developers preferring self-hosted FX infrastructure. Unlikely to capture mainstream adoption unless (a) commercial FX APIs significantly raise prices/restrict terms, or (b) a major fintech/payments company adopts and promotes it. More probable path is slow growth as the default choice for privacy-conscious or cost-sensitive developers.
Explore similar
Newsletter
Get analyses like this every Monday
Free weekly digest of the most interesting open-source discoveries.
Languages
Information
- Website
- https://frankfurter.dev
- Language
- Ruby
- License
- MIT
- Last updated
- 2d ago
- Created
- 102mo ago
- Analyzed with
- anthropic/claude-haiku-4-5
Stars over time
Contributors over time
Top 100 contributors only — repos with more will plateau at 100.
Open issues
Open pull requests
No open pull requests.
Top contributors
Recent releases
Similar repos
faker-ruby/faker
Faker is a Ruby library that generates realistic fake data including names,...
fangzesheng/free-api
A curated repository that aggregates free APIs from various third-party...
| Repository | Stars | Week Δ | Language | Score | Updated |
|---|---|---|---|---|---|
|
|
1.7k | +21 | Ruby | 8/10 | 2d ago |
|
|
2.9k | — | Ruby | 8/10 | 3w ago |
|
|
1.3k | — | PHP | 8/10 | 3w ago |
|
|
11.6k | — | Ruby | 8/10 | 4w ago |
|
|
16.1k | — | — | 6/10 | 1w ago |
|
|
1.6k | — | Ruby | 7/10 | 3mo ago |
Money handles currency arithmetic and formatting within applications; Frankfurter provides live FX rate data. Complementary rather than competitive — Money often consumes FX data from sources like Frankfurter.
Frankfurter differentiates via decentralization (multiple institutional sources), self-hosting option, and no vendor lock-in. Trade-off: likely less optimized latency/availability than commercial SaaS, but lower cost and transparency.
Frankfurter aggregates these; users must integrate each separately without Frankfurter. Offers convenience at the cost of additional infrastructure dependency.
Similar free/freemium SaaS model. Frankfurter's self-hosting option and multi-source approach appeal to users avoiding SaaS dependencies, but these alternatives may have simpler onboarding.
Covers primarily EUR-based rates; Frankfurter aims for global coverage via multiple central banks. Use-case dependent: ECB sufficient if EUR-centric, Frankfurter better for multi-region.