Home

Awesome

@favoloso/conventional-changelog-emoji

Travis CI Coveralls npm

Conventional Changelog with Emojis support 🎉

Installation

yarn add --dev @favoloso/conventional-changelog-emoji

or

npm install --save-dev @favoloso/conventional-changelog-emoji

Usage

conventional-changelog -p @favoloso/emoji -i CHANGELOG.md -s

Usage with release-it

You can use conventional-changelog plugin (v11+) with the @favoloso/emoji preset.

"release-it": {
  "plugins": {
    "@release-it/conventional-changelog": {
      "preset": "@favoloso/emoji",
      "infile": "CHANGELOG.md"
    }
  }
}

Lint (and fix) commit messages

This package provides an additional bin script emoji-commit-lint.

The scripts lints and eventually changes commit messages, from traditional conventional changelog format (i.e. feat: Add a magic feature) to corresponding emoji (i.e. ✨ Add a magic feature), checks and applies correct casing (i.e. lower-case) and many more, as configured by Linter Rules.

To use it, install husky

yarn add --dev husky

Now in your package.json add:

{
  "husky": {
    "hooks": {
      "commit-msg": "emoji-commit-lint"
    }
  }
}

Now linter will check your commits. Any commit like <type>: <msg> will be automatically transformed with related emoji. See Available Emojis to see available types.

Configuration

The package works as-is, but its behaviour may be customized with the following options.

Note: This package supports cosmiconfig to provide configuration options with favolosoEmoji module name.

Example config in package.json

{
  "favolosoEmoji": {
    "showEmojiPerCommit": false
  }
}

Available Emojis

<!-- prettier-ignore-start --> <!-- emoji-table -->
EmojiAliasesTypeType AliasesVersion BumpIn Changelog?HeadingOrder
🚨breakingmajor🚨 Breaking Changes10
🌟, 💫, 🌠featminor✨ Features20
🔒securitypatch🔒 Security25
🛠improvementimppatch🛠 Improvements30
⚡️perfperformancepatch⚡️ Performance35
🐛🐞fixpatch🐛 Bug Fixes40
📚📖docsdocpatch📚 Documentation50
🏗⚙️chorechorespatch🏗 Chore60
♻️refactorpatch♻️ Refactoring90
🚦testpatch🚦 Test90
🎨💄stylecleanuppatch🎨 Style90
📦builddepspatch📦 Build90
🔖releasepatch🔖 Release90
🚧wippatch🚧 Wip90
<!-- emoji-table --> <!-- prettier-ignore-end -->