https://github.com/danielsaidi/EmojiKit
A Swift library that lets you use emoji features on all major Apple platforms.
https://github.com/danielsaidi/EmojiKit
emoji emoji-categories emoji-picker emoji-versions emojis ios macos swift swiftui tvos visionos watchos
Last synced: about 1 month ago
JSON representation
A Swift library that lets you use emoji features on all major Apple platforms.
- Host: GitHub
- URL: https://github.com/danielsaidi/EmojiKit
- Owner: danielsaidi
- License: mit
- Created: 2024-02-22T08:10:28.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-06-01T19:11:04.000Z (4 months ago)
- Last Synced: 2025-08-18T17:00:42.376Z (about 2 months ago)
- Topics: emoji, emoji-categories, emoji-picker, emoji-versions, emojis, ios, macos, swift, swiftui, tvos, visionos, watchos
- Language: Swift
- Homepage: https://danielsaidi.com/opensource
- Size: 5.68 MB
- Stars: 148
- Watchers: 2
- Forks: 13
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
- awesome-visionOS - EmojiKit
README
![]()
# EmojiKit
EmojiKit lets you use emoji-based features on all major Apple platforms (iOS, macOS, tvOS, watchOS & visionOS).
![]()
EmojiKit supports emojis, categories, unicode versions, localization, skin tones, etc. and has convenient SwiftUI components like ``EmojiGrid`` and ``EmojiScrollGrid``.
## Installation
EmojiKit can be installed with the Swift Package Manager:
```
https://github.com/danielsaidi/EmojiKit.git
```## Support My Work
You can [become a sponsor][Sponsors] to help me dedicate more time on my various [open-source tools][OpenSource]. Every contribution, no matter the size, makes a real difference in keeping these tools free and actively developed.
## Features
EmojiKit provides a bunch of emoji-specific features:
* 😀 Emojis - An emoji model with many features.
* 🐻 Emoji Categories - Standard and custom emoji categories.
* 📦 Emoji Versions - All available emoji versions and their emojis.
* 🧩 Extensions - Emoji-related native type extensions.
* 👍🏾 Skin Tones - Skin tone information for supported emojis.
* 🖼️ Views - Emoji-specific views, like grids and pickers.See the online [documentation][Documentation] for more information.
## Localization
EmojiKit is localized in the following languages:
* 🇨🇳 Chinese (Simplified)
* 🇬🇧 English
* 🇳🇱 Dutch
* 🇫🇷 French
* 🇩🇪 German
* 🇮🇹 Italian
* 🇯🇵 Japanese
* 🇰🇷 Korean
* 🇧🇷 Portuguese (Brazil)
* 🇷🇺 Russian
* 🇪🇸 Spanish
* 🇸🇪 SwedishYou can contribute by copying `Sources/Resources/en.lproj` and localizing it in another language.
## Getting started
The `Emoji` model can be used to parse a bunch of emoji-specific information, for instance:
```swift
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(in: .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:
```swift
EmojiCategory.smileysAndPeopleChars.emojis // 😀😃😄...
EmojiCategory.animalsAndNatureChars.emojis // 🐶🐱🐭...
EmojiCategory.foodAndDrinkChars.emojis // 🍏🍎🍐...
```The `EmojiVersion` enum defines Emoji versions and the emojis they introduced, for instance:
```swift
EmojiVersion.v15_1.emojis // 🙂↕️🙂↔️👩🦽➡️...
EmojiVersion.v15.emojis // 🫨🫸🫷
EmojiVersion.v14.emojis // 🫠🫢🫣
```See the online [documentation][Documentation] for more information.
## Documentation
The online [documentation][Documentation] has more information, articles, code examples, etc.
## Demo Application
The `Demo` folder has a demo app that lets you explore the library and its components.
## Contact
Feel free to reach out if you have questions or want to contribute in any way:
* Website: [danielsaidi.com][Website]
* E-mail: [daniel.saidi@gmail.com][Email]
* Bluesky: [@danielsaidi@bsky.social][Bluesky]
* Mastodon: [@danielsaidi@mastodon.social][Mastodon]## License
EmojiKit is available under the MIT license. See the [LICENSE][License] file for more info.
[Email]: mailto:daniel.saidi@gmail.com
[Website]: https://danielsaidi.com
[GitHub]: https://github.com/danielsaidi
[OpenSource]: https://danielsaidi.com/opensource
[Sponsors]: https://github.com/sponsors/danielsaidi[Bluesky]: https://bsky.app/profile/danielsaidi.bsky.social
[Mastodon]: https://mastodon.social/@danielsaidi
[Twitter]: https://twitter.com/danielsaidi[Documentation]: https://danielsaidi.github.io/EmojiKit
[License]: https://github.com/danielsaidi/EmojiKit/blob/main/LICENSE