Home

Awesome

<p align="center"> <img src ="Resources/Logo_GitHub.png" alt="EmojiKit Logo" title="EmojiKit" /> </p> <p align="center"> <img src="https://img.shields.io/github/v/release/danielsaidi/EmojiKit?color=%2300550&sort=semver" alt="Version" /> <img src="https://img.shields.io/badge/Swift-6.0-orange.svg" alt="Swift 6.0" /> <img src="https://img.shields.io/badge/platform-SwiftUI-blue.svg" alt="Swift UI" title="Swift UI" /> <img src="https://img.shields.io/github/license/danielsaidi/ApiKit" alt="MIT License" title="MIT License" /> <a href="https://twitter.com/danielsaidi"><img src="https://img.shields.io/twitter/url?label=Twitter&style=social&url=https%3A%2F%2Ftwitter.com%2Fdanielsaidi" alt="Twitter: @danielsaidi" title="Twitter: @danielsaidi" /></a> <a href="https://mastodon.social/@danielsaidi"><img src="https://img.shields.io/mastodon/follow/000253346?label=mastodon&style=social" alt="Mastodon: @danielsaidi@mastodon.social" title="Mastodon: @danielsaidi@mastodon.social" /></a> </p>

About EmojiKit

EmojiKit lets you use emoji-based features on all major Apple platforms (iOS, macOS, tvOS, watchOS & visionOS).

<p align="center"> <img src ="Resources/Demo.gif" width="750" /> </p>

EmojiKit has all you need to work with emojis, including categories, support for localization & skin tones, unicode & version information, as well as convenient EmojiGrid and EmojiScrollGrid components for SwiftUI.

Installation

EmojiKit can be installed with the Swift Package Manager:

https://github.com/danielsaidi/EmojiKit.git

Features

EmojiKit provides a bunch of emoji-specific features:

See the online documentation for more information.

Getting started

The Emoji model can be used to parse a bunch of emoji-specific information, for instance:

Emoji("πŸ‘").unicodeIdentifier       // \\N{THUMBS UP SIGN}
Emoji("πŸš€").unicodeIdentifier       // \\N{ROCKET}
Emoji("πŸ‘").unicodeName             // Thumbs Up Sign
Emoji("πŸ‘πŸΏ").unicodeName             // Thumbs Up Sign
Emoji("πŸš€").unicodeName             // Rocket
Emoji("πŸ˜€").localizedName           // Grinning Face
Emoji("πŸ˜€").localizedName(for: .swedish)  // Leende Ansikte
Emoji("πŸ‘").hasSkinToneVariants     // true
Emoji("πŸš€").hasSkinToneVariants     // false
Emoji("πŸ‘πŸΏ").neutralSkinToneVariant  // πŸ‘
Emoji("πŸ‘").skinToneVariants        // πŸ‘πŸ‘πŸ»πŸ‘πŸΌπŸ‘πŸ½πŸ‘πŸΎπŸ‘πŸΏ

The EmojiCategory enum defines standard and custom categories and their emojis, for instance:

EmojiCategory.smileysAndPeopleChars.emojis // πŸ˜€πŸ˜ƒπŸ˜„...
EmojiCategory.animalsAndNatureChars.emojis // 🐢🐱🐭...
EmojiCategory.foodAndDrinkChars.emojis     // 🍏🍎🍐...

The EmojiVersion enum defines Emoji versions and the emojis they introduced, for instance:

EmojiVersion.v15_1.emojis // πŸ™‚β€β†•οΈπŸ™‚β€β†”οΈπŸ‘©β€πŸ¦½β€βž‘οΈ...
EmojiVersion.v15.emojis   // 🫨🫸🫷
EmojiVersion.v14.emojis   // 🫠🫒🫣

See the online documentation for more information.

Documentation

The online documentation has more information, articles, code examples, etc.

Demo Application

The Demo folder has an app that lets you explore the library.

Support my work

You can sponsor me on GitHub Sponsors or reach out for paid support, to help support my open-source projects.

Your support makes it possible for me to put more work into these projects and make them the best they can be.

Contact

Feel free to reach out if you have questions or if you want to contribute in any way:

License

EmojiKit is available under the MIT license. See the LICENSE file for more info.