diff --git a/.readthedocs.yml b/.readthedocs.yml new file mode 100644 index 0000000..5db6dec --- /dev/null +++ b/.readthedocs.yml @@ -0,0 +1,36 @@ + +# Read the Docs configuration file for Sphinx projects +# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details + +# Required +version: 2 + +# Set the OS, Python version and other tools you might need +build: + os: ubuntu-22.04 + tools: + python: "3.9" + # You can also specify other tool versions: + # nodejs: "20" + # rust: "1.70" + # golang: "1.20" + +# Build documentation in the "docs/" directory with Sphinx +sphinx: + configuration: docs/conf.py + # You can configure Sphinx to use a different builder, for instance use the + # dirhtml builder for simpler URLs + # builder: "dirhtml" + # Fail on all warnings to avoid broken references + # fail_on_warning: true +# Optionally build your docs in additional formats such as PDF and ePub +# formats: +# - pdf +# - epub + +# Optional but recommended, declare the Python requirements required +# to build your documentation +# See https://docs.readthedocs.io/en/stable/guides/reproducible-builds.html +python: + install: + - requirements: docs/requirements-docs.txt diff --git a/README.md b/README.md index 7aaf92a..65fed2f 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ An interactive Python implementation of the Gitmoji convention: [gitmoji.dev/](h pip install gitmopy ``` -![demo-gitmopy](./assets/demo-gitmopy.gif) +![demo-gitmopy](https://raw.githubusercontent.com/vict0rsch/gitmopy/main/assets/demo-gitmopy.gif) ## How to use @@ -32,7 +32,7 @@ alias gpya="gitmopy commit --add" alias gpyk="gitmopy commit --add --keep-alive" ``` -![gpyk depo](assets/gpyk.png) +![gpyk depo](https://raw.githubusercontent.com/vict0rsch/gitmopy/main/assets/gpyk.png) ## Examples @@ -90,7 +90,7 @@ $ gitmopy commit --help $ gitmopy info gitmopy info: - version : 0.4.1 + version : 0.4.2 app path : /Users/victor/.gitmopy history : /Users/victor/.gitmopy/history.json config : /Users/victor/.gitmopy/config.yaml @@ -101,6 +101,7 @@ Current configuration: skip_message : False capitalize_title: True enable_history : True + emoji_set : gitmoji ``` Update configuration with diff --git a/docs/Makefile b/docs/Makefile new file mode 100644 index 0000000..d4bb2cb --- /dev/null +++ b/docs/Makefile @@ -0,0 +1,20 @@ +# Minimal makefile for Sphinx documentation +# + +# You can set these variables from the command line, and also +# from the environment for the first two. +SPHINXOPTS ?= +SPHINXBUILD ?= sphinx-build +SOURCEDIR = . +BUILDDIR = _build + +# Put it first so that "make" without argument is like "make help". +help: + @$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) + +.PHONY: help Makefile + +# Catch-all target: route all unknown targets to Sphinx using the new +# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS). +%: Makefile + @$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) diff --git a/docs/_static/css/custom.css b/docs/_static/css/custom.css new file mode 100644 index 0000000..e69de29 diff --git a/docs/conf.py b/docs/conf.py new file mode 100644 index 0000000..20319ff --- /dev/null +++ b/docs/conf.py @@ -0,0 +1,122 @@ +# Configuration file for the Sphinx documentation builder. +# +# For the full list of built-in configuration values, see the documentation: +# https://www.sphinx-doc.org/en/master/usage/configuration.html + +# -- Project information ----------------------------------------------------- +# https://www.sphinx-doc.org/en/master/usage/configuration.html#project-information + +project = 'gitmopy' +copyright = '2023, vict0rsch' +author = 'vict0rsch' + +version = '0.4.1' +release = '0.4.1' + +import sys +from pathlib import Path + +ROOT = Path(__file__).resolve().parent.parent +sys.path.insert(0, str(ROOT)) + +# -- General configuration --------------------------------------------------- +# https://www.sphinx-doc.org/en/master/usage/configuration.html#general-configuration + +extensions = [ + "myst_parser", + "sphinx.ext.viewcode", + "sphinx_math_dollar", + "sphinx.ext.mathjax", + "sphinx.ext.autodoc", + "sphinx.ext.intersphinx", + "autoapi.extension", + "sphinx.ext.napoleon", + "sphinx_autodoc_typehints", + "sphinx.ext.todo", + "sphinx_design", + "sphinx_copybutton", + "sphinxext.opengraph", +] + + +templates_path = ['_templates'] +exclude_patterns = ['_build', 'Thumbs.db', '.DS_Store'] + + + +# -- Options for HTML output ------------------------------------------------- +# https://www.sphinx-doc.org/en/master/usage/configuration.html#options-for-html-output + +html_theme = "furo" +html_static_path = ['_static'] +html_css_files = ["css/custom.css"] + +# -- Options for intersphinx extension --------------------------------------- +# https://www.sphinx-doc.org/en/master/usage/extensions/intersphinx.html#configuration + +intersphinx_mapping = { + 'python': ('https://docs.python.org/3', None), +} + +# -- Options for todo extension ---------------------------------------------- +# https://www.sphinx-doc.org/en/master/usage/extensions/todo.html#configuration + +todo_include_todos = True + + +# Configuration section from vipyto: +# ---------------------------------- + +# Configuratiion for sphinx.ext.autodoc & autoapi.extension +# https://autoapi.readthedocs.io/ + +autodoc_typehints = "description" +autoapi_type = "python" +autoapi_dirs = [str(ROOT/ "gitmopy")] +autoapi_member_order = "groupwise" +autoapi_template_dir = "_templates/autoapi" +autoapi_python_class_content = "init" +autoapi_options = [ + "members", + "undoc-members", +] +autoapi_keep_files = False + +# Configuration for sphinx_math_dollar + +# sphinx_math_dollar +# https://www.sympy.org/sphinx-math-dollar/ + +# Note: CHTML is the only output format that works with \mathcal{} +mathjax_path = "https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS_CHTML" +mathjax3_config = { + "tex": { + "inlineMath": [ + ["$", "$"], + ["\\(", "\\)"], + ], + "processEscapes": True, + }, + "jax": ["input/TeX", "output/CommonHTML", "output/HTML-CSS"], +} + +# Configuration for sphinx_autodoc_typehints +# https://github.com/tox-dev/sphinx-autodoc-typehints +typehints_fully_qualified = False +always_document_param_types = True +typehints_document_rtype = True +typehints_defaults = "comma" + +# Configuration for the MyST (markdown) parser +# https://myst-parser.readthedocs.io/en/latest/intro.html +myst_enable_extensions = ["colon_fence"] + +# Configuration for sphinxext.opengraph +# https://sphinxext-opengraph.readthedocs.io/en/latest/ + +ogp_site_url = "TODO" +ogp_social_cards = { + "enable": True, + "image": "./_static/images/SOME_IMAGE", +} + diff --git a/docs/emoji_sets.rst b/docs/emoji_sets.rst new file mode 100644 index 0000000..6c52223 --- /dev/null +++ b/docs/emoji_sets.rst @@ -0,0 +1,35 @@ +Gitmopy's Emoji Sets +===================== + +.. toctree:: + :maxdepth: 2 + + +Select your emoji sets from the command-line: + +.. code-block:: bash + + $ gitmopy config + +Gitmojis +-------- + +Default standard gitmojis are from `gitmoji.dev `_. + +.. literalinclude:: ../gitmopy/assets/gitmojis.yaml + :language: yaml + +AI-Devmojis +----------- + +Alternative gitmojis tailored for AI/ML development. Suggestions are welcome, open a PR/issue on the `gitmopy repo `_. + +.. literalinclude:: ../gitmopy/assets/ai_devmojis.yaml + :language: yaml + +Custom +------ + +You can also define your own emoji sets in a YAML file. Run ``gitmopy info`` to see the path to that custom emojis file on your system. + +Custom emojis are loaded *after* the default emoji set you have selected (gitmojis or ai-devmojis). This means that you can override any emoji from the default set with your own custom emoji. diff --git a/docs/index.rst b/docs/index.rst new file mode 100644 index 0000000..27c45f3 --- /dev/null +++ b/docs/index.rst @@ -0,0 +1,10 @@ +.. include:: ../README.md + :parser: myst_parser.sphinx_ + +.. toctree:: + :hidden: + :maxdepth: 4 + + self + emoji_sets + diff --git a/docs/make.bat b/docs/make.bat new file mode 100644 index 0000000..32bb245 --- /dev/null +++ b/docs/make.bat @@ -0,0 +1,35 @@ +@ECHO OFF + +pushd %~dp0 + +REM Command file for Sphinx documentation + +if "%SPHINXBUILD%" == "" ( + set SPHINXBUILD=sphinx-build +) +set SOURCEDIR=. +set BUILDDIR=_build + +%SPHINXBUILD% >NUL 2>NUL +if errorlevel 9009 ( + echo. + echo.The 'sphinx-build' command was not found. Make sure you have Sphinx + echo.installed, then set the SPHINXBUILD environment variable to point + echo.to the full path of the 'sphinx-build' executable. Alternatively you + echo.may add the Sphinx directory to PATH. + echo. + echo.If you don't have Sphinx installed, grab it from + echo.https://www.sphinx-doc.org/ + exit /b 1 +) + +if "%1" == "" goto help + +%SPHINXBUILD% -M %1 %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O% +goto end + +:help +%SPHINXBUILD% -M help %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O% + +:end +popd diff --git a/docs/requirements-docs.txt b/docs/requirements-docs.txt new file mode 100644 index 0000000..3834de7 --- /dev/null +++ b/docs/requirements-docs.txt @@ -0,0 +1,10 @@ +sphinx +myst-parser +furo +sphinx-copybutton +sphinx-autodoc-typehints +sphinx-autoapi +sphinx-math-dollar +sphinx-design +sphinx-copybutton +sphinxext-opengraph diff --git a/gitmopy/assets/ai_devmojis.yaml b/gitmopy/assets/ai_devmojis.yaml new file mode 100644 index 0000000..e6af40d --- /dev/null +++ b/gitmopy/assets/ai_devmojis.yaml @@ -0,0 +1,149 @@ +- emoji: ๐Ÿง  + description: Add or update a model. + +- emoji: ๐Ÿงฌ + description: Add or update a dataset. + +- emoji: ๐Ÿงฎ + description: Add or update a metric. + +- emoji: ๐Ÿงฉ + description: Add or update a loss function. + +- emoji: ๐Ÿงฑ + description: Add or update a layer. + +- emoji: ๐Ÿ”ข + description: Add or update a numerical algorithm. + +- emoji: ๐Ÿ“‰ + description: Add or update a statistical algorithm. + +- emoji: ๐Ÿ”Š + description: Update logging. + +- emoji: ๐ŸŽฒ + description: Add or update code related to randomness. + +- emoji: ๐Ÿงช + description: Update experiments pipeline. + +- emoji: ๐Ÿ“Š + description: Add or update data visualization. + +- emoji: ๐Ÿ“‹ + description: Add or update data processing pipeline. + +- emoji: ๐Ÿ“„ + description: Add or update documentation. + +- emoji: ๐Ÿงพ + description: Add or update paper. + +- emoji: ๐Ÿ”จ + description: Add or update development scripts. + +- emoji: ๐Ÿ”ง + description: Add or update utility functions. + +- emoji: ๐Ÿ„โ€โ™‚๏ธ + description: Improve function logic. + +- emoji: ๐Ÿ› + description: Fix a bug. + +- emoji: ๐Ÿš‘ + description: Critical hotfix. + +- emoji: ๐Ÿš€ + description: Deploy stuff. + +- emoji: ๐Ÿ“ฆ + description: Add or update compiled files or packages. + +- emoji: ๐Ÿ”ง + description: Add or update configuration files. + +- emoji: ๐Ÿ‘ฅ + description: Add or update contributor(s). + +- emoji: ๐Ÿ” + description: Add or update data exploration. + +- emoji: ๐Ÿงต + description: Add or update code related to multithreading or concurrency. + +- emoji: ๐Ÿง‘โ€๐Ÿ’ป + description: Improve developer experience. + +- emoji: ๐Ÿฉบโ›‘๏ธ + description: Add or update healthcheck. + +- emoji: ๐Ÿงช + description: Work on a test. + +- emoji: ๐Ÿ–๏ธ๐Ÿฉน + description: Simple fix for a non-critical issue. + +- emoji: ๐Ÿšฉ + description: Add, update, or remove flags / command-line arguments. + +- emoji: ๐Ÿฅ… + description: Catch errors. + +- emoji: ๐Ÿท๏ธ + description: Add or update types. + +- emoji: ๐Ÿ™ˆ + description: Add or update a .gitignore file. + +- emoji: ๐Ÿšธ + description: Improve user experience / usability. + +- emoji: ๐Ÿ—๏ธ + description: Make architectural changes. + +- emoji: ๐Ÿ’ก + description: Add or update comments in source code. + +- emoji: ๐Ÿป + description: Write code drunkenly. + +- emoji: ๐Ÿ‘ฝ๏ธ + description: Update code due to external API changes. + +- emoji: ๐Ÿšš + description: "Move or rename resources (e.g.: files, paths, routes)." + +- emoji: ๐Ÿ“„ + description: Add or update license. + +- emoji: ๐Ÿ’ฅ + description: Introduce breaking changes. + +- emoji: ๐Ÿฑ + description: Add or update assets, constants etc. + +- emoji: โœ๏ธ + description: Fix typos. + +- emoji: ๐Ÿ’ฉ + description: Write bad code that needs to be improved. + +- emoji: โช๏ธ + description: Revert changes. + +- emoji: โ™ป๏ธ + description: Refactor code. + +- emoji: ๐ŸŽจ + description: Improve structure / format of the code. + +- emoji: โšก๏ธ + description: Improve performance. + +- emoji: ๐Ÿ”ฅ + description: Remove code or files. + +- emoji: โœจ + description: Introduce new features. diff --git a/gitmopy/assets/gitmojis.yaml b/gitmopy/assets/gitmojis.yaml new file mode 100644 index 0000000..caede7d --- /dev/null +++ b/gitmopy/assets/gitmojis.yaml @@ -0,0 +1,218 @@ +- emoji: ๐ŸŽจ + description: Improve structure / format of the code. + +- emoji: โšก๏ธ + description: Improve performance. + +- emoji: ๐Ÿ”ฅ + description: Remove code or files. + +- emoji: ๐Ÿ› + description: Fix a bug. + +- emoji: ๐Ÿš‘๏ธ + description: Critical hotfix. + +- emoji: โœจ + description: Introduce new features. + +- emoji: ๐Ÿ“ + description: Add or update documentation. + +- emoji: ๐Ÿš€ + description: Deploy stuff. + +- emoji: ๐Ÿ’„ + description: Add or update the UI and style files. + +- emoji: ๐ŸŽ‰ + description: Begin a project. + +- emoji: โœ… + description: Add, update, or pass tests. + +- emoji: ๐Ÿ”’๏ธ + description: Fix security issues. + +- emoji: ๐Ÿ” + description: Add or update secrets. + +- emoji: ๐Ÿ”– + description: Release / Version tags. + +- emoji: ๐Ÿšจ + description: Fix compiler / linter warnings. + +- emoji: ๐Ÿšง + description: Work in progress. + +- emoji: ๐Ÿ’š + description: Fix CI Build. + +- emoji: โฌ‡๏ธ + description: Downgrade dependencies. + +- emoji: โฌ†๏ธ + description: Upgrade dependencies. + +- emoji: ๐Ÿ“Œ + description: Pin dependencies to specific versions. + +- emoji: ๐Ÿ‘ท + description: Add or update CI build system. + +- emoji: ๐Ÿ“ˆ + description: Add or update analytics or track code. + +- emoji: โ™ป๏ธ + description: Refactor code. + +- emoji: โž• + description: Add a dependency. + +- emoji: โž– + description: Remove a dependency. + +- emoji: ๐Ÿ”ง + description: Add or update configuration files. + +- emoji: ๐Ÿ”จ + description: Add or update development scripts. + +- emoji: ๐ŸŒ + description: Internationalization and localization. + +- emoji: โœ๏ธ + description: Fix typos. + +- emoji: ๐Ÿ’ฉ + description: Write bad code that needs to be improved. + +- emoji: โช๏ธ + description: Revert changes. + +- emoji: ๐Ÿ”€ + description: Merge branches. + +- emoji: ๐Ÿ“ฆ๏ธ + description: Add or update compiled files or packages. + +- emoji: ๐Ÿ‘ฝ๏ธ + description: Update code due to external API changes. + +- emoji: ๐Ÿšš + description: "Move or rename resources (e.g.: files, paths, routes)." + +- emoji: ๐Ÿ“„ + description: Add or update license. + +- emoji: ๐Ÿ’ฅ + description: Introduce breaking changes. + +- emoji: ๐Ÿฑ + description: Add or update assets. + +- emoji: โ™ฟ๏ธ + description: Improve accessibility. + +- emoji: ๐Ÿ’ก + description: Add or update comments in source code. + +- emoji: ๐Ÿป + description: Write code drunkenly. + +- emoji: ๐Ÿ’ฌ + description: Add or update text and literals. + +- emoji: ๐Ÿ—ƒ๏ธ + description: Perform database related changes. + +- emoji: ๐Ÿ”Š + description: Add or update logs. + +- emoji: ๐Ÿ”‡ + description: Remove logs. + +- emoji: ๐Ÿ‘ฅ + description: Add or update contributor(s). + +- emoji: ๐Ÿšธ + description: Improve user experience / usability. + +- emoji: ๐Ÿ—๏ธ + description: Make architectural changes. + +- emoji: ๐Ÿ“ฑ + description: Work on responsive design. + +- emoji: ๐Ÿคก + description: Mock things. + +- emoji: ๐Ÿฅš + description: Add or update an easter egg. + +- emoji: ๐Ÿ™ˆ + description: Add or update a .gitignore file. + +- emoji: ๐Ÿ“ธ + description: Add or update snapshots. + +- emoji: โš—๏ธ + description: Perform experiments. + +- emoji: ๐Ÿ”๏ธ + description: Improve SEO. + +- emoji: ๐Ÿท๏ธ + description: Add or update types. + +- emoji: ๐ŸŒฑ + description: Add or update seed files. + +- emoji: ๐Ÿšฉ + description: Add, update, or remove feature flags. + +- emoji: ๐Ÿฅ… + description: Catch errors. + +- emoji: ๐Ÿ’ซ + description: Add or update animations and transitions. + +- emoji: ๐Ÿ—‘๏ธ + description: Deprecate code that needs to be cleaned up. + +- emoji: ๐Ÿ›‚ + description: Work on code related to authorization, roles and permissions. + +- emoji: ๐Ÿ–๏ธ๐Ÿฉน + description: Simple fix for a non-critical issue. + +- emoji: ๐Ÿง + description: Data exploration/inspection. + +- emoji: โšฐ๏ธ + description: Remove dead code. + +- emoji: ๐Ÿงช + description: Add a failing test. + +- emoji: ๐Ÿ‘” + description: Add or update business logic. + +- emoji: ๐Ÿฉบโ›‘๏ธ + description: Add or update healthcheck. + +- emoji: ๐Ÿงฑ + description: Infrastructure related changes. + +- emoji: ๐Ÿง‘โ€๐Ÿ’ป + description: Improve developer experience. + +- emoji: ๐Ÿ’ธ + description: Add sponsorships or money related infrastructure. + +- emoji: ๐Ÿงต + description: Add or update code related to multithreading or concurrency. + +- emoji: โœ…๐Ÿฆบ + description: Add or update code related to validation. diff --git a/gitmopy/constants.py b/gitmopy/constants.py index 4745072..4971adb 100644 --- a/gitmopy/constants.py +++ b/gitmopy/constants.py @@ -5,6 +5,7 @@ from pathlib import Path import typer +from yaml import safe_load APP_PATH = ( Path(expandvars(typer.get_app_dir("gitmopy", force_posix=True))) @@ -101,508 +102,14 @@ """ # https://github.com/carloscuesta/gitmoji/blob/master/packages/gitmojis/src/gitmojis.json -GITMOJIS = [ - { - "emoji": "๐ŸŽจ", - "description": "Improve structure / format of the code.", - }, - { - "emoji": "โšก๏ธ", - "description": "Improve performance.", - }, - { - "emoji": "๐Ÿ”ฅ", - "description": "Remove code or files.", - }, - { - "emoji": "๐Ÿ›", - "description": "Fix a bug.", - }, - { - "emoji": "๐Ÿš‘๏ธ", - "description": "Critical hotfix.", - }, - { - "emoji": "โœจ", - "description": "Introduce new features.", - }, - { - "emoji": "๐Ÿ“", - "description": "Add or update documentation.", - }, - { - "emoji": "๐Ÿš€", - "description": "Deploy stuff.", - }, - { - "emoji": "๐Ÿ’„", - "description": "Add or update the UI and style files.", - }, - { - "emoji": "๐ŸŽ‰", - "description": "Begin a project.", - }, - { - "emoji": "โœ…", - "description": "Add, update, or pass tests.", - }, - { - "emoji": "๐Ÿ”’๏ธ", - "description": "Fix security issues.", - }, - { - "emoji": "๐Ÿ”", - "description": "Add or update secrets.", - }, - { - "emoji": "๐Ÿ”–", - "description": "Release / Version tags.", - }, - { - "emoji": "๐Ÿšจ", - "description": "Fix compiler / linter warnings.", - }, - { - "emoji": "๐Ÿšง", - "description": "Work in progress.", - }, - { - "emoji": "๐Ÿ’š", - "description": "Fix CI Build.", - }, - { - "emoji": "โฌ‡๏ธ", - "description": "Downgrade dependencies.", - }, - { - "emoji": "โฌ†๏ธ", - "description": "Upgrade dependencies.", - }, - { - "emoji": "๐Ÿ“Œ", - "description": "Pin dependencies to specific versions.", - }, - { - "emoji": "๐Ÿ‘ท", - "description": "Add or update CI build system.", - }, - { - "emoji": "๐Ÿ“ˆ", - "description": "Add or update analytics or track code.", - }, - { - "emoji": "โ™ป๏ธ", - "description": "Refactor code.", - }, - { - "emoji": "โž•", - "description": "Add a dependency.", - }, - { - "emoji": "โž–", - "description": "Remove a dependency.", - }, - { - "emoji": "๐Ÿ”ง", - "description": "Add or update configuration files.", - }, - { - "emoji": "๐Ÿ”จ", - "description": "Add or update development scripts.", - }, - { - "emoji": "๐ŸŒ", - "description": "Internationalization and localization.", - }, - { - "emoji": "โœ๏ธ", - "description": "Fix typos.", - }, - { - "emoji": "๐Ÿ’ฉ", - "description": "Write bad code that needs to be improved.", - }, - { - "emoji": "โช๏ธ", - "description": "Revert changes.", - }, - { - "emoji": "๐Ÿ”€", - "description": "Merge branches.", - }, - { - "emoji": "๐Ÿ“ฆ๏ธ", - "description": "Add or update compiled files or packages.", - }, - { - "emoji": "๐Ÿ‘ฝ๏ธ", - "description": "Update code due to external API changes.", - }, - { - "emoji": "๐Ÿšš", - "description": "Move or rename resources (e.g.: files, paths, routes).", - }, - { - "emoji": "๐Ÿ“„", - "description": "Add or update license.", - }, - { - "emoji": "๐Ÿ’ฅ", - "description": "Introduce breaking changes.", - }, - { - "emoji": "๐Ÿฑ", - "description": "Add or update assets.", - }, - { - "emoji": "โ™ฟ๏ธ", - "description": "Improve accessibility.", - }, - { - "emoji": "๐Ÿ’ก", - "description": "Add or update comments in source code.", - }, - { - "emoji": "๐Ÿป", - "description": "Write code drunkenly.", - }, - { - "emoji": "๐Ÿ’ฌ", - "description": "Add or update text and literals.", - }, - { - "emoji": "๐Ÿ—ƒ๏ธ", - "description": "Perform database related changes.", - }, - { - "emoji": "๐Ÿ”Š", - "description": "Add or update logs.", - }, - { - "emoji": "๐Ÿ”‡", - "description": "Remove logs.", - }, - { - "emoji": "๐Ÿ‘ฅ", - "description": "Add or update contributor(s).", - }, - { - "emoji": "๐Ÿšธ", - "description": "Improve user experience / usability.", - }, - { - "emoji": "๐Ÿ—๏ธ", - "description": "Make architectural changes.", - }, - { - "emoji": "๐Ÿ“ฑ", - "description": "Work on responsive design.", - }, - { - "emoji": "๐Ÿคก", - "description": "Mock things.", - }, - { - "emoji": "๐Ÿฅš", - "description": "Add or update an easter egg.", - }, - { - "emoji": "๐Ÿ™ˆ", - "description": "Add or update a .gitignore file.", - }, - { - "emoji": "๐Ÿ“ธ", - "description": "Add or update snapshots.", - }, - { - "emoji": "โš—๏ธ", - "description": "Perform experiments.", - }, - { - "emoji": "๐Ÿ”๏ธ", - "description": "Improve SEO.", - }, - { - "emoji": "๐Ÿท๏ธ", - "description": "Add or update types.", - }, - { - "emoji": "๐ŸŒฑ", - "description": "Add or update seed files.", - }, - { - "emoji": "๐Ÿšฉ", - "description": "Add, update, or remove feature flags.", - }, - { - "emoji": "๐Ÿฅ…", - "description": "Catch errors.", - }, - { - "emoji": "๐Ÿ’ซ", - "description": "Add or update animations and transitions.", - }, - { - "emoji": "๐Ÿ—‘๏ธ", - "description": "Deprecate code that needs to be cleaned up.", - }, - { - "emoji": "๐Ÿ›‚", - "description": "Work on code related to authorization, roles and permissions.", - }, - { - "emoji": "๐Ÿ–๏ธ๐Ÿฉน", - "description": "Simple fix for a non-critical issue.", - }, - { - "emoji": "๐Ÿง", - "description": "Data exploration/inspection.", - }, - { - "emoji": "โšฐ๏ธ", - "description": "Remove dead code.", - }, - { - "emoji": "๐Ÿงช", - "description": "Add a failing test.", - }, - { - "emoji": "๐Ÿ‘”", - "description": "Add or update business logic.", - }, - { - "emoji": "๐Ÿฉบโ›‘๏ธ", - "description": "Add or update healthcheck.", - }, - { - "emoji": "๐Ÿงฑ", - "description": "Infrastructure related changes.", - }, - { - "emoji": "๐Ÿง‘โ€๐Ÿ’ป", - "description": "Improve developer experience.", - }, - { - "emoji": "๐Ÿ’ธ", - "description": "Add sponsorships or money related infrastructure.", - }, - { - "emoji": "๐Ÿงต", - "description": "Add or update code related to multithreading or concurrency.", - }, - { - "emoji": "โœ…๐Ÿฆบ", - "description": "Add or update code related to validation.", - }, -] +GITMOJIS = safe_load((Path(__file__).parent / "assets/gitmojis.yaml").read_text()) """ List of emojis and their code and description according to https://gitmoji.dev/ """ -AI_DEVMOJIS = [ - { - "emoji": "๐Ÿง ", - "description": "Add or update a model.", - }, - { - "emoji": "๐Ÿงฌ", - "description": "Add or update a dataset.", - }, - { - "emoji": "๐Ÿงฎ", - "description": "Add or update a metric.", - }, - { - "emoji": "๐Ÿงฉ", - "description": "Add or update a loss function.", - }, - { - "emoji": "๐Ÿงฑ", - "description": "Add or update a layer.", - }, - { - "emoji": "๐Ÿ”ข", - "description": "Add or update a numerical algorithm.", - }, - { - "emoji": "๐Ÿ“‰", - "description": "Add or update a statistical algorithm.", - }, - { - "emoji": "๐Ÿ”Š", - "description": "Update logging.", - }, - { - "emoji": "๐ŸŽฒ", - "description": "Add or update code related to randomness.", - }, - { - "emoji": "๐Ÿงช", - "description": "Update experiments pipeline.", - }, - { - "emoji": "๐Ÿ“Š", - "description": "Add or update data visualization.", - }, - { - "emoji": "๐Ÿ“‹", - "description": "Add or update data processing pipeline.", - }, - { - "emoji": "๐Ÿ“„", - "description": "Add or update documentation.", - }, - { - "emoji": "๐Ÿงพ", - "description": "Add or update paper.", - }, - { - "emoji": "๐Ÿ”จ", - "description": "Add or update development scripts.", - }, - { - "emoji": "๐Ÿ”ง", - "description": "Add or update utility functions.", - }, - { - "description": "Improve function logic.", - "emoji": "๐Ÿ„โ€โ™‚๏ธ", - }, - { - "emoji": "๐Ÿ›", - "description": "Fix a bug.", - }, - { - "emoji": "๐Ÿš‘", - "description": "Critical hotfix.", - }, - { - "emoji": "๐Ÿš€", - "description": "Deploy stuff.", - }, - { - "emoji": "๐Ÿ“ฆ", - "description": "Add or update compiled files or packages.", - }, - { - "emoji": "๐Ÿ”ง", - "description": "Add or update configuration files.", - }, - { - "emoji": "๐Ÿ‘ฅ", - "description": "Add or update contributor(s).", - }, - { - "emoji": "๐Ÿ”", - "description": "Add or update data exploration.", - }, - { - "emoji": "๐Ÿงต", - "description": "Add or update code related to multithreading or concurrency.", - }, - { - "emoji": "๐Ÿง‘โ€๐Ÿ’ป", - "description": "Improve developer experience.", - }, - { - "emoji": "๐Ÿฉบโ›‘๏ธ", - "description": "Add or update healthcheck.", - }, - { - "emoji": "๐Ÿงช", - "description": "Work on a test.", - }, - { - "emoji": "๐Ÿ–๏ธ๐Ÿฉน", - "description": "Simple fix for a non-critical issue.", - }, - { - "emoji": "๐Ÿšฉ", - "description": "Add, update, or remove flags / command-line arguments.", - }, - { - "emoji": "๐Ÿฅ…", - "description": "Catch errors.", - }, - { - "emoji": "๐Ÿท๏ธ", - "description": "Add or update types.", - }, - { - "emoji": "๐Ÿ™ˆ", - "description": "Add or update a .gitignore file.", - }, - { - "emoji": "๐Ÿšธ", - "description": "Improve user experience / usability.", - }, - { - "emoji": "๐Ÿ—๏ธ", - "description": "Make architectural changes.", - }, - { - "emoji": "๐Ÿ’ก", - "description": "Add or update comments in source code.", - }, - { - "emoji": "๐Ÿป", - "description": "Write code drunkenly.", - }, - { - "emoji": "๐Ÿ‘ฝ๏ธ", - "description": "Update code due to external API changes.", - }, - { - "emoji": "๐Ÿšš", - "description": "Move or rename resources (e.g.: files, paths, routes).", - }, - { - "emoji": "๐Ÿ“„", - "description": "Add or update license.", - }, - { - "emoji": "๐Ÿ’ฅ", - "description": "Introduce breaking changes.", - }, - { - "emoji": "๐Ÿฑ", - "description": "Add or update assets, constants etc.", - }, - { - "emoji": "โœ๏ธ", - "description": "Fix typos.", - }, - { - "emoji": "๐Ÿ’ฉ", - "description": "Write bad code that needs to be improved.", - }, - { - "emoji": "โช๏ธ", - "description": "Revert changes.", - }, - { - "emoji": "โ™ป๏ธ", - "description": "Refactor code.", - }, - { - "emoji": "๐ŸŽจ", - "description": "Improve structure / format of the code.", - }, - { - "emoji": "โšก๏ธ", - "description": "Improve performance.", - }, - { - "emoji": "๐Ÿ”ฅ", - "description": "Remove code or files.", - }, - { - "emoji": "โœจ", - "description": "Introduce new features.", - }, -] +AI_DEVMOJIS = safe_load((Path(__file__).parent / "assets/ai_devmojis.yaml").read_text()) """ -List of emojis and their code and description according to a new standard +List of emojis and their code and description according to a custom specification tailored for AI/ML projects and development. """