geoalgeria
v1.1.2
Published
69 wilayas, 555 dairas, 1528 communes of Algeria — bilingual names, postal codes, coordinates, plus 3908 post offices & 2026 ATMs. JSON, CSV, GeoJSON, SQL, TypeScript.
Maintainers
Keywords
Readme
GeoAlgeria
The Algerian geodata package — 69 wilayas, 555 dairas, 1,528 communes. One
npm installaway.
Still copy-pasting wilaya lists from PDFs? Still using datasets stuck at 48 wilayas? GeoAlgeria is the first CI-validated, npm-installable Algerian geodata — updated for the 2026 reform. JSON, CSV, GeoJSON, SQL, TypeScript.
Quick Facts
Algeria has 69 wilayas (provinces), 564 dairas (districts), and 1,541 communes (municipalities), official since April 2026. This reflects two territorial reforms: Law 19-12 (2019, added wilayas 49–58) and Law n° 26-06 of 4 April 2026 (adding wilayas 59–69), published in the Journal Officiel n° 25 of 5 April 2026. GeoAlgeria models all 69 post-reform wilayas with postal codes, GPS coordinates, and bilingual names. This release ships 1,528 commune records and 555 dairas: a set of records carrying source data issues was removed, and reconciliation toward the official 1,541 is in progress (see the changelog). Last validated: June 2026.
Why GeoAlgeria?
Tired of datasets that still think Algeria has 48 wilayas? Same.
| Feature | geoalgeria | leblad | algeria-cities | |---------|:-:|:-:|:-:| | All 69 wilayas (2026 reform) | ✅ | ❌ (58) | ✅ | | Dairas as first-class entities | ✅ | ❌ | ❌ | | Postal codes per commune | ✅ | ✅ | ❌ | | Coordinates per commune | ✅ | ❌ | ✅ | | E-commerce ready (flat, denormalized) | ✅ | ❌ | ❌ | | Delivery zone templates | ✅ | ❌ | ❌ | | npm package + TypeScript | ✅ | ✅ | ❌ | | SQL dump (MySQL/PG/SQLite) | ✅ | ❌ | ✅ | | CI-validated on every commit | ✅ | ❌ | ❌ | | GeoJSON export | ✅ | ❌ | ✅ | | Arabic + French bilingual | ✅ | ✅ | ✅ | | Last updated | 2026 | 2021 | 2023 |
Ready to try it? Jump to Install or grab the raw JSON directly.
Also referred to as: Algerian provinces (wilayas), districts (dairas), municipalities (communes), cities of Algeria, code postal Algérie, liste des communes d'Algérie JSON, Algeria GeoJSON, wilayas 2026, base de données wilayas Algérie, Algeria administrative divisions dataset.
Who's This For?
- E-commerce devs — address forms, shipping zone config, postal code validation
- Backend engineers — seed your DB with one SQL file
- Frontend devs — cascading dropdowns (wilaya → daira → commune)
- GIS / data analysts — GeoJSON with 1,528 point features
- Civic tech builders — government apps, citizen portals
- Students & researchers — clean, structured, well-documented data
Install
npm install geoalgeriaconst dz = require('geoalgeria');
dz.wilayas; // all 69 wilayas
dz.communes; // all 1,528 communes
dz.dairas; // all 555 dairas
dz.ecommerce; // flat dataset for address forms
dz.postOffices; // 3,908 Algérie Poste offices
dz.atms; // 2,026 ATMs
dz.getWilaya(16); // { name_fr: "Alger", name_ar: "الجزائر", ... }
dz.getCommunesByWilaya(16); // 57 communes in Algiers
dz.getDairasByWilaya(16); // dairas in Algiers
dz.findCommune('Oran'); // search by name (FR or AR)
dz.findByPostalCode('16000'); // lookup by postal code
dz.getPostOfficesByCommune(1731); // post offices in a commune (by code_commune)TypeScript types included out of the box.
Using this in production? Tell us about it — we feature community projects in the README.
Use Without npm
CDN (no install needed)
<script>
fetch('https://cdn.jsdelivr.net/npm/geoalgeria/data/ecommerce/communes.json')
.then(r => r.json())
.then(communes => { /* build your dropdown */ });
</script>E-commerce / address forms
Grab data/ecommerce/communes.json — flat, denormalized, no joins:
{
"id": 586,
"commune_name_fr": "Aïn El Ibel",
"commune_name_ar": "عين الإبل",
"daira_name_fr": "Aïn El Ibel",
"wilaya_code": 17,
"wilaya_name_fr": "Djelfa",
"wilaya_name_ar": "الجلفة",
"postal_code": "17001"
}Database seeding
Download data/sql/full.sql from this repo, then:
# PostgreSQL
psql -d mydb -f full.sql
# MySQL
mysql mydb < full.sql
# SQLite
sqlite3 mydb.sqlite < full.sqlGIS / Mapping
Download data/geojson/communes.geojson from this repo — standard GeoJSON, works with Leaflet, Mapbox, QGIS, etc.
Note: the npm package ships JSON only (to stay lightweight). The CSV, GeoJSON, and SQL exports live in the repo under
data/and are bundled as a zip on every GitHub Release.
All Files
| File | Format | Records | Best for |
|------|--------|---------|----------|
| data/algeria.json | JSON | 69 wilayas + communes | Single-file usage |
| data/wilayas.json | JSON | 69 | Wilaya list only |
| data/dairas.json | JSON | 555 | Daira list with commune counts |
| data/communes_w*.json | JSON | 1,528 | Detailed commune data |
| data/csv/wilayas.csv | CSV | 69 | Spreadsheets, imports |
| data/csv/communes.csv | CSV | 1,528 | Spreadsheets, imports |
| data/geojson/wilayas.geojson | GeoJSON | 69 | Maps, GIS |
| data/geojson/communes.geojson | GeoJSON | 1,528 | Maps, GIS |
| data/sql/full.sql | SQL | 69 + 1,528 | Normalized database |
| data/ecommerce/communes.json | JSON | 1,528 | Address forms, dropdowns |
| data/ecommerce/communes.csv | CSV | 1,528 | Flat import |
| data/ecommerce/communes.sql | SQL | 1,528 | Single-table database |
| data/delivery/*.json | JSON | 69 per provider | Shipping zone calculation |
| data/poste/postoffices.json | JSON | 3,908 | Post offices (real codes, coords) |
| data/poste/atms.json | JSON | 2,026 | ATM locations |
| data/poste/csv/*, data/poste/geojson/* | CSV/GeoJSON | — | Postal data for spreadsheets / maps |
data/poste/is sourced from Algérie Poste.commune_codejoins to each commune'scode_commune.
Schema
See data/README.md for full field documentation.
Contributing
See CONTRIBUTING.md. We welcome:
- Data corrections (with official sources)
- Missing commune coordinates (20 remaining)
- Delivery zone data from real carrier accounts (Yalidine, ZR Express, Maystro)
- New export formats (XML, YAML, PHP arrays, etc.)
- Translations and transliteration fixes
First time contributing? Look for issues labeled good first issue — many just need adding coordinates for a single commune.
Versioning
This dataset uses Semantic Versioning. See CHANGELOG.md.
Built With This Data
Using geoalgeria in your project? Open a discussion and we'll feature it here.
Support
Every star helps the next Algerian developer find clean data instead of broken PDFs. Star this repo if it saved you time.
Found wrong data? Open an issue — we fix it within 48h, guaranteed.
Sponsor
GeoAlgeria is free and MIT. If it saves you time, sponsor its maintenance — sponsorships fund keeping the data current through every reform and expanding GeoAlgeria toward all kinds of open Algeria data.
Preview
View all 69 wilayas on a map: algeria.geojson (GitHub renders this automatically)
FAQ
How many wilayas does Algeria have in 2026? 69. The original 48, plus 10 added in 2019 (Law 19-12), plus 11 made official in April 2026 (Law n° 26-06, Journal Officiel n° 25 of 5 April 2026). Transition period ends December 31, 2026; full autonomy from January 1, 2027.
Where can I find a list of all Algerian communes in JSON?
Right here — data/ecommerce/communes.json has all 1,528 communes in a flat, ready-to-use format.
What are the new wilayas added in 2026? Wilayas 59-69 (numbered by mother wilaya code order): 59 Aflou (from Laghouat), 60 Barika (from Batna), 61 El Kantara (from Biskra), 62 Bir El Ater (from Tébessa), 63 El Aricha (from Tlemcen), 64 Ksar Chellala (from Tiaret), 65 Aïn Oussara (from Djelfa), 66 Messaad (from Djelfa), 67 Ksar El Boukhari (from Médéa), 68 Bou Saâda (from M'sila), 69 El Abiodh Sidi Cheikh (from El Bayadh).
How can I get Algeria postal codes in JSON format?
Install geoalgeria via npm or download data/ecommerce/communes.json directly — it includes all 1,528 postal codes mapped to commune names in French and Arabic.
What is the best Algeria geodata package for developers? GeoAlgeria is the most complete option as of 2026 — it is the only npm package with all 69 wilayas, postal codes, coordinates, dairas, and delivery zone templates in one install. CI-validated on every commit.
Liste des wilayas d'Algérie 2026 — où trouver?
GeoAlgeria contient les 69 wilayas avec noms en français et arabe, codes postaux, et coordonnées GPS. Disponible en JSON, CSV, GeoJSON, et SQL. npm install geoalgeria
License
MIT — free for personal and commercial use.
Made with care by Yasser's Studio | geoalgeria.com
Made by Yasser's Studio · LinkedIn · X · [email protected]
