A Deno-based utility app that allows your existing database to directly integrating Madagascar's administrative boundaries data for all levels such as Province, Region, District, Commune, and Fokontany; also available as a CLI executable. It also includes tooling such as a REST API and a web GUI for visualizing and exploring the data onto a map.
# Madagascar Administrative Boundaries (Mada ADM)
A Deno-based utility app that allows your existing database to directly
incorporate **Madagascar's administrative boundaries data** for all levels such
as **Province**, **Region**, **District**, **Commune**, and **Fokontany**; also
available as a **CLI executable**. It also includes tooling such as a **REST
API** and a **web GUI** for **visualizing** and **exploring** the data onto a
**map**.
## Table of Contents
- Overview
- Getting Started
- Prerequisites
- Installation
- Testing
- Compiling
- Using the Compiled Executable
- Running CLI Tasks
- Local Execution (Deno)
- Docker Execution
- Database Support
- Fundamental Concepts & Architecture
- Worker Pipeline
- Batching & Efficiency
- Fault Tolerance: Redis vs In-Memory
- Database Schema Flexibility & Configuration
- Base configuration
- Prefixed table names configuration
- `isFkRepeated` set to `true`
- `isProvinceRepeated` set to `true`
- `isProvinceFkRepeated` set to `true`
- `hasGeojson` set to `true`
- Indexing & Collation
- Text Collation Summary
- CLI Commands & Usage
- Global Options & Environment Variables
- Common Options
- PostgreSQL Configuration
- MySQL Configuration
- SQLite Configuration
- MongoDB Configuration
- Commands
- Root / Index / Main command
- Query sub-command: `query`
- Set database configuration sub-command: `set-config`
- Clear database sub-command: `clear`
- Update a record's field sub-command: `update-field`
- REST API
- Map Viewer
- Data catalogs
- Current Status
- Known Issues & Future Improvements
- Progress Bar Rendering:
- Missing or Inaccurate datasets:
- Topological Data Inconsistencies:
- Full REST API
- Support for more database adapters
- License & Attribution
- Software License
- Data License & Attribution
- Requirements for Derived Works
## Getting Started
Follow these steps to set up the project locally.
### Prerequisites
1. **Git LFS**: This project uses Git Large File Storage (LFS) to manage the
`.ndjson` data fi …