Small npm package for GitHub Emoji typed with TypeScript.
Features:
- Get properties of each emoji
- Name (e.g.
dog
) - URL (e.g.
https://assets-cdn.github.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
)
- Name (e.g.
- TypeScript ready
- Emoji name is typed as a union of string literal types. Compiler can check emoji name is correct.
- Zero dependency
Installation:
npm install --save github-emoji
Usage:
const emoji = require('github-emoji');
console.log('All emoji information as Map', emoji.all()); // Map{ '+1' => {...}, ... }
console.log('Get properties of emoji as object', emoji.of('dog')); // { string: '🐶', ... }
console.log('Get emoji string from name', emoji.stringOf('dog')); // '🐶'
console.log('Get emoji names from emoji string as array', emoji.namesOf('👍')); // ['+1', 'thumbsup']
console.log('Get emoji one of names from emoji string', emoji.nameOf('👍')); // '+1'
console.log('Check the string is emoji name', emoji.isName('dog')); // true
console.log('Check the string is emoji', emoji.isEmoji('🐶'));; // true
console.log('Object of name => URL', emoji.URLS); // { '+1': 'https://...', ... }
This library is ready for TypeScript.
import * as emoji from 'github-emoji';
emoji.of('dog'); // OK
emoji.of('doggo'); // COMPILE ERROR!
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.