Skip to content

A highly configurable CLI tool for writing conventional commits

License

Notifications You must be signed in to change notification settings

stefanlogue/meteor

Repository files navigation

️☄ meteor ☄

GitHub Release
Meteor is a simple, highly customisable CLI tool that helps you to write conventional commits with git.

You can call meteor where you'd normally type git commit. All flags supported in git commit will still work.

Demo

Installation

Homebrew

brew tap stefanlogue/tools
brew install meteor

Go

Install with Go (1.21+):

go install github.com/stefanlogue/meteor@latest

Or grab a binary from the latest release.

Customisation

You can customise the options available by creating a .meteor.json file anywhere in the directory tree (at or above the current working directory). The config file closest to the current working directory will be preferred. This enables you to have different configs for different parent directories, such as one for your personal work, one for your actual work, one for open source work etc. For global configurations you can create a config.json file in the ~/.config/meteor/ directory.

Demo with boards

The content should be in the following format:

{
  "boards": [
    { "name": "COMP" },
    { "name": "PERS" }
  ],
  "coauthors": [
    { "name": "John Doe", "email": "john.doe@email.com" }
  ],
  "prefixes": [
    { "type":  "feat", "description":  "a new feature"},
    { "type":  "fix", "description":  "a bug fix"},
    { "type":  "bug", "description":  "introducing a bug"}
  ],
  "commitTitleCharLimit": 60
}

If you use boards (Jira etc) but need a way to have commits without one, add the following to the boards array:

{
  "boards": [
    { "name": "COMP" },
    { "name": "NONE" }
  ]
}

And if you want to skip the intro screen to save a keypress, add the following to your config:

{
  "showIntro": false
}