#git-commit #commit-message #git-hook #emoji #git

app gimoji

Easily add emojis to your git commit messages 🎉

19 releases (3 stable)

1.1.1 Sep 28, 2024
1.1.0 Mar 11, 2024
0.7.6 Feb 20, 2024
0.7.2 Dec 31, 2023
0.5.1 Jun 30, 2023

#919 in Development tools

MIT license

2MB
509 lines

gimoji

Build Status

./screencast

A CLI tool that makes it easy to add emojis to your git commit messages. It's very similar to (and is based on) gitmoji-cli but written in Rust.

Installation

Fedora (>= 37)

sudo dnf install gimoji

Other OSes

cargo install -f gimoji

Usage

gimoji is primarily intended to be used as a git prepare-commit-msg hook. Once installed, ask gimoji to install the hook in your repository:

cd /path/to/your/project/
gimoji --init

Now, whenever you run git commit, gimoji will kick in and prompt you to choose an emoji.

If you launch gimoji directly without any arguments, it will prompt you to choose an emoji and then copy your choice to the system clipboard.

Use --help to see all the available options.

Rationale

gitmoji-cli while being a great tool, can be considerably slow. Hence this project. gimoji has a few differences:

  • it will launch a full-screen terminal UI to choose an emoji, hence emojis on the console.
  • it will only add an emoji prefix to the commit if one is not already present in the commit message (e.g when using -m option of git commit, or when amending a commit).
  • it does not add anything other than an emoji (like scope, summary etc.) to the commit message and lets you do that in your preferred editor.
  • Unlike gitmoji-cli that downloads and caches its emoji database at runtime, gimoji uses a pre-compiled database that is included in the binary itself, hence it's much faster to start up and does not need Internet access.

The philosophy here is to enable you to quickly and easily choose an emoji and get out of your way.

License

MIT

Dependencies

~13–27MB
~415K SLoC