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

setup-commitlint-husky-automator

v1.0.0

Published

Um pacote CLI para automatizar a configuração do Husky e Commitlint (hook commit-msg) em projetos.

Readme

setup-commitlint-husky-automator

Um pacote CLI simples para automatizar a configuração do Husky e Commitlint em seus projetos Git.

🚀 Visão Geral

Este pacote foi criado para simplificar o processo de configuração de Git Hooks com Husky para impor a padronização de mensagens de commit usando o Commitlint. Em vez de executar múltiplos comandos manuais para instalar dependências e configurar arquivos, esta ferramenta faz tudo por você!

✨ Por que usar?

  • Automação: Instala automaticamente as dependências necessárias e configura o Git Hook commit-msg.

  • Consistência: Garante que todas as mensagens de commit em seu projeto sigam as Convenções de Commits (via @commitlint/config-conventional).

  • Produtividade: Economize tempo e evite erros de configuração manual, permitindo que você e sua equipe foquem no desenvolvimento.

  • Histórico Limpo: Ajuda a manter um histórico de commits legível e organizado, facilitando a depuração e a geração de CHANGELOGs.

⚙️ Pré-requisitos

Antes de usar este pacote, certifique-se de ter o seguinte instalado em seu sistema:

  • Node.js (versão 16 ou superior)

  • npm (gerenciador de pacotes do Node.js, geralmente vem com o Node.js)

  • Git (sistema de controle de versão)

📦 Instalação e Uso

Para usar este pacote, siga os passos abaixo no terminal, na raiz do seu projeto (onde você tem seu package.json e seu repositório Git).

Passo 1: Inicialize seu Projeto (se ainda não o fez)

Se você está começando um projeto novo, certifique-se de que ele tenha um repositório Git e um arquivo package.json:

# Navegue até a pasta do seu projeto
cd seu-projeto/

# Inicialize um repositório Git
git init

# Crie um arquivo package.json básico
npm init -y

Passo 2: Execute o Automatizador

Você pode executar o pacote de duas maneiras:

Opção A: Usar via npx (recomendado para uso único)

Esta é a forma mais comum, pois não instala o pacote globalmente e sempre usa a versão mais recente:

npx setup-commitlint-husky-automator

Opção B: Instalar Globalmente (se for usar em muitos projetos)

Se você planeja usar esta ferramenta em muitos projetos diferentes e prefere instalá-la globalmente:

npm install -g setup-commitlint-husky-automator

# Depois de instalar globalmente, você pode executar em qualquer diretório de projeto:
setup-commitlint-husky

O que acontece ao executar?

Ao executar npx setup-commitlint-husky-automator (ou setup-commitlint-husky), o script fará o seguinte:

  1. Instalará dependências: Adicionará husky, @commitlint/cli e @commitlint/config-conventional como devDependencies no seu package.json e os instalará.

  2. Inicializará Husky: Criará a pasta .husky/ no seu projeto e configurará o Git para usar os hooks gerenciados pelo Husky.

  3. Configurará o commit-msg Hook: Criará (ou atualizará) o arquivo .husky/commit-msg para que o Commitlint valide sua mensagem de commit a cada git commit.

Passo 3: Adicione a Configuração do Commitlint

Para que o Commitlint saiba quais regras aplicar, você precisa de um arquivo de configuração. Crie um arquivo chamado commitlint.config.js na raiz do seu projeto com o seguinte conteúdo:

// commitlint.config.js
module.exports = {
  extends: ['@commitlint/config-conventional'],
};

Alternativamente, você pode adicionar a configuração diretamente no seu package.json:

{
  "name": "seu-projeto",
  "version": "1.0.0",
  "description": "...",
  // ... outras configurações
  "commitlint": {
    "extends": [
      "@commitlint/config-conventional"
    ]
  },
  "devDependencies": {
    "@commitlint/cli": "^19.0.0",
    "@commitlint/config-conventional": "^19.0.0",
    "husky": "^9.0.0"
  }
}

Passo 4: Teste a Configuração

Agora, tente fazer um commit para ver o Commitlint em ação!

  1. Crie alguma alteração (exemplo: adicione ou modifique um arquivo):

    echo "Olá Mundo!" > index.html
    git add .
  2. Tente um commit que NÃO segue as convenções:

    git commit -m "commit sem padrão"

    Você deve ver uma mensagem de erro do Commitlint no terminal, e o commit será abortado.

  3. Tente um commit que SEGUE as convenções:

    git commit -m "feat: adiciona página inicial com mensagem de saudação"

    Este commit deve ser aceito sem problemas, e sua mensagem de commit será validada.

⚠️ Observações e Solução de Problemas

  • Permissões de Execução: Se encontrar erros de permissão (Permission denied), certifique-se de que os scripts do Husky na pasta .husky/ são executáveis. O automatizador já tenta fazer isso com chmod +x, mas em alguns ambientes pode ser necessário verificar.

  • Versões do Node.js/npm: Certifique-se de que suas versões de Node.js e npm são compatíveis com as dependências.

  • Problemas de Internet: A instalação de pacotes requer uma conexão ativa com a internet.

  • Mensagens de Erro do Commitlint: O Commitlint fornecerá feedback detalhado sobre o que está errado com sua mensagem de commit. Preste atenção a essas mensagens para corrigir o formato.

📄 Licença

Este projeto está licenciado sob a Licença MIT. Consulte o arquivo LICENSE para mais detalhes.

👤 Autor

Jeiel Miranda