# 🗺️ Ethiopia Jurisdiction Explorer
An interactive browser-based tool for navigating Ethiopia's administrative hierarchy — from national level down to kebele — powered by the OneStop API.
---
## ✨ Features
| Feature | Description |
| ------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
| **Cascading Dropdowns** | Select a jurisdiction level-by-level (Region → Zone → Woreda → Kebele), with each dropdown auto-populated by the previous selection |
| **Interactive Tree View** | Browse all 748 nodes of the jurisdiction hierarchy as a collapsible tree with colour-coded level badges |
| **Smart Search** | Client-side text search across the full loaded tree, with debounce, breadcrumb path previews, and one-click navigation |
| **Linked State** | Selecting via search or dropdowns highlights the matching path in the tree (ancestors + selected node), auto-expands, and scrolls it into view |
| **Expand / Collapse All** | Toolbar buttons to open or close the entire tree at once |
---
## 🚀 Setup & Development
### Prerequisites
- **Node.js** ≥ 18
- **Yarn** (or npm — commands below use Yarn)
### Install
```bash
git clone
cd ethiopia-jurisdiction
yarn install
```
### Run locally
```bash
yarn dev
```
The app will be available at `
localhost`.
### Other scripts
```bash
yarn build # Production bundle → dist/
yarn preview # Serve the production build locally
yarn lint # ESLint across the whole project
yarn typecheck # TypeScript type-check without emitting files
```
---
## 🏗️ Architecture
```
src/ …