id-number
v0.2.2
Published
JavaScript ID Number Validator
Downloads
3
Readme
id-number
: JavaScript ID Number Toolkit
JavaScript ID Number Toolkit is a collection of validators of identity document number for JavaScript applications.
Usage
Installation
You can install IDNumber by
directly import in browser
<script src="IDNumber.js"></script> <!-- Please edit the URL above. -->
A CDN for this file is available at:
https://unpkg.com/id-number/dist/browser/IDNumber.js
using in node.js or webpack
The library is available at NPM with name
id-number
.You can import it via require.
const IDNumber = require('id-number');
Or in ES6 style.
import IDNumber from 'id-number';
ID Number Validation
const validator = IDNumber.getValidator('SG', 'NRIC');
const result = validator('S0980292D');
And the result is in format:
{
'success': true or false,
'reason': string if the result is false
}
ID Number Generation
const generator = IDNumber.getValidator('CN', 'ID');
const result = generator();
And the result is in format:
{
'value': 466311201110053638,
'extra': {"province":"海南","birthday":"2011-10-05","gender":"Male"}
}
Available Validators
| Country | Document | |:-------:|:--------:| | SG (Singapore) | NRIC | | TW (Taiwan) | ID (身份證字號) | | CN (China) | ID (居民身份证号码) |
Development
To build: npm run build
To test: npm test
Add support for new identity documentations
Step 1: Write the validator / generator in TypeScript in the directory src/providers/<name>.ts
.
The validator shall be a function returning a InternalValidateResult
.
Step 2: Register the validator / generator in src/IDNumber.ts
Step 3: Write test cases at src/<name>.spec.ts
.
Step 4: Send a pull request to this repository.
Thank you for the contributions.
Demo Website
The source code for demo website (id-number.dreamrunner.space) locates
at the demo
folder.
To deploy, go into demo
folder and type yarn deploy
if you have
permission.
Bonus
We have a very good wiki that explain the algorithm of the ID number checksum used by different identity documents.