@geoalgeria/culture
v1.0.0
Published
Algeria's cultural atlas — protected heritage sites, museums, theatres, libraries and cultural establishments (maisons & palais de culture, cinemas, culture directorates, arts schools) from the Ministry of Culture's Patrimoine Culturel portal, bilingual F
Downloads
91
Maintainers
Readme
@geoalgeria/culture
Algeria's cultural atlas — as data you can install.
1,083 cultural places across 66 of Algeria's 69 wilayas — protected heritage sites, museums, theatres, libraries and cultural establishments (maisons & palais de la culture, cinemas, culture directorates, arts schools) from the Ministry of Culture's Cartes du Patrimoine Culturel Algérien atlas, 100% bilingual French/Arabic and fully geocoded (every place carries a source coordinate). Shipped as JSON, CSV, GeoJSON, and TypeScript. Part of GeoAlgeria.
npm install @geoalgeria/cultureimport culture from "@geoalgeria/culture";
const all = culture.culture(); // 1,083 cultural places
// Museums in a wilaya (joins GeoAlgeria's wilaya_code)
const museumsAlger = all.filter((p) => p.wilaya_code === "16" && p.type === "museum");
// Just the protected heritage sites, ready to map
const heritage = all.filter((p) => p.category === "heritage");
// Places with a 360° virtual tour
const tours = all.filter((p) => p.has_virtual_tour);What you can build
- Cultural maps & nearest-place search — every one of the 1,083 places has coordinates, ready for a map or a "what's near me" feature.
- Bilingual cultural directories — French and Arabic names, official type and wilaya for every place; filter heritage vs. operating establishments.
- Heritage & tourism apps — protected sites, museums and 360° virtual tours, linked to commune/wilaya for routing and coverage analysis.
What's inside
| Dataset | Count | Coordinates | Notes | | --- | --- | --- | --- | | Cultural places | 1,083 | 1,083 geocoded | 66 wilayas, 100% bilingual, 22 with 360° tours |
By category
| Category | Count | Meaning |
| --- | --- | --- |
| heritage | 943 | protected sites, museums, theatres, libraries |
| establishment | 140 | operating cultural venues & directorates |
By type
| Type | Count | Meaning |
| --- | --- | --- |
| protected-cultural-property | 580 | Bien culturel protégé — protected monument/site |
| library | 257 | Bibliothèque — public reading library |
| museum | 48 | Musée — museum |
| theatre | 45 | Théâtre — theatre |
| museum-moudjahid | 13 | Musée du Moudjahid — museum of the war of independence |
| cultural-house | 51 | Maison de la culture |
| cultural-directorate | 33 | Direction de la culture — wilaya culture directorate/office |
| cinema | 20 | Salle de cinéma — cinema / cinematheque |
| cultural-center | 15 | Centre culturel — cultural / research centre |
| arts-school | 15 | École d'art — fine-arts school / conservatory |
| cultural-palace | 6 | Palais de la culture |
The atlas is official; treat the coordinates as best-effort. Names, type, coordinates and the 360° flag come from the Ministry of Culture's portal. Wilaya is exact; commune is derived (see Source & method). Counts move as the portal is edited; each rebuild reflects its current state.
Formats
The npm package ships the JSON (importable directly):
import culture from "@geoalgeria/culture/data/culture.json" with { type: "json" };
// or via CDN, no install:
// https://cdn.jsdelivr.net/npm/@geoalgeria/culture/data/culture.jsonThe loaders and record shapes are fully typed — TypeScript definitions ship in the package:
import culture, { type CulturalSite } from "@geoalgeria/culture";
const all: CulturalSite[] = culture.culture();CSV and GeoJSON are in the repo under data/ and bundled in every
GitHub Release:
data/
culture.json # 1,083 cultural places (array)
metadata.json # sources, counts, coverage, generated_at
csv/culture.csv # repo + Release bundle
geojson/culture.geojson # Point features (every record)Record shape
{
"id": "16-museum-03",
"name": "Musée national Public d'art moderne et contemporain",
"name_ar": "المتحف العمومي الوطني للفن الحديث و المعاصر",
"name_fr": "Musée national Public d'art moderne et contemporain",
"type": "museum",
"category": "heritage",
"type_label_fr": "Musée",
"type_label_ar": "متحف",
"has_virtual_tour": true,
"wilaya": "Alger",
"wilaya_ar": "الجزائر",
"wilaya_code": "16",
"commune": "Casbah",
"commune_code": 1607,
"source": "patrimoineculturel",
"geo_precision": "source_point",
"url": "https://cartes.patrimoineculturelalgerien.org/fr/node/101",
"node_id_fr": 101,
"node_id_ar": 817,
"slug": "musee-national-public-d-art-moderne-et-contemporain",
"lat": 36.777301,
"lng": 3.057572
}id is a stable {wilaya_code}-{type_code}-{seq} key synthesized by GeoAlgeria.
name is the French name where available, else Arabic. type is the place's
layer on the portal; category groups the 11 types into heritage vs.
establishment. has_virtual_tour is true for the 22 places with a 360° tour.
geo_precision is "source_point" for every record — the portal publishes a
coordinate for each place.
Wilaya is exact; commune is derived. The portal still files some places under pre-2019 wilaya codes; GeoAlgeria rescopes each place to the current 69-wilaya scheme by matching its coordinate to the nearest
geoalgeriacommune centroid (which also yieldscommune/commune_code). Commune is best-effort (the flagship ships centroids, not boundary polygons).
Need the administrative divisions too?
For wilayas, dairas, and communes, use the main
geoalgeria package — it's how
you turn a place's commune_code into a polygon or centroid. Use
@geoalgeria/culture when you only need the cultural places.
Source & method
Run npm run fetch to regenerate every output. It:
- reads the curated, bilingual cultural atlas (assembled and translated from the
Ministry of Culture's
cartes.patrimoineculturelalgerien.orgportal — the portal's French and Arabic catalogs are disjoint node sets, unioned by coordinate proximity and translated to fill the bilingual gaps); - rescopes each place to the current 69-wilaya scheme and attaches a
commune/commune_codeby matching its coordinate to the nearestgeoalgeriacommune centroid; - assigns stable ids, drops exact duplicate nodes, and emits JSON, CSV, GeoJSON and metadata.
The curated source and extraction notes are under
research/patrimoine/.
License & attribution
Package code is MIT. The data is a factual public listing from
the Ministry of Culture's cultural-heritage portal (names, types, coordinates
and 360° tours as published). Commune/wilaya linkage is derived from the
geoalgeria administrative dataset.
Verify against official sources for authoritative information. This dataset is provided for reference and to power GeoAlgeria.
API docs & field reference → · Browse all packages →
Made by Yasser's Studio · LinkedIn · X · [email protected]
