/minimalcommit

A minimalist approach toward git commits to keep commits simple.

Primary LanguageJavaScriptISC LicenseISC

Minimal Commit

A minimalist approach toward git commit to keep commits simple.

Minimal Commit Image

What is Minimal Commit?

Minimal commit is a Node.js based CLI (command line interface) tool that helps you and your team mates to stay consistent with the git commit messages. To commit files using Minimal Commit, you have a list of options to choose from, this list consist type of work you did. This makes things simple and less confusing by choosing an option from a list.

The list of options is limited to only nine types. This is done on purpose to keep the list as short as possible to avoid confusion. The more options you have, the more confusing it will be.

Types

Following are the nine types of commits.

  • ✨ feat to be used for a new feature
  • πŸ› fix to be used for bug fixes
  • πŸ’₯ break to be used for breaking changes
  • ♻️ ref to be used for making code/folder refactor
  • πŸ§ͺ test to be used for writing test cases
  • πŸ”– ver to be used for version changes
  • πŸ“ docs to be used for documentation
  • 🎨 style to be used for CSS changes
  • πŸ›  config for configuration, and dependencies changes
  • πŸ“¦ misc to be used for others

Installation

To install Minimal Commit, you can use the following command.

npm install -g minimalcommit

Why Minimal Commit?

  • Straight Forward
  • Easy to read
  • Visually appealing

Usage

mct

Minimal Commit demo

How to write commits?

Here’s the general syntax of Minimal Commit.

<type>: <message>

⚠️ All of the commits must be written in the present tense. Following are some examples:

✨ feat: added sign-up feature ❌
✨ feat: add sign up feature βœ…

πŸ›  config: removed extra extension files ❌
πŸ›  config: remove extra extension files βœ…

The commit title should be precise, and to the point but at the same time, it shouldn't be vague. All of the extra details should go in the description (⚠️ Descriptions are not supported yet.)

✨ feat: add new feature ❌
✨ feat: add sign up feature with forgot password and auth with Google ❌
✨ feat: add sign up feature using OAuth βœ…
✨ feat: add sign up feature βœ…

Following are some more examples:

πŸ›  config: add .gitignore file
♻️ ref: move functions to helper.js
πŸ“¦ misc: add initial test cases
πŸ“¦ docs: update docs with v2.0 features

Examples

  • You added .yaml file for GitHub Actions

✨ config: add .yaml file for github actions

  • You added some tests cases for the user interface

πŸ“¦ misc: add test cases for ui

  • You moved some part of the code to components folder

♻️ ref: move pages code into components

  • You updated the code that caused some breaking changes

πŸ’₯break: update sign-up api endpoints

  • You made some changes to the user interface

🎨 style: update the auto pages

Contributing

All code contributions, must go through a pull request and be approved by the maintainer before being merged. This is to ensure a proper review of all the code. We truly ❀️ pull requests! If you wish to help, you can learn more about how you can contribute to this project in the contribution guide.

Support

If you like the work, please give this repo a ⭐️ and feel free to contribute to this project through issues, and pull requests.