Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/qit-tools/unicode-emoji-json-lite

This library provides a lightweight version of the unicode-emoji-json library.
https://github.com/qit-tools/unicode-emoji-json-lite

data emoji emojipedia emojis json lite unicode

Last synced: about 1 month ago
JSON representation

This library provides a lightweight version of the unicode-emoji-json library.

Awesome Lists containing this project

README

        

# Unicode Emoji JSON Lite

[![Test status](https://github.com/Qit-tools/unicode-emoji-json-lite/workflows/Node.js%20CI/badge.svg)](https://github.com/Qit-tools/unicode-emoji-json-lite/actions/workflows/node.js.yml)

This πŸ“š [library](https://www.npmjs.com/package/@qit.tools/unicode-emoji-json-lite) provides a πŸͺΆ lightweight version of the [unicode-emoji-json](https://www.npmjs.com/package/unicode-emoji-json) library. Essentially, this library simplifies JSON files by using ready-made JSON from the unicode-emoji-json library.

### RGI only

This data does not contain minimally-qualified and unqualified emoji.

> RGI: Recommended for General Interchange. A subset of emojis which is likely to be widely supported across multiple platforms.

> Minimally-qualified or unqualified emoji zwj sequences may be handled in the same way as their fully-qualified forms; the choice is up to the implementation.

Full description can be found at http://www.unicode.org/reports/tr51/.

To change the skin tone using JavaScript, use our library [@qit.tools/skin-tone](https://www.npmjs.com/package/@qit.tools/skin-tone).

## πŸ‘€ DEMO

Example of using the library: [Random Emoji Generator](https://qit.tools/generators/random-emoji/)

## CDN

- [unpkg](https://unpkg.com/browse/@qit.tools/unicode-emoji-json-lite/)

## πŸ—οΈ Install

### πŸŽ‰ NPM

```bash
npm install @qit.tools/unicode-emoji-json-lite
```

### 🧁 Bun

```bash
bun add @qit.tools/unicode-emoji-json-lite
```

### 🌟 PNPM

```bash
pnpm add @qit.tools/unicode-emoji-json-lite
```

### 🧢 Yarn

```bash
yarn add @qit.tools/unicode-emoji-json-lite
```

## πŸŽ“ How to use

```ts
// Import by default
import dataEmoji from "@qit.tools/unicode-emoji-json-lite";

// Import by JSON files
import dataEmoji from "@qit.tools/unicode-emoji-json-lite/data-by-emoji-lite.json";
import dataEmojiGroup from "@qit.tools/unicode-emoji-json-lite/data-by-group-lite.json";
// ...

// Import types
import type { DataEmoji, DataEmojiGroup, DataEmojiMap, DataEmojiOrdered } from "@qit.tools/unicode-emoji-json-lite";
```

## πŸ“ Details

### Skin tone variations

Emoji's skin tone variations are consolidated into one base entry, with a `tone` flag on them.

This means one entry of πŸ‘‹ represents its 5 variations– πŸ‘‹πŸ», πŸ‘‹πŸΌ, πŸ‘‹πŸ½, πŸ‘‹πŸΎ, πŸ‘‹πŸΏ; while raw unicode data list them as individual emoji entries.

The tone flag is present where needed; in other cases, it remains undefined to avoid creating a negative flag.

## πŸ“„ Files

`data-by-emoji-lite.json`:

```json
{
"πŸ˜€": {
"name": "grinning face",
"group": "SE"
},
...
"πŸ‘‹": {
"name": "waving hand",
"group": "PB",
"tone": true
},
}
```

`data-by-group-lite.json`:

```json
[
{
"name": "SE",
"emojis": [
{
"emoji": "πŸ˜€",
"name": "grinning face"
},
...
]
}
]
```

`data-emoji-components.json`:

```json
{
"light_skin_tone": "🏻",
"medium_light_skin_tone": "🏼",
"medium_skin_tone": "🏽",
"medium_dark_skin_tone": "🏾",
"dark_skin_tone": "🏿",
"red_hair": "🦰",
"curly_hair": "🦱",
"white_hair": "🦳",
"bald": "🦲"
}
```

`data-group-map.json`:

```json
{
"SE": "Smileys & Emotion",
"PB": "People & Body",
"AN": "Animals & Nature",
"FD": "Food & Drink",
"TP": "Travel & Places",
"A": "Activities",
"O": "Objects",
"S": "Symbols",
"F": "Flags"
}
```

`data-ordered-emoji.json`:

```json
[
"πŸ˜€",
"πŸ˜ƒ",
"πŸ˜„",
"😁",
...
]
```

## Showcases

Chrome Extension: [Emoji Keyboard Copy & Paste](https://chromewebstore.google.com/detail/lgdjbhmmimmgenckodpogdgakjepiicm)

Edge Add-on: [Emoji Keyboard Copy & Paste](https://microsoftedge.microsoft.com/addons/detail/madhfecnpclggkpaaklddcdchhajkmoo)

Website: [Emoj.in](https://emoj.in/)

## License

MIT

## Unicode License Agreement

https://www.unicode.org/license.html