unicode_emojis 0.4.0 copy "unicode_emojis: ^0.4.0" to clipboard
unicode_emojis: ^0.4.0 copied to clipboard

Unicode 15.0 emojis with metadata, search and skin tone support.

unicode_emojis 🎉 #

A Dart package that gives you all the Unicode emojis, skin tone variants, and search. The data is generated from the awesome emoji-data repository, so it will always be fresh and up to date. 🙌

Features #

  • Contains over 3,000 emojis from Unicode 15.0. 😍
  • Supports skin tone variations for human emojis and multi-person emojis. 🙋🏻‍♂️🙋🏼‍♀️🙋🏽‍♂️🙋🏾‍♀️🙋🏿‍♂️
  • Provides an Emoji class that has all the info you need for each emoji. 🚀
  • Access everything through the UnicodeEmojis class. 🎉
    • The UnicodeEmojis.allEmojis constant contains all the emojis. 📦
    • The UnicodeEmojis.search function finds the emojis that match your query. 🔎
      • Search by name, short name (e.g. tada), category (e.g. flags), subcategory (e.g. country-flag), or ASCII representation (e.g. ;)).

Usage #

To use this package, add unicode_emojis as a dependency in your pubspec.yaml file.

Then import it in your Dart code:

import 'package:unicode_emojis/unicode_emojis.dart';

Here's a quick example:

import 'package:unicode_emojis/unicode_emojis.dart';

void main(List<String> args) {
  // You can access the list of all emojis using the `allEmojis` constant.
  const emojis = UnicodeEmojis.allEmojis;

  // Print the first 10 emojis.
  print(emojis.take(10).map((e) => e.emoji).toList());
  // => [😀, 😃, 😄, 😁, 😆, 😅, 🤣, 😂, 🙂, 🙃]

  // Search for emojis that contain the word "blue".
  final blueEmojis = UnicodeEmojis.search('blue');
  print(blueEmojis.map((e) => e.emoji).toList());
  // => [💙, 🩵, 🫐, 🚙, 📘, 🔵, 🟦, 🔷, 🔹]

  // Search by short name.
  final partyPopper = UnicodeEmojis.search('tada').first;
  print(partyPopper);
  // =>
  // {
  //   "name": "party popper",
  //   "emoji": "🎉",
  //   "unified": "1F389",
  //   "non_qualified": null,
  //   "short_name": "tada",
  //   "short_names": [
  //       "tada"
  //   ],
  //   "text": null,
  //   "texts": null,
  //   "category": "Activities",
  //   "subcategory": "event",
  //   "sort_order": 1045,
  //   "added_in": "0.6",
  //   "has_img_apple": true,
  //   "has_img_google": true,
  //   "has_img_twitter": true,
  //   "has_img_facebook": true,
  //   "skin_variations": null,
  //   "obsoletes": null,
  //   "obsoleted_by": null
  // }

  // Search by official Unicode name.
  final spoutingWhale = UnicodeEmojis.search('spouting whale').first;
  print(spoutingWhale.emoji);
  // => 🐳
  print(spoutingWhale.name);
  // => spouting whale

  // Get an emoji and its variations.
  final wavingEmoji = UnicodeEmojis.search('waving hand').first;
  print(wavingEmoji.emoji);
  // => 👋
  print(wavingEmoji.skinVariations!.map((e) => e.emoji).toList());
  // => [👋🏻, 👋🏼, 👋🏽, 👋🏾, 👋🏿]

  // Search for emoji by the ASCII representation.
  final winkEmoji = UnicodeEmojis.search(';)').first;
  print(winkEmoji.emoji);
  // => 😉
}

For more details, please check out the API reference.

License #

This package is licensed under the MIT license. See the LICENSE file for more information.

9
likes
140
pub points
75%
popularity

Publisher

verified publishermerritt.codes

Unicode 15.0 emojis with metadata, search and skin tone support.

Repository (GitHub)
View/report issues

Documentation

API reference

Funding

Consider supporting this project:

merritt.codes
github.com

License

MIT (LICENSE)

Dependencies

collection

More

Packages that depend on unicode_emojis