unique-identity
v2.3.5
Published
Amazingly unique ids which are short and Perfect for Url Shorteners, Product SKUs, Socket Ids, Data Base Ids, SQL, MongoDB, PostGres, MySQL, MSSQL, Redis ids, and any other id users might see...
Downloads
20
Maintainers
Readme
unique-identity
Amazingly unique ids which are short and Perfect for Url Shorteners, Product SKUs, Socket Ids, Data Base Ids, SQL, MongoDB, PostGres, MySQL, MSSQL, Redis ids, Front-End Temp IDs and any other id users might see...
Features
- Generates unique id's on multiple processes and machines even if called at the same time.
- With the Process ID, MAC Address and the combinations of current Time the ID's are unique even if called at the same time from multiple machines and processes.
- Set Pre-Fix in unique IDs.
- Set Post-Fix in unique IDs.
Now With Typescript Support 🥳
- Now any typescript based Environment can easily use unique-identity 🤩
Usage
//JavaScript
const id = require('unique-identity');
//Or
const { characters, get, setPostfix, setPrefix } = require('unique-identity');
console.log(id.get());
// De3MOQxCZAdHpvx3pG
// Bukc9IfvI8mh10PD5G
// D1kxsCOHcwrrfEDGpG
// VzS-0jSpkgQr7AD9G
//TypeScript
import { characters, get, setPostfix, setPrefix } from 'unique-identity';
//Or
import * as id from 'unique-identity';
//Or
import id from 'unique-identity';
console.log(id.get());
// De3MOQxCZAdHpvx3pG
// Bukc9IfvI8mh10PD5G
// D1kxsCOHcwrrfEDGpG
// VzS-0jSpkgQr7AD9G
Mongoose Unique Id
_id: {
'type': String,
'default': id.get()
},
API
//JavaScript
const id = require('unique-identity');
//Or
const { characters, get, setPostfix, setPrefix } = require('unique-identity');
//TypeScript
import { characters, get, setPostfix, setPrefix } from 'unique-identity';
//Or
import * as id from 'unique-identity';
//Or
import id from 'unique-identity';
Example
users.insert({
_id: id.get(),
name: '...',
email: '...'
});
You can also set your custom 64 unique characters then unique id will be generated accordingly.
Example
//JavaScript
const id = require('unique-identity');
//Or
const { characters, get, setPostfix, setPrefix } = require('unique-identity');
//TypeScript
import { characters, get, setPostfix, setPrefix } from 'unique-identity';
//Or
import * as id from 'unique-identity';
//Or
import id from 'unique-identity';
let characters='0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-_';
id.characters(characters);
console.log(id.characters(characters));
// { status : true }
console.log(id.characters('duplicate characters of string'));
// { message: 'Duplicate characters found.', status: false }
console.log(id.characters('wrong length of string'));
// { message: 'Need 64 unique characters.', status: false }
You can also set the Pre-Fix and Post-Fix characters too and the unique id will be generated accordingly.
Example
//JavaScript
const id = require('unique-identity');
//Or
const { characters, get, setPostfix, setPrefix } = require('unique-identity');
//TypeScript
import { characters, get, setPostfix, setPrefix } from 'unique-identity';
//Or
import * as id from 'unique-identity';
//Or
import id from 'unique-identity';
// To Set Pre-Fix
id.setPrefix(inputString);
console.log(id.setPrefix(inputString));
// { status : true }
console.log(id.setPrefix(/*invalid type input*/));
// { message: 'Invalid input type, Required string.', status: false }
console.log(id.setPrefix(/*input string length more than 50 chars*/));
// { message: 'Max chars limit is 50.', status: false }
// To Set Post-Fix
id.setPostfix(inputString);
console.log(id.setPostfix(inputString));
// { status : true }
console.log(id.setPostfix(/*invalid type input*/));
// { message: 'Invalid input type, Required string.', status: false }
console.log(id.setPostfix(/*input string length more than 50 chars*/));
// { message: 'Max chars limit is 50.', status: false }
Pre-Fix & Post-Fix Examples
//Pre-Fix
id.setPrefix('SKU_');
console.log(id.get());
// SKU_De3MOQxCZAdHpvx3pG
// SKU_Bukc9IfvI8mh10PD5G
// SKU_D1kxsCOHcwrrfEDGpG
//Post-Fix
id.setPostfix('_postFix');
console.log(id.get());
// De3MOQxCZAdHpvx3pG_postFix
// Bukc9IfvI8mh10PD5G_postFix
// D1kxsCOHcwrrfEDGpG_postFix
//For Both
id.setPrefix('SKU_');
id.setPostfix('_postFix');
console.log(id.get());
// SKU_De3MOQxCZAdHpvx3pG_postFix
// SKU_Bukc9IfvI8mh10PD5G_postFix
// SKU_D1kxsCOHcwrrfEDGpG_postFix
//To Unset the Pre-Fix or Post-Fix
id.setPrefix('');// it will unset prefix
id.setPostfix('');// it will unset postfix