Skip to main content

Custom Emoji manager command-line for Mattermost 😎

Project description

PyPI Build Status Quality Gate

mmemoji

Custom Emoji manager command-line for Mattermost 😎

Features:

  • Create custom Emojis
  • Delete custom Emojis
  • List custom Emojis
  • Search custom Emojis
  • Export custom Emojis

Installation

pip install mmemoji
mmemoji --help

(Requires Python >=3.10)

Usage example

Let's take the Party Parrot Emojis as an example.

  • First, clone the Git repository or retrieve an archive of it:
git clone https://github.com/jmhobbs/cultofthepartyparrot.com.git
cd cultofthepartyparrot.com
  • Then you'll need your Mattermost credentials. You can either pass them to mmemoji with the arguments --url/--login-id/--password or via environment variables, for example:
export MM_URL='http://127.0.0.1:8065'
export MM_LOGIN_ID='user-1@sample.mattermost.com'
export MM_PASSWORD='user-1'
  • Finally, run mmemoji to import all the parrots:
mmemoji create --no-clobber {parrots,guests}/hd/*.gif {parrots,guests}/*.gif

Note

  • Here we rely on shell globbing to select all emojis from the directories.
  • Specifying the hd directories first with --no-clobber ensures these emojis are created first and not overwritten by their lower quality counterpart.
  • If you ever want to remove them all, simply run the following:
mmemoji delete --force {parrots,guests}/hd/*.gif {parrots,guests}/*.gif

Note

  • The emoji names are extracted from the filenames the same way they have been during creation.
  • --force is used to ignore the absent low quality duplicates.

Development

  • You can clone this repository and install the project with uv:
uv sync
  • You'll find a script to create a local Docker test instance under tests/:
./tests/scripts/setup-mattermost.py
  • You can run the test suite with:
pytest
  • And last thing, you can install the pre-commit hooks to help with the formatting of your code.
pre-commit install

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mmemoji-0.7.0.tar.gz (127.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mmemoji-0.7.0-py3-none-any.whl (25.0 kB view details)

Uploaded Python 3

File details

Details for the file mmemoji-0.7.0.tar.gz.

File metadata

  • Download URL: mmemoji-0.7.0.tar.gz
  • Upload date:
  • Size: 127.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.9.11 {"installer":{"name":"uv","version":"0.9.11"},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for mmemoji-0.7.0.tar.gz
Algorithm Hash digest
SHA256 407270433eb7ce8cac9924256e51fac6217f7238aa4730198e93771e7c42bf4f
MD5 44bc7b80fe116ce3d27830ef4c234ee0
BLAKE2b-256 6451fd2951b782fc9017e1f6358514e97c1c4a510c37b2a0aa06112ea46c4554

See more details on using hashes here.

File details

Details for the file mmemoji-0.7.0-py3-none-any.whl.

File metadata

  • Download URL: mmemoji-0.7.0-py3-none-any.whl
  • Upload date:
  • Size: 25.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.9.11 {"installer":{"name":"uv","version":"0.9.11"},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for mmemoji-0.7.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ba525c0a06db77b6f60bff3b70eae15ffe98c0cdc2bc3008561dbb8ac0256f21
MD5 fc2ba8ac8f5e5f9fe553d23252b448f4
BLAKE2b-256 0e233fd82800bf2b0b4d11b05bb0dc5475272cb8fb46a9e02168c7452a2bd646

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page