Repolode
carloscuesta

carloscuesta/gitmoji-cli

An interactive command-line client for writing git commit messages with gitmoji emoji prefixes.

Stars
4,829
Forks
212
Open issues
18
Last commit
5 days ago

What is it?

gitmoji-cli is a command-line client for the gitmoji convention, which tags commit messages with an emoji that signals the type of change. Instead of searching the gitmoji list by hand, you can browse, search, and pick an emoji from the terminal, and the tool builds the commit message from your answers to its prompts.

The tool offers two ways to commit: a client mode (`gitmoji -c`) that runs the prompts and commits directly, and a hook mode (`gitmoji -i`) that attaches to `git commit` so the prompts run each time you commit. Commands also let you list all gitmojis, search them by keyword, and sync the emoji list with the upstream repository. A local cache keeps the list usable offline.

Behavior can be configured through a `gitmoji` key in package.json, a `.gitmojirc.json` file, or a global setting. Options include automatic `git add`, emoji format (code or emoji), optional message and scope prompts with predefined scopes, and a custom gitmojis API URL. It is installed with npm or Homebrew.

Key features

  • 01Interactively pick a gitmoji and build a commit message from prompts.
  • 02Runs in client mode or as a git commit hook.
  • 03Lists and searches all available gitmojis from the terminal.
  • 04Works offline with a local cache, and can sync the list on demand.
  • 05Configurable via package.json, .gitmojirc.json, or global settings.

Use cases

  • Keeping commit history consistent across a team that follows the gitmoji convention.
  • Avoiding manual lookup of emoji codes when writing commit messages.
  • Enforcing a commit format in a project by installing the commit hook.

Quick start

  1. 1

    Install gitmoji-cli globally with npm

    npm i -g gitmoji-cli
  2. 2

    Start the interactive commit client

    gitmoji -c

Things to know

  • Uses emoji prefixes, so it only fits teams that follow the gitmoji convention.

In collections

Topics

#git#commit#cli#emoji#conventional-commits#developer-workflow#gitmoji#gitmoji-cli

FAQ

What is gitmoji-cli?
An interactive command-line client for writing git commit messages with gitmoji emoji prefixes. gitmoji-cli is a command-line client for the gitmoji convention, which tags commit messages with an emoji that signals the type of change. Instead of searching the gitmoji list by hand, you can browse, search, and pick an emoji from the terminal, and the tool builds the commit message from your answers to its prompts.
Is gitmoji-cli free to use? What license does it have?
gitmoji-cli is open source under the MIT license. Check the license terms before using it in commercial products.
Is gitmoji-cli still maintained?
Actively maintained. The last commit to gitmoji-cli was on Nov 2, 2026.
What can I use gitmoji-cli for?
Keeping commit history consistent across a team that follows the gitmoji convention. Avoiding manual lookup of emoji codes when writing commit messages. Enforcing a commit format in a project by installing the commit hook.
How do I install gitmoji-cli?
Install gitmoji-cli globally with npm: npm i -g gitmoji-cli Start the interactive commit client: gitmoji -c
Where can I get gitmoji-cli?
The source code and installation instructions are on GitHub: https://github.com/carloscuesta/gitmoji-cli

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects