{"id":13411326,"url":"https://github.com/carloscuesta/gitmoji-cli","last_synced_at":"2025-05-13T23:06:28.649Z","repository":{"id":37735703,"uuid":"74069926","full_name":"carloscuesta/gitmoji-cli","owner":"carloscuesta","description":"A gitmoji interactive cli tool for using emojis on commits. 💻","archived":false,"fork":false,"pushed_at":"2025-04-08T18:49:47.000Z","size":6257,"stargazers_count":4708,"open_issues_count":20,"forks_count":207,"subscribers_count":22,"default_branch":"master","last_synced_at":"2025-04-10T01:03:16.566Z","etag":null,"topics":["cli","emoji","gitmoji","gitmoji-cli"],"latest_commit_sha":null,"homepage":"https://www.npmjs.com/package/gitmoji-cli","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/carloscuesta.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":".github/CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":["carloscuesta"],"custom":["https://paypal.me/carloscuesta"]}},"created_at":"2016-11-17T21:40:32.000Z","updated_at":"2025-04-09T08:55:08.000Z","dependencies_parsed_at":"2022-07-13T10:50:32.480Z","dependency_job_id":"9e085fe9-ddfb-4532-aed4-ee84419f1325","html_url":"https://github.com/carloscuesta/gitmoji-cli","commit_stats":{"total_commits":870,"total_committers":49,"mean_commits":"17.755102040816325","dds":0.5333333333333333,"last_synced_commit":"ef2a430aa494924226b3281ad5079f21d1b8d0b3"},"previous_names":[],"tags_count":121,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/carloscuesta%2Fgitmoji-cli","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/carloscuesta%2Fgitmoji-cli/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/carloscuesta%2Fgitmoji-cli/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/carloscuesta%2Fgitmoji-cli/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/carloscuesta","download_url":"https://codeload.github.com/carloscuesta/gitmoji-cli/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248137892,"owners_count":21053775,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cli","emoji","gitmoji","gitmoji-cli"],"created_at":"2024-07-30T20:01:12.938Z","updated_at":"2025-04-10T01:03:31.763Z","avatar_url":"https://github.com/carloscuesta.png","language":"JavaScript","readme":"# gitmoji-cli\n\n[![Build Status](https://img.shields.io/github/actions/workflow/status/carloscuesta/gitmoji-cli/ci.yml?branch=master\u0026style=flat-square)](https://github.com/carloscuesta/gitmoji-cli/actions?query=workflow%3ACI+branch%3Amaster)\n[![Code Climate](https://img.shields.io/codeclimate/maintainability/carloscuesta/gitmoji-cli.svg?style=flat-square)](https://codeclimate.com/github/carloscuesta/gitmoji-cli)\n[![Codecov](https://img.shields.io/codecov/c/github/carloscuesta/gitmoji-cli.svg?style=flat-square)](https://github.com/carloscuesta/gitmoji-cli)\n[![npm version](https://img.shields.io/npm/v/gitmoji-cli.svg?style=flat-square)](https://www.npmjs.com/package/gitmoji-cli)\n[![npm downloads](https://img.shields.io/npm/dt/gitmoji-cli.svg?style=flat-square)](https://www.npmjs.com/package/gitmoji-cli)\n[![gitmoji badge](https://img.shields.io/badge/gitmoji-%20😜%20😍-FFDD67.svg?style=flat-square)](https://github.com/carloscuesta/gitmoji)\n\n![gitmoji-cli](https://cloud.githubusercontent.com/assets/7629661/20454643/11eb9e40-ae47-11e6-90db-a1ad8a87b495.gif)\n\n\u003e A [gitmoji](https://github.com/carloscuesta/gitmoji) interactive client for using gitmojis on commit messages.\n\n## About\n\nThis project provides an easy solution for using [**gitmoji**](https://github.com/carloscuesta/gitmoji) from your command line. Gitmoji-cli solves the hassle of searching through the gitmoji list. Includes a bunch of options you can play with! :tada:\n\n## Install\n\n### npm\n\n```bash\nnpm i -g gitmoji-cli\n```\n\n### brew\n\n```bash\nbrew install gitmoji\n```\n\n## Usage\n\n```bash\ngitmoji --help\n```\n\n```\nA gitmoji interactive client for using gitmojis on commit messages.\n\n  Usage\n    $ gitmoji\n  Options\n    --init, -i      Initialize gitmoji as a commit hook\n    --remove, -r    Remove a previously initialized commit hook\n    --config, -g    Setup gitmoji-cli preferences.\n    --commit, -c    Interactively commit using the prompts\n    --list, -l      List all the available gitmojis\n    --search, -s    Search gitmojis\n    --version, -v   Print gitmoji-cli installed version\n    --update, -u    Sync emoji list with the repo\n```\n\n### Commit\n\nYou can use the commit functionality in two ways, directly or via a commit-hook.\n\nIf you want to integrate `gitmoji-cli` in your project I would recommend going for the **hook mode** as it support more use cases, it's more flexible and has a better integration with other tools, whereas the **client mode** is more quick and easy to use.\n\n#### Client\n\nStart the interactive commit client, to auto generate your commit based on your prompts.\n\n```bash\ngitmoji -c\n```\n\n##### Options\n\nYou can pass default values to the prompts using the following flags:\n\n- `title`: For setting the commit title.\n- `message`: For setting the commit message.\n- `scope`: For setting the commit scope.\n\nThose flags should be used like this:\n\n```bash\ngitmoji -c --title=\"Commit\" --message=\"Message\" --scope=\"Scope\"\n```\n\n#### Hook\n\nRun the init option, add your changes and commit them, after that the prompts will begin and your commit message will be built.\n\n```bash\ngitmoji -i\ngit add .\ngit commit\n```\n\n⚠️ The hook **should not be used** with the `gitmoji -c` command.\n\n![gitmoji commit](https://user-images.githubusercontent.com/7629661/41189947-1de56124-6bd6-11e8-9567-e7f1a8e99500.png)\n\n### Search\n\nSearch using specific keywords to find the right gitmoji.\n\n```bash\ngitmoji -s \"criteria\"\n```\n\n![gitmoji search](https://user-images.githubusercontent.com/7629661/41189878-d24a3b78-6bd4-11e8-8d47-c8edf3b87e53.png)\n\n\n### List\n\nPretty print all the available gitmojis.\n\n```bash\ngitmoji -l\n```\n\n![gitmoji list](https://user-images.githubusercontent.com/7629661/41189877-d22b145a-6bd4-11e8-97f8-a8e36bcab062.png)\n\n### Update\n\nUpdate the gitmojis list, by default the first time you run gitmoji, the cli creates a cache to allow using this tool without internet connection.\n\n```bash\ngitmoji -u\n```\n\n### Config\n\nThe cli has some built-in configuration options that you can tweak at your own preference:\n\n- **Automatic git add**: Enable or disable the automatic `git add .` every time you use the commit command.\n- **Emoji format**: Switch between the emoji format.\n- **Message prompt**: Enable or disable the message prompt.\n- **Scope prompt**: Enable or disable [conventional commits scope prompt](https://www.conventionalcommits.org/en/v1.0.0/#summary).\n- **Gitmojis api URL**: Set a custom URL to use it as the library of gitmojis.\n\nYou can configure these options via (in order of precedence):\n\n- A `gitmoji` key in your `package.json` file\n- A `.gitmojirc.json` file.\n- Using the global cli configuration.\n\nIf no user configuration is found, a set of default values will be used.\n\n#### `package.json`\n\n```json\n{\n  \"gitmoji\": {\n    \"autoAdd\": false,\n    \"emojiFormat\": \"code | emoji\",\n    \"scopePrompt\": false,\n    \"messagePrompt\": false,\n    \"capitalizeTitle\": true,\n    \"gitmojisUrl\": \"https://gitmoji.dev/api/gitmojis\"\n  }\n}\n```\n\n#### `.gitmojirc.json`\n\n```json\n{\n  \"autoAdd\": false,\n  \"emojiFormat\": \"code | emoji\" ,\n  \"scopePrompt\": false,\n  \"messagePrompt\": false,\n  \"capitalizeTitle\": true,\n  \"gitmojisUrl\": \"https://gitmoji.dev/api/gitmojis\"\n}\n```\n\n#### Local configuration\n\nRun `gitmoji -g` to setup some gitmoji-cli preferences.\n\n![gitmoji config](https://user-images.githubusercontent.com/7629661/41189876-d21167ee-6bd4-11e8-9008-4c987502f307.png)\n","funding_links":["https://github.com/sponsors/carloscuesta","https://paypal.me/carloscuesta"],"categories":["JavaScript","Version Control","Please find below the links to awesome cheat-sheet and resources:","Development","cli","Terminal"],"sub_categories":["Emoji","Git:","PostCSS"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcarloscuesta%2Fgitmoji-cli","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcarloscuesta%2Fgitmoji-cli","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcarloscuesta%2Fgitmoji-cli/lists"}