GitHub Emoji Library for Node.js typed with TypeScript

Small npm package for GitHub Emoji typed with TypeScript.
Features:
- Get properties of each emoji
- Name (e.g.
dog)
- URL (e.g.
https://github.githubassets.com/images/icons/emoji/unicode/1f436.png?v8)
- String (e.g.
🐶)
- File path to emoji file (e.g.
/path/to/github-emoji/images/1f436.png)
- File name (e.g.
1f436.png)
- TypeScript ready
- Emoji name is typed as a union of string literal types. Compiler can check emoji name is correct.
- Zero runtime dependency
Installation:
npm install --save github-emoji
Usage:
const emoji = require('github-emoji');
console.log('All emoji information as Map', emoji.all());
console.log('Get properties of emoji as object', emoji.of('dog'));
console.log('Get emoji string from name', emoji.stringOf('dog'));
console.log('Get emoji names from emoji string', emoji.namesOf('👍'));
console.log('Get emoji one of names from emoji string', emoji.nameOf('👍'));
console.log('Get emoji URL from name', emoji.urlOf('dog'));
console.log('Check the string is emoji name', emoji.isName('dog'));
console.log('Check the string is emoji', emoji.isEmoji('🐶'));
console.log('Object of name => URL', emoji.URLS);
This library is ready for TypeScript.
import * as emoji from 'github-emoji';
emoji.of('dog');
emoji.of('doggo');
import {EmojiName} from 'github-emoji';
const someName: string = ...;
emoji.of(someName as EmojiName);
Please see github-emoji/index.d.ts for all APIs.
You may need to add --resolveJsonModule to tsc or "resolveJsonModule": true in compilerOptions
section of tsconfig.json to compile this library. --outDir would be also necessary in compile
configuration. --target must be es2015 or later.
For example:
tsc your_source.ts --resolveJsonModule --target es2015 --esModuleInterop --moduleResolution node --module commonjs