{ "info": { "author": "", "author_email": "", "bugtrack_url": null, "classifiers": [ "Environment :: Web Environment", "Intended Audience :: End Users/Desktop", "License :: OSI Approved :: GNU General Public License v3 (GPLv3)", "Natural Language :: English", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Topic :: Utilities" ], "description": "[![PyPI][pypi badge]][pypi link]\n[![Build Status][build badge]][build link]\n[![Quality Gate][sonarcloud badge]][sonarcloud link]\n\n# mmemoji\n\nCustom Emoji manager command-line for [Mattermost][mattermost] \ud83d\ude0e\n\nFeatures:\n\n* Create custom Emojis\n* Delete custom Emojis\n* List custom Emojis\n* Search custom Emojis\n\nComing soon:\n\n* Export custom Emojis\n\n## Installation\n\n\n```shell\npip install mmemoji\nmmemoji --help\n```\n\n_(Requires Python >=3.5)_\n\n## Usage example\n\nLet's take the [Party Parrot][COTPP] Emojis as an example.\n\n* First, clone the Git repository or retrieve an archive of it:\n\n```shell\ngit clone https://github.com/jmhobbs/cultofthepartyparrot.com.git\ncd cultofthepartyparrot.com\n```\n\n* 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:\n\n```shell\nexport MM_URL='http://127.0.0.1:8065/api/v4'\nexport MM_LOGIN_ID='user-1@sample.mattermost.com'\nexport MM_PASSWORD='user-1'\n```\n\n* Finally, run `mmemoji` to import all the parrots:\n\n```shell\nmmemoji create --no-clobber {parrots,guests}/hd/*.gif {parrots,guests}/*.gif\n```\n\n> _Notes_:\n>\n> * Here we rely on [shell globbing][glob] to select all emojis from the directories.\n> * Specifying the `hd` directories first with `--no-clobber` ensures these emojis are created first and not overwritten by their lower quality counterpart.\n\n* If you ever want to remove them all, simply run the following:\n\n```shell\nmmemoji delete --force {parrots,guests}/hd/*.gif {parrots,guests}/*.gif\n```\n\n> _Notes_:\n>\n> * The emoji names are extracted from the filenames the same way they have been during creation.\n> * `--force` is used to ignore the absent low quality duplicates.\n\n## Development\n\n* You can clone this repository and install the project in editable mode:\n\n```shell\npip install -e .\n```\n\n* You'll find a script to create a local [Docker][docker] test instance under `tests/`:\n\n```shell\n./tests/scripts/setup-mattermost.sh\n```\n\n* You can run the test suite with:\n\n```shell\npython setup.py test\n```\n\n* And last thing, you can install the [pre-commit][pre-commit] hooks to help with the formatting of your code.\n\n```shell\npre-commit install\n```\n\n[pypi badge]: https://img.shields.io/pypi/v/mmemoji.svg\n[pypi link]: https://pypi.python.org/pypi/mmemoji\n[build badge]: https://travis-ci.com/maxbrunet/mmemoji.svg\n[build link]: https://travis-ci.com/maxbrunet/mmemoji\n[sonarcloud badge]: https://sonarcloud.io/api/project_badges/measure?project=maxbrunet_mmemoji&metric=alert_status\n[sonarcloud link]: https://sonarcloud.io/dashboard?id=maxbrunet_mmemoji\n[mattermost]: https://www.mattermost.org\n[COTPP]: https://cultofthepartyparrot.com\n[glob]: https://en.wikipedia.org/wiki/Glob_(programming)\n[docker]: https://www.docker.com\n[pre-commit]: https://pre-commit.com\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/maxbrunet/mmemoji", "keywords": "cli emoji mattermost", "license": "GPLv3", "maintainer": "", "maintainer_email": "", "name": "mmemoji", "package_url": "https://pypi.org/project/mmemoji/", "platform": "", "project_url": "https://pypi.org/project/mmemoji/", "project_urls": { "Homepage": "https://github.com/maxbrunet/mmemoji" }, "release_url": "https://pypi.org/project/mmemoji/0.2.0/", "requires_dist": [ "click (>=7.0)", "mattermostdriver (>=6.1.2)", "requests", "tablib", "tabulate" ], "requires_python": ">=3.5", "summary": "Custom Emoji manager command-line for Mattermost \ud83d\ude0e", "version": "0.2.0" }, "last_serial": 5833048, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "4237a64415ece4e7292fcf442fce1766", "sha256": "5e8ac46ac41481c0470ce8b56f3bac50742c7cf6e70343984b37bc75705151d0" }, "downloads": -1, "filename": "mmemoji-0.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "4237a64415ece4e7292fcf442fce1766", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.4", "size": 21528, "upload_time": "2019-01-09T16:39:23", "url": "https://files.pythonhosted.org/packages/4e/36/e338bb27c745483e631d8cc96e11c309467fb5537a5ec1384b564ddcd5be/mmemoji-0.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7e9c4a93676b4b30a36850099c206504", "sha256": "ed7374e6000c0e04880c35412c860c06b8610f1f5435f255e9675d21f568e00d" }, "downloads": -1, "filename": "mmemoji-0.1.0.tar.gz", "has_sig": false, "md5_digest": "7e9c4a93676b4b30a36850099c206504", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.4", "size": 7350, "upload_time": "2019-01-09T16:39:24", "url": "https://files.pythonhosted.org/packages/b5/7e/1fe5d0bbd583161196f9aa2fa66a0866e3233cbcb318a029ab58c5f94a31/mmemoji-0.1.0.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "d7bc42ff2b990827382aa2a7654ac722", "sha256": "dc79f8eb2d67c3907a60c8ca01dc0df7060c0b1895446d0739a2b968181f7b6c" }, "downloads": -1, "filename": "mmemoji-0.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "d7bc42ff2b990827382aa2a7654ac722", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 22978, "upload_time": "2019-09-15T21:13:29", "url": "https://files.pythonhosted.org/packages/6a/1e/701982b8801f9a00efd2c9cd7c4e35664edd8513be58667aa76557cbcd95/mmemoji-0.2.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "84b356f05ce981a49a8685aadb1efbb8", "sha256": "b80d6dbb87329fc08559da27aab96abd90d86fbf4914c43dac69dec3f2257468" }, "downloads": -1, "filename": "mmemoji-0.2.0.tar.gz", "has_sig": false, "md5_digest": "84b356f05ce981a49a8685aadb1efbb8", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 9455, "upload_time": "2019-09-15T21:13:31", "url": "https://files.pythonhosted.org/packages/10/45/f645103502578966e7e6e9951cc4eb08a75a7fe227d3b960449f671cdc7b/mmemoji-0.2.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "d7bc42ff2b990827382aa2a7654ac722", "sha256": "dc79f8eb2d67c3907a60c8ca01dc0df7060c0b1895446d0739a2b968181f7b6c" }, "downloads": -1, "filename": "mmemoji-0.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "d7bc42ff2b990827382aa2a7654ac722", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 22978, "upload_time": "2019-09-15T21:13:29", "url": "https://files.pythonhosted.org/packages/6a/1e/701982b8801f9a00efd2c9cd7c4e35664edd8513be58667aa76557cbcd95/mmemoji-0.2.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "84b356f05ce981a49a8685aadb1efbb8", "sha256": "b80d6dbb87329fc08559da27aab96abd90d86fbf4914c43dac69dec3f2257468" }, "downloads": -1, "filename": "mmemoji-0.2.0.tar.gz", "has_sig": false, "md5_digest": "84b356f05ce981a49a8685aadb1efbb8", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 9455, "upload_time": "2019-09-15T21:13:31", "url": "https://files.pythonhosted.org/packages/10/45/f645103502578966e7e6e9951cc4eb08a75a7fe227d3b960449f671cdc7b/mmemoji-0.2.0.tar.gz" } ] }