Hygen é um gerador de código escalável que pode ser usado para acelerar tarefas comuns de desenvolvimento, automatizando a criação de código boilerplate. É particularmente popular em projetos onde padrões e práticas de codificação consistentes são essenciais. A seguir, apresentarei os conceitos básicos do Hygen e fornecerei alguns exemplos de como você pode usá-lo em seus projetos.
Instalando Hygen
Primeiro, você precisa instalar o Hygen. Você pode adicioná-lo ao seu projeto como uma dependência de desenvolvimento:
npm install hygen --save-dev
Alternativamente, você pode instalá-lo globalmente em sua máquina:
npm install -g hygen
Uso básico
O Hygen funciona executando geradores que você definiu no seu projeto. Um gerador é um conjunto de modelos e ações que descrevem como os arquivos devem ser criados ou modificados.
Veja como você pode configurar e executar um gerador simples:
-
Crie o diretório de modelos: Por padrão, o Hygen procura modelos em um
_templates
diretório na raiz do seu projeto.mkdir _templates
-
Adicionar um gerador: Dentro do
_templates
diretório, crie um novo gerador. Por exemplo, para criar um gerador de componentes React:mkdir _templates/component mkdir _templates/component/new
-
Criar um arquivo de modelo: Dentro do
new
diretório, crie um arquivo de modelo. Por exemplo, um modelo de componente funcional do React pode ter a seguinte aparência:echo '--- to: src/components/ {{name}} / {{name}} .jsx --- import React from 'react'; const {{name}} = () => { return <div> {{name}} works!</div>; }; export default {{name}} ;' > _templates/component/new/component.ejs
Executando um gerador
Para gerar um arquivo usando a configuração acima, você executaria:
hygen component new --name MyComponent
Este comando informa ao Hygen para usar o component new
gerador e substituir o {{name}}
variável com "MyComponent", criando um novo arquivo em src/components/MyComponent/MyComponent.jsx
.
Exemplos mais complexos
O Hygen pode ser usado para mais do que apenas criar arquivos. Ele também pode:
- Atualizar arquivos existentes: Você pode anexar ou prefixar dados a arquivos existentes ou até mesmo substituir conteúdo por meio de correspondência de regex.
- Use prompts para entrada: Ao integrar prompts, o Hygen pode solicitar sua entrada em vez de exigir que todos os dados sejam passados por meio de argumentos de linha de comando.
- Manipular vários arquivos: Um comando pode gerar um conjunto completo de arquivos. Por exemplo, criando um novo módulo com modelos, serviços e controladores.
Exemplo: Gerador de Módulo Full-Stack
-
Estruture os modelos: Suponha que você queira gerar um módulo completo com um modelo, controlador e serviço em uma arquitetura MVC:
_templates/module/new - model.ejs - controller.ejs - service.ejs
-
Definir ações em Hygen: Para cada modelo, defina o caminho e o comportamento nos arquivos de prompt do Hygen para automatizar o processo de criação:
echo '--- to: src/models/ {{name}} Model.js --- export default class {{name}} Model { constructor() { // Model Initialization }
}' > _templates/módulo/novo/modelo.ejs eco '--- para: src/controllers/ {{name}} Controller.js --- exportar classe {{name}} Controlador { construtor(serviço) { this.service = serviço; } }' > _templates/módulo/novo/controlador.ejs eco '--- para: src/services/ {{name}} Service.js --- classe de exportação {{name}} Serviço { construtor(modelo) { this.modelo = modelo; } }' > _templates/módulo/novo/serviço.ejs -
Gerar um novo módulo: Você pode então criar um módulo completo executando:
hygen module new --name User
O Hygen é flexível e pode ser adaptado para atender a uma variedade de estruturas e frameworks de projetos, o que o torna uma ferramenta inestimável em fluxos de trabalho de desenvolvimento modernos.