Dinar Échange icon

Dinar Échange

Algerian dinar exchange rates. Parallel market and official, side by side.

FlutterDartAWS LambdaPythonFirebaseBeautifulSoup
v1.4.8 20 releases 3 languages
Currency rates screen showing parallel market buy and sell prices
Currency converter with live parallel market rates
Rate trends chart showing dinar exchange rate history
Rates Converter Trends

Algeria has two exchange rates. The official one the government publishes, and the parallel market rate that everyone actually uses. The gap between them is significant and it changes daily. There's no official API for the parallel rate. It lives on informal websites and word of mouth.

A friend wanted a simple way to check it. Most exchange rate apps look like financial terminals, numbers and jargon everywhere. He just wanted to know: if I have 100 euros, how many dinars do I get today?

So I built it. A Flutter app with a Python backend on AWS Lambda that scrapes multiple sources every morning at 8am Algiers time. Each source is its own Lambda function, all returning the same data shape. Freshest data wins. If one source goes down, the others keep working.

The app shows both rates side by side. Pin your currencies, drag to reorder, see trends over time. Works in English, Arabic, and French. Caches everything locally so it works even with spotty internet, which matters in Algeria.

Read the full story

How it works

Data pipeline

EventBridge triggers a main Lambda daily at 8am. It invokes separate scraper Lambdas, each hitting a different source. All share the same contract. First valid response wins. Core currencies (EUR, USD, GBP, etc.) come from scrapers. Every other currency is derived by cross-referencing the USD parallel rate against a public exchange rate API. Approximate but good enough, ±3 dinars.

Storage

Firebase Firestore. Daily rates keyed by date. Two-year trend history per currency, trimmed on each update. Separate collections for parallel and official rates.

The app

Flutter with Provider for state management. Cache-first with 7-day offline fallback. Anonymous Firebase auth with App Check so there's no account creation needed. Push notifications in the user's chosen language via FCM topic subscriptions. Ad frequency controlled server-side through Remote Config.

Related posts

Available on Android. Open source.