npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

commit-prettier

v1.1.1

Published

Format git commit messages with creative emojis

Readme

commit-prettier

commit-prettier is a light-weight CLI that enhances your commit messages by appending an emoji related to the type of commit you make. It seamlessly integrates with commitlint, supporting all standard commit types including: | Type | Emoji | | ------------- | ------------- | | build | 🏗️ | | chore | 🧹 | | ci | 👷 | | docs | 📄 | | feat | ✨ | | fix | 🐛 | | perf | ⚡️ | | refactor | ♻️ | | revert | ⏪️ | | style | 🌈 | | test | 🧪 |

Features

  • Emoji Prefixes: Automatically adds an emoji as a prefix to your commit messages after they pass commitlint checks, making your commit history more expressive and easier to navigate.
  • Branch Name Prefixes: Automatically adds branch name into commit scope if there is no scope provided (default is off).
  • Commitlint Compatibility: Fully compatible with all commitlint types, ensuring your commit messages are both fun and professional.
  • Easy Integration: Works with existing git hooks and can be integrated smoothly into your workflow.

Getting Started

Installation

Using npm:

npm install --save-dev commit-prettier

or if you prefer using Yarn:

yarn add --dev commit-prettier

Setup

To integrate commit-prettier with Husky (version >= 6.0.0), follow these steps:

  1. First, ensure you have Husky installed. If not, please follow the instructions.
  2. Create a commit-msg file in the .husky directory with the following content:
#!/usr/bin/env sh
. "$(dirname -- "$0")/_/husky.sh"

npm run commit-prettier $1
  1. Add commit-prettier command into package.json:
{
  "scripts": {
    "commit-prettier": "commit-prettier --branch"
  }
}

NOTE: Make sure to make the script executable by running:

chmod +x .husky/commit-msg

That's all!

Optional: work with conventional commits

It's a great idea to integrate commit-prettier with commitlint. To make it work, please follow the following steps:

  1. Install @commitlint/cli and @commitlint/config-conventional and save as devDependencies:
npm install --save-dev @commitlint/cli @commitlint/config-conventional

or

yarn add --dev @commitlint/cli @commitlint/config-conventional
  1. Inside the .husky/commit-msg:
#!/usr/bin/env sh
. "$(dirname -- "$0")/_/husky.sh"

npm run commitlint $1 # Add this command before commit-prettier

npm run commit-prettier $1
  1. Add commitlint command into package.json:
{
  "scripts": {
    "commitlint": "commitlint --edit"
  }
}
  1. Add commitlint.config.js in the project root directory:
module.exports = {
  extends: ['@commitlint/config-conventional'],
  parserPreset: {
    parserOpts: {
      headerPattern: new RegExp(`^(?<emoji>.*\\s)?(?<type>\\w*)(?<scope>\\(.+\\))?:\\s(?<subject>.*)$`, 'u'),
      headerCorrespondence: ['emoji', 'type', 'scope', 'subject'],
    },
  },
  rules: {
    // We don't need to enforce the subject to be in a specific case.
    'subject-case': [0],
    // Sometimes Jira ticket title would be quite long.
    'header-max-length': [0],
  },
};

Usage

Once everything is set up, you can start committing with:

git commit -m "feat(homepage): achieve UI revamp 2.0"
// Output: ✨ feat(homepage): achieve UI revamp 2.0

If you need to work with a ticket system and have enough of typing this number, you can enable the --branch option in your package.json file:

{
  "scripts": {
    "commit-prettier": "commit-prettier --branch",
  }
}

Then commit-prettier will do this for you! 💅

git commit -m "style: add confetti animation on the login page"
// Output: 🌈 style(JA-1234): add confetti animation on the login page

If your team does not require members to follow conventional commits, but you still want formatted commits, this plugin is what you need.

git commit -m "Achieve UI revamp 2.0"
// Output: ✨ feat(homepage): Achieve UI revamp 2.0