Logo Lanfrica

omartood/somalia-geo

Domain:

geospatial

Record type:

software
Creator:
oma
Host:
A lightweight JavaScript library and CLI tool for Somalia's administrative divisions and geographic data. Get regions, districts, cities, and their relationships with a simple API. # Somalia Geo πŸ‡ΈπŸ‡΄ A lightweight JavaScript library and CLI tool for Somalia's administrative divisions and geographic data. Get regions, districts, cities, and their relationships with a simple API. ## Features - πŸ—ΊοΈ **Complete coverage**: 18 regions, 100+ districts and cities - πŸ” **Smart search**: Find places by name or aliases with fuzzy matching - 🎯 **Advanced filtering**: Filter by type, region, population, area, and more - πŸ—οΈ **Hierarchical data**: Navigate parent-child relationships - πŸ“ **Distance calculations**: Find nearest places (when coordinates available) - πŸ“Š **Data statistics**: Get insights about regions, populations, and coverage - πŸ–₯️ **Enhanced CLI**: Powerful command-line interface with advanced features - πŸ“¦ **Lightweight**: Minimal dependencies, fast loading - πŸ”§ **TypeScript support**: Full type definitions included - πŸš€ **Fuzzy search**: Typo-tolerant search powered by Fuse.js ## Installation ```bash npm install somali-geo ``` Or use globally for CLI access: ```bash npm install -g somali-geo ``` ## Quick Start ### JavaScript API ```javascript const { listRegions, search, fuzzySearch, filter, getByCode, listChildren, getStats, getLargestByPopulation } = require("somali-geo"); // Get all regions const regions = listRegions(); console.log(regions.length); // 18 // Search for places (exact match) const results = search("Bosaso"); console.log(results[0].name); // "Bosaso" // Fuzzy search (typo-tolerant) const fuzzyResults = fuzzySearch("Bosasso", 5); // Finds "Bosaso" console.log(fuzzyResults[0].name); // "Bosaso" // Advanced filtering const districts = filter({ type: 'district', region: 'SO-BN', limit: 5 }); // Get place by code const awdal = getByCode("SO-AW"); console.log(awdal.name); // "Awdal" // Get statistics const stats = getStats(); console.log(`Total places: ${stats.total}`); // 135 ``` ### CLI Usage ```bash # Basic commands somaligeo regions # List all regions somaligeo search Mogadishu # Search …

Languages

Licenses