Executando verificação de segurança...
1

Ferramenta para gerar códigos automaticamente

Sempre que vamos começar um novo projeto, é comum partimos de uma estrutura de arquivos inicial. Quem possuem arquivos de configuração, linters, bibliotecas, testes, funcionalidades, etc, que são comuns a todos os projetos que começamos.

Algumas ferramentas, com o create-react-app facilitam bastante o trabalho, mas ainda assim existem bastabte coisas que precisam ser modificadas sempre que utilizamos essas ferramentas.

Para resolver esse problema, modemos criar um repositório com o modelo de um projeto, os chamados boilerplates. Mas ainda assim, possam ser que existam algumas modificações que precisam ser feitas, pois nem todo projeto é igual. Por exemplo, você pode precisar de um banco de dados diferente, ou provedor de hospedagem diferente.

Para isto, existem ferramentas como o cookiecuter, copier e yeoman.

Com elas, você pode criar boilerplates dinâmicos. Passando alguns parâmetros, é possível definir qual banco de dados utilizar, para qual servidor de hospedagem configurar, etc.

Baseado nessas ferramentas, criei o cakemix, que tenha a proposta de ser uma ferramenta de geração de boilerplates simples, porém poderosa. Ela pode ser utilizada com qualquer linguagem, e toda a configuração dos boilerplates é feita utilizando yaml e a engine de templates Jinja.

O principal objetivo do desenvolvimento dessa ferramente foi apenas para treino, mas ela possui algumas caracteristicas interessantes:

  • Você pode criar parâmetros dinâmicos (útil para quando por exemplo, você pode ou não ter um banco de dados, ai você pergunta se o projeto irá possuir um, e caso sim, receber os parâmetros de configuração): asciicast
  • Arquivos dinâmicos, você pode mover, copiar e deletar aqruivos com base nos parâmetros recebidos: asciicast
  • Tudo isto é feito sem utilizar nenhuma linguagem de programação, tudo é yaml e jinja

Caso tenham se interessado, sintam-se a vontade para mandar susjestôes ou contribuições ;)

Repositório do projeto: https://github.com/vadolasi/cakemix

Carregando publicação patrocinada...