Nepal GeoSearch — OSM Location Resolution Infrastructure
Containerized microservices platform normalizing 1M+ OpenStreetMap records for Nepal into a structured REST API and embeddable location search widget
Project Overview
Nepal GeoSearch is a geospatial infrastructure platform built to ingest, normalize, and serve OpenStreetMap data for Nepal across a 6-service microservices architecture. Raw OSM planet tables are transformed into 4 clean domain schemas — admin_boundaries, places, named_roads, and POI — via normalization SQL, then annotated with Nepal's full 4-level administrative hierarchy (province, district, municipality, ward) covering all 77 districts and 753 local government units using PostGIS spatial enrichment. Location search is served through a REST API layer backed by Elasticsearch, with a Traefik reverse proxy routing between services. An embeddable React.js widget exposes structured location resolution to external consumers.
Specifications
Core Challenges
- [1]Designing health-aware startup dependencies across 6 services (REST API, async sync worker, Elasticsearch, PostGIS, Traefik, React widget)
- [2]Writing normalization SQL to transform raw OSM planet tables into 4 clean, query-optimized domain schemas
- [3]Annotating 1M+ location records with Nepal's full 4-level administrative hierarchy using PostGIS spatial joins
Key Outcomes & Outcomes
- ✓Normalized 1M+ OpenStreetMap geospatial records into structured, queryable domain schemas
- ✓Cut average spatial query execution time by ~70% using GiST, GIN, and B-tree indexes with pg_trgm trigram support
- ✓Covered all 77 districts and 753 local government units of Nepal with spatial hierarchy annotation
- ✓Delivered embeddable React.js location search widget consumable by external applications