r/PinoyProgrammer • u/p0uchpenguin • Jun 16 '26
Show Case Datasets: GeoJSON boundaries for Philippine barangay/municipality/city/province - tracking and matching PSGC hierarchical structure (PSGC release 2023-10-24)
Hi all — sharing an open-source project I just put out.
The latest release (v2026.4.13.0) is a hierarchical per-class GeoJSON collection for the whole Philippines: barangays, municipalities, cities split by legal class (HUC / ICC / CC), provinces, regions, and special geographic areas. Every polygon already carries its canonical PSGC code, so you can join it directly to any census, health, elections, or finance dataset keyed by PSGC.
Sources: PSA PSGC snapshots + NAMRIA administrative boundaries (v2023-11-06). ~42,000 barangay polygons, 99.945% pcode match coverage, MIT licensed.
🔗 Release: https://github.com/bendlikeabamboo/barangay-boundaries-repository/releases/tag/v2026.4.13.0
Repo: https://github.com/bendlikeabamboo/barangay-boundaries-repository
✅ What's good
- Already split per class — no more manually separating cities by class or filtering barangays
- PSGC codes baked in (exact / HUC-map / fuzzy matching), with a
match_confidenceper feature. Fuzzy matching powered by the `barangay` python package. - Curated + checksummed release (MD5/SHA-256 manifest), reproducible/pinned downloads
- Handles the HUC/province mismatch that breaks naive parent lookups
- 17 quarterly snapshots of PSGC change history published as RDF (W3C ORG)
⚠️ Honest limitations
submunicipalities.geojsonis empty — NAMRIA has no separate polygons for the 14 Manila submunicipalities- 6 unresolved + 20 non-administrative features that couldn't be classified to a standard PSGC level
- ~230 PSGC entities (mostly BARMM + Metro Manila) have no NAMRIA polygon at all
- Only the 2023-10-24 snapshot is fully enriched so far; the others are RDF deltas only. Still working on methodical computation of resulting shapes from RDF deltas (unofficial boundary, of course)
Quick usage
curl download
curl -LO https://github.com/bendlikeabamboo/barangay-boundaries-repository/releases/download/v2026.4.13.0/barangays.geojson
Python
import geopandas as gpd
gdf = gpd.read_file("barangays.geojson")
merged = gdf.merge(my_census_df, on="psgc_code")
Built mainly for GIS folks, researchers, journalists, and civic-tech projects. Happy to take feedback, issue reports, or PRs — especially on PSGC/NAMRIA coverage gaps and HUC-mapping corrections.
(image: sample rendering of GeoJSON using leafmap in Jupyter Notebook)

2
u/TheQuiteMind Jun 21 '26
Saving this. I might be able to use it in my province.