Twemoji Parser
A simple library for identifying emoji entities within a string in order to render them as Twemoji.
For example, this parser is used within the rendering flow for Tweets and other text on mobile.twitter.com
Setup
Add twemoji-parser
as a dependency to your project:
yarn add twemoji-parser
Or, to work directly in this repo, clone it and run yarn install
from the repo root.
Usage
The tests are intended to serve as a more exhaustive source of documentation, but the general idea is that the parser takes a string and returns an array of the emoji entities it finds:
import { parse } from 'twemoji-parser';
const entities = parse('I ๐งก Twemoji! ๐ฅณ');
/*
entities = [
{
url: 'https://twemoji.maxcdn.com/v/latest/svg/1f9e1.svg',
indices: [ 2, 4 ],
text: '๐งก',
type: 'emoji'
},
{
url: 'https://twemoji.maxcdn.com/v/latest/svg/1f973.svg',
indices: [ 12, 14 ],
text: '๐ฅณ',
type: 'emoji'
}
]
*/
Authors
- Nathan Downs <ndowns [at] twitter [dot] com>
Follow @TwitterOSS on Twitter for updates.
Contributing
We feel that a welcoming community is important and we ask that you follow Twitter's Open Source Code of Conduct in all interactions with the community.
Support
Create a new issue on GitHub.
Security Issues?
Please report sensitive security issues via Twitter's bug-bounty program (https://hackerone.com/twitter) rather than GitHub.
License
MIT https://github.com/twitter/twemoji-parser/blob/master/LICENSE.md