Logo Lanfrica

BossBele/tan-ids

Domain:

digital infrastructure

Record type:

software
Creator:
Bos
Host:
Tanzania common ID Card patterns # tan-ids `tan-ids` is a simple utility for validating and identifying Tanzanian identification numbers, including National ID (NIDA), Voter ID (KURA), Driver's License (LESENI), Passport (PASIPOTI), and Zanzibar Resident ID (ZAN ID). ## Installation You can install `tan-ids` via npm: ```sh npm install tan-ids ``` ## Usage ### Importing the Module ```javascript import ID_TYPES, { matchIdType } from 'tan-ids'; ``` ### Validating and Identifying an ID ```javascript const idNumber = 'T1234-5678-901-2'; const idType = matchIdType(idNumber); if (idType) { console.log(`ID Type: ${idType.name} (${idType.code})`); } else { console.log('Invalid ID number'); } ``` ### List of Supported ID Types The package includes the following Tanzanian ID types: | Name | Code | Example Format | |-------------------------------------|--------|----------------------| | Kitambulisho cha Taifa (National ID) | NIDA | 12345678-12345-12345-12 | | Kitambulisho cha Mpiga Kura (Voter ID) | KURA | T1234-5678-901-2 | | Leseni ya Udereva (Driver's License) | LESENI | 1234567890 | | Hati ya Kusafiria (Passport) | PASIPOTI | AB123456 | | Kitambulisho cha Mkazi wa Zanzibar | ZAN ID | 123456789 | ## API ### `matchIdType(idNumber: string): ID_TYPE | null` - Takes an ID number as input (string) and returns the corresponding ID type if valid, otherwise returns `null`. - The function automatically removes spaces and dashes before matching. ### `ID_TYPES` - An array of ID type objects, each containing: - `name`: The full name of the ID type. - `code`: A short code representing the ID type. - `pattern`: A regex pattern for validation. - `readable_pattern`: A human-readable format pattern. ## License MIT