/ceccoff-setup-typescript-static-code-quality-toolkit

how to start your project typescript + prettier + eslint + commitlint + lintstaged + githooks

Primary LanguageTypeScript

Instruções de Configuração do Projeto

Husky + Prettier + Eslint + Lint-staged + Commitlint + Typescript

Este guia fornece instruções passo a passo para configurar um novo projeto. Siga estas etapas para configurar seu projeto com as dependências necessárias.

Começar o Repositório

git init

Iniciar um Projeto npm

npm init

Configurar Commitlint

Commitlint é uma ferramenta para padronizar mensagens de commit. Isso ajuda a manter um histórico de commit claro.

npm install @commitlint/cli @commitlint/config-conventional --save-dev
echo '{"extends": ["@commitlint/config-conventional"]}' > .commitlintrc.json

Testar Commitlint

Verifique se o Commitlint está configurado corretamente:

  • Commit inválido (Falha):
echo "teste" | npx commitlint
  • Commit válido (Sucesso):
echo "feat: teste" | npx commitlint

Instalar Husky

Husky é uma ferramenta que automatiza tarefas do Git, como a execução de scripts antes de confirmar um commit.

npx husky-init
npx husky add .husky/commit-msg 'npx --no -- commitlint --edit ${1}'

Habilitar acesso ao .husky no Windows

chmod +x .husky/*

Instalar Prettier

Prettier é um formatador de código.

npm i prettier --save-dev

Instalar ESLint

ESLint é uma ferramenta para identificar problemas no código JavaScript.

npm install eslint --save-dev
npm install @typescript-eslint/parser --save-dev
npm install @typescript-eslint/eslint-plugin --save-dev
npm install eslint-config-prettier --save-dev

Configurar ESLint

Iniciar a configuração do ESLint:

npm init @eslint/config

Instalar Lint-Staged

Lint-Staged é uma ferramenta para rodar linters em arquivos específicos antes de confirmar um commit.

npm install lint-staged --save-dev

Instalar Dependências TypeScript (Opcional)

Se você estiver usando TypeScript, instale as dependências:

npm i typescript
npm i @types/node tsx --save-dev

Configurar TypeScript

Iniciar a configuração do TypeScript:

npx tsc --init

Agora seu projeto está configurado com ferramentas essenciais para manter a qualidade do código e melhorar a eficiência do desenvolvimento. Personalize essas instruções de acordo com as necessidades específicas do seu projeto.