Logo Lanfrica

AbdirahmanNomad/somali-digital-id-toolkit

Domain:

digital infrastructure

Record type:

software
Creator:
Abd
Host:
Open-source Somali Digital ID Readiness Toolkit for validating and simulating national ID data with privacy-preserving signed tokens. Built to accelerate digital ID adoption in Somalia. # Somali Digital ID Readiness Toolkit ## Table of Contents - Features - Quick Start - Usage - API Endpoints - Design Principles - Contribution - Roadmap - About the Author - License A **free and open-source toolkit** for simulating and validating Somali National ID data with privacy-preserving signed verification tokens. Designed to accelerate Somali digital identity adoption by providing developers, NGOs, and government teams a reliable, standards-aligned, offline-first platform for identity verification readiness — no paid APIs or infrastructure needed. --- ## Features - JSON Schema validation of Somali National ID fields based on official NIRA data - Persistent SQLite-backed session management storing ID submissions and signed results - Cryptographic signing of verification results using Ed25519 for trust and tamper-proof tokens - Multilingual support: English and Somali localized messages - Deterministic mock verification rules including expiry and encoded ID checksum validation - Sample Somali realistic test datasets accessible via API - Lightweight web UI for interactive testing and session management - Easy to extend with additional flows (biometrics, attestations) and integrations --- ## Quick Start ### Prerequisites - Python 3.9 or higher - Git (optional, for cloning) ### Installation git clone github.com cd somali-digital-id-toolkit python -m venv venv source venv/bin/activate # On Windows use venv\Scripts\activate pip install -r requirements.txt ### Run Locally The app will start on localhost Access the interactive API docs at localhost --- ## Usage 1. Open the web UI at localhost 2. Click **Start New Session** to generate a session ID 3. Paste Somali National ID JSON data (format example in `/samples` API) 4. Choose language (English or Somali) and submit to validate 5. View validation results and signed tokens --- ## API Endpoints | Endpo …