JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 7
  • Score
    100M100P100Q35354F
  • License MIT

A Git plugin that adds emojis to commit messages, improving readability and consistency in your commit history. Helps enforce Conventional Commits, making it easier for teams to automate versioning and generate changelogs. Integrates with tools like Commitizen and Gitmoji.

Package Exports

  • commit-jazzer

Readme

commit-jazzer 🎢πŸ’₯

CI status npm downloads npm license version

Commitizen adapter for formatting commit messages with style and rhythm. 🎸🎀

🎸 Add style and rhythm to your commits! With commit-jazzer, every commit becomes more than just a messageβ€”it's a true masterpiece. Follow best practices and format your messages with emojis that add fun and professionalism to your development process.

Table of Contents

  1. πŸŽ₯ Demo
  2. πŸ” Description
  3. ⚑ Features
  4. πŸ’» Installation and Usage
  5. βš™οΈ Configuration
  6. 🀝 Contributing
  7. πŸ“œ Code of Conduct
  8. πŸ”’ Security Policy
  9. πŸ‘₯ Team
  10. πŸ“„ License

Demo

commit-jazzer

πŸ” Description

commit-jazzer is a tool that introduces a touch of musical flair into your Git commit messages. Built on the solid foundation of Commitizen, it allows you to follow commit conventions and spice up your messages with emojis. Instead of just typing standard commit texts, you'll choose commit types, write descriptions, andβ€”just like in jazzβ€”improvise to create a symphony of commits.

🎷 Jazz your commits: It's not just about structureβ€”it's about creativity. Transform your commits into something dynamic, creative, and fun!

⚑ Features

  • 🎢 Musical Commit Messages: Format your commits with delightful emojis like 🎸, πŸ›, πŸ’„, and more.
  • ⚑ Quick Setup: Easy installation and integration into your project.
  • 🎼 Predefined Commit Types: Choose from predefined types and descriptions to maintain consistency.
  • πŸ›  Bad Word Handling: Automatically handles undesirable words in commit messages and helps you avoid inappropriate expressions.
  • πŸ”§ Flexible Configuration: Customize commit templates and type schemes for a personal touch.

πŸ’» Installation and Usage

Globally

Install commitizen globally, if you have not already.

npm install commitizen -g

Install your preferred commitizen adapter globally (for example commit-jazzer).

npm install commit-jazzer -g

Create a .czrc file in your home directory, with path referring to the preferred, globally-installed, commitizen adapter

echo '{ "path": "cz-conventional-changelog" }' > ~/.czrc

You are all set! Now cd into any git repository and use git cz and you will find the commit-jazzer prompt.

Locally

To install commit-jazzer as a development dependency, run::

npm install --save-dev commit-jazzer

Then, add this configuration to your package.json:

"config": {
  "commitizen": {
    "path": "commit-jazzer"
  }
}

After installation, simply run:

git cz

βš™οΈ Configuration

This configuration file is used to customize the behavior of commit-jazzer without modifying the source code.

Example Configuration File

{
  "$schema": "./node_modules/commit-jazzer/commit-jazzer-schema.json",
  "language": "en",
  "template": "{{type}}: {{emoji}} - {{title}}",
  "availableCommitTypes": ["init", "fix", "refactor"],
  "availablePromptQuestions": ["type", "title"],
  "commitTypes": {
    "rocket": {
      "emoji": "πŸš€",
      "code": "πŸš€",
      "description": "Deploying application"
    }
  },
  "baseQuestionsOptions": [
    {
      "name": "title",
      "message": "My custom message",
      "options": {
        "required": true,
        "skip": false,
        "validations": {
          "length": {
            "minMessageLength": 0,
            "maxMessageLength": 10
          }
        }
      }
    }
  ],
  "validateCommitBadWords": true,
  "badWordsOptions": {
    "checkHasProfaneWords": true,
    "clearMessage": true,
    "replaceProfaneWords": true,
    "options": {
      "additionalBlockWords": ["bogdan", "oleg", "nikita"],
      "excludedWords": ["fool"],
      "placeholder": "*",
      "overrideBlockWords": false
    }
  }
}

🀝 Contributing

We'd love for you to contribute to commit-jazzer! Whether it's reporting bugs, suggesting features, or submitting pull requests, your help is always appreciated.

How to contribute:

  1. Fork the repository.
  2. Create a new branch (git checkout -b feature/your-feature).
  3. Make your changes.
  4. Commit your changes (git commit -am 'Add new feature').
  5. Push to the branch (git push origin feature/your-feature).
  6. Open a pull request.

πŸ“œ Code of Conduct

Please follow our Code of Conduct when participating in this project to ensure a welcoming and productive atmosphere.

πŸ”’ Security Policy

Security is our priority. If you encounter any issues, please read our full Security Policy to report vulnerabilities safely and responsibly.

πŸ‘₯ Team

These folks keep the project moving and are resources for help.

Artemev Alexandr - Avatar
Artemev A. A.

πŸ“„ License

License commit-jazzer is licensed under the MIT License.

Be part of the musical process! 🎢 Add some rhythm and style to your commits with commit-jazzer and turn your workflow into a masterpiece! 🎸