emojideas

2.1.0 • Public • Published

Emojideas

Text-to-emoji suggestion library with a Lunr and emojilib backend. Suggestions are based on emoji name and keywords.

Usage

Install the library:

npm install --save emojideas
# or
yarn add emojideas

Require the module, create an instance, and call the suggest function on some text:

const Emojideas = require('emojideas');

const e = new Emojideas();

e.suggest('aerial tramway');
// => [ '🚡' ]

Results are ordered based on the score calculated by Lunr.

Options

The constructor accepts several options.

option description
fuzzy level of fuzzyness to apply to all Lunr queries (default: 0)
nameBoost weight applied to emoji name relative to keywords when ordering results (default: 3)
formatOutput function passed each Lunr result to format output (default: el => el.ref)
require('emojilib')['🚡'];
// => [ 'aerial_tramway', 'transportation', 'vehicle', 'ski' ]

const f = new Emojideas({ fuzzy: 1 });
f.suggest('trumway');
// => [ '🚡' ]

const g = new Emojideas({ nameBoost: 0 });
g.suggest('aerial tramway');
// => []

const h = new Emojideas({ formatOutput: el => [el.ref, el.score] });
h.suggest('aerial tramway');
// => [ [ '🚡', 28.254572762652064 ] ]

Lunr

All queries are passed directly to the Lunr backend, and can therefore use the Lunr syntax, except when the fuzzy option has been set.

require('emojilib')['🚊'];
// => [ 'tram', 'transportation', 'vehicle' ]

const e = new Emojideas();

e.suggest('tram');
// => [ '🚊', '🚋' ]

e.suggest('tram*');
// => [ '🚊', '🚡', '🚋' ]

e.suggest('aerial tram*');
// => [ '🚡', '🚊', '🚋' ]

e.suggest('tram* -tram');
// => [ '🚡' ]

CLI

A command line search implementation based on Commander is included.

Install the library globally:

npm install -g emojideas
# or
yarn global add emojideas

Run a query:

emojideas aerial tramway
# => [ '🚡' ]

To see available options:

emojideas --help

Package Sidebar

Install

npm i emojideas

Weekly Downloads

16

Version

2.1.0

License

MIT

Unpacked Size

8.91 kB

Total Files

7

Last publish

Collaborators

  • itsnickbarry