An open API service indexing awesome lists of open source software.

https://github.com/ombucha/emojis.py

A basic emoji manipulator for Python.
https://github.com/ombucha/emojis.py

emoji emojis emojis-py python python-3 python3

Last synced: 3 months ago
JSON representation

A basic emoji manipulator for Python.

Awesome Lists containing this project

README

          

.. image:: https://raw.githubusercontent.com/Ombucha/emojis.py/main/banner.png

.. image:: https://img.shields.io/pypi/v/emojis.py
:target: https://pypi.python.org/pypi/emojis.py
:alt: PyPI version
.. image:: https://static.pepy.tech/personalized-badge/emojis.py?period=total&left_text=downloads&left_color=grey&right_color=red
:target: https://pypi.python.org/pypi/emojis.py
:alt: PyPI downloads
.. image:: https://sloc.xyz/github/Ombucha/emojis.py?lower=True
:target: https://github.com/Ombucha/emojis.py/graphs/contributors
:alt: Lines of code
.. image:: https://img.shields.io/github/repo-size/Ombucha/emojis.py?color=yellow
:target: https://github.com/Ombucha/emojis.py
:alt: Repository size

| โœจ A lightweight, expressive emoji utility library for Python ๐Ÿ’ป๐Ÿ
| ๐ŸŽ‰ Supports emoji lookup, search, and emoji-kitchen-style combos โ€” all offline and blazing fast โšก
| No dependencies โ€” just pure emoji magic ๐Ÿช„

๐Ÿš€ Features
-----------

- ๐Ÿ” Emoji lookup by name, alias, unicode, hexcode, shortcode, or order
- ๐Ÿง  Fast emoji search by keyword, label, shortcode, or tag
- ๐Ÿณ Emoji Kitchen-style mashups (Google Emoji Kitchen)
- ๐Ÿท๏ธ Convert between emoji and shortcode (emojize/demojize)
- ๐Ÿงฉ Emoji grouping and subgrouping
- ๐Ÿ“ฆ Bundled emoji data, no internet required
- ๐Ÿช„ Zero dependencies, pure Python

๐Ÿ“– Usage & Quick Start
----------------------

.. code-block:: python

from emojis import (
is_emoji, emoji_count,
get_emoji_from_name, get_emoji_from_hexcode, get_emoji_from_shortcode, get_emoji_from_order,
get_all_emojis, emojize, demojize,
get_group, get_subgroup, get_all_groups, get_all_subgroups,
emoji_kitchen, search_emojis, Emoji
)

# Check if a character is an emoji
print(is_emoji("๐Ÿ”ฅ")) # True

# Count emojis in a string
print(emoji_count("I love ๐Ÿ• and ๐Ÿ!")) # 2

# Lookup emoji by name, hexcode, shortcode, or order
print(get_emoji_from_name("grinning face").emoji) # ๐Ÿ˜€
print(get_emoji_from_hexcode("1F525").emoji) # ๐Ÿ”ฅ
print(get_emoji_from_shortcode("fire").emoji) # ๐Ÿ”ฅ
print(get_emoji_from_order(0).emoji) # First emoji in database

# List all emojis (print only emoji characters)
all_emojis = get_all_emojis()
print([e.emoji for e in all_emojis[:5]]) # ['๐Ÿ˜€', '๐Ÿ˜ƒ', '๐Ÿ˜„', ...]

# Convert shortcodes to emojis and vice versa
print(emojize("I am :fire:!")) # I am ๐Ÿ”ฅ!
print(demojize("I am ๐Ÿ”ฅ!")) # I am :fire:!

# Emoji details and grouping
emoji = Emoji("๐Ÿฆ„")
print(emoji.label) # 'unicorn'
print(get_group(emoji).name) # Group name
print(get_subgroup(emoji).name) # Subgroup name

# List all groups and subgroups (print names)
print([g.name for g in get_all_groups()])
print([sg.name for sg in get_all_subgroups()])

# Emoji Kitchen-style combo (returns a URL)
print(emoji_kitchen(Emoji("๐Ÿฅฒ"), Emoji("๐Ÿ˜Ž")))

# Search for emojis by keyword, label, shortcode, or tag (print emoji characters)
print([e.emoji for e in search_emojis("cat")]) # ['๐Ÿฑ', '๐Ÿ˜บ', ...]

๐Ÿ“ฆ Included Emoji Data
----------------------

This library bundles static emoji data from:

- `emojibase.dev `_ ๐Ÿง 
- `emoji-kitchen-backend by xsalazar `_ ๐Ÿณ

All data is included upfront โ€” no runtime fetching or internet required ๐Ÿ”’

โš™๏ธ Installation
---------------

**Requires Python 3.8+ ๐Ÿ**

To install the latest stable release:

.. code-block:: sh

# Unix / macOS ๐ŸŽ๐Ÿง
python3 -m pip install "emojis.py"

# Windows ๐ŸชŸ
py -m pip install "emojis.py"

To install the development version:

.. code-block:: sh

git clone https://github.com/Ombucha/emojis.py
cd emojis.py
pip install -e .

๐Ÿ™Œ Contributing
---------------

Contributions are welcome!
If you have suggestions, bug reports, or want to add features, please open an issue or submit a pull request on GitHub.

- Read the `Contributing Guide `_ for best practices.
- Make sure your code is tested and documented.
- Be kind and respectful in all interactions.

Thank you for helping make emojis.py better! ๐ŸŽ‰

๐Ÿ”— Links
--------

| ๐Ÿ”Ž `Documentation `_
| ๐Ÿ“ฆ `PyPI Package `_
| ๐Ÿ“ `Unicode Full Emoji List `_
| ๐ŸŒ `Emojipedia `_
|

๐Ÿงช Explore, search, and play with emojis in Python โ€” your code just got way more expressive! ๐Ÿ˜„๐ŸŽจ๐Ÿš€