Yeoman - Facilitando a preparação do ambiente de desenvolvimento

O que é?

Quantas vezes você já precisou criar um novo projeto com novos frameworks e faltou aquela ajudinha com um "Hello World" e no final você não conseguiu entender a estrutura ou baixar o código fonte ?

O Yeoman é um conjunto de ferramentas e bibliotecas que auxiliam na preparação do ambiente de desenvolvimento por meio de Scaffoldings (Templates de Projeto), os processos são gerados pelo Grunt e as dependências web pelo Bower. De forma produtiva, os processos de desenvolvimento são facilitados pelo Yeoman

Com este auxílio creio que seus problemas acabaram!

Quais Scaffoldings estão disponíveis?

O Yeoman disponibiliza Scaffoldings de NodeJs e com advento do Open Source na Microsoft, surgiram templates de Asp.net vNext. Cerca de 2000 templates estão disponíveis e "rankeados" no Yeoman veja.

Requisitos

  • NodeJs
  • Git

Se você não está familiarizado com NodeJs veja uma breve introdução:

NodeJs - Primeiros Passos

Partiu trabalho!

Primeiramente vamos instalar o Yeoman, abra sua linha de comando e digite:

Caso você esteja no Linux instale como root ou utilize o sudo

npm install - g yo

Apesar do Yeoman não ter dependências explícitas, recomendo instalar o node-pre-gyp.

npm install -g node-pre-gyp

Pronto com o Yeoman instalado podemos criar um projeto baseado em Templates.

Irei utilizar um Scaffolding com desenvolvimento FullStack.

O Angular Fullstack cria uma aplicação Back-End suportada pelo framework Express, aplicando na camada Front-End o AngularJs, implementando testes unitários, além de permitir qual linguagem você deseja trabalhar JavaScript ou CoffeeScript, CSS ou SASS ou LESS, resumindo você pode customizar seu projeto.

Digite o comando abaixo para instalar o Scaffolding.

npm install -g yo grunt-cli bower generator-angular-fullstack

Agora crie uma nova pasta e digite este comando para criar seu projeto:

O parâmetro [nome do -projeto] é opcional

yo angular-fullstack [nome do projeto]

Após a instalação do projeto alguns Scaffoldings, serão disponibilizados para adicionar arquivos do projeto baseados em templates. Estes arquivos podem ser um controlador ou até mesmo um teste unitário.

Existem comandos específicos para cada Scaffolding.

Novo "endpoint"

yo angular-fullstack:endpoint message

Nova rota

yo angular-fullstack:route minharota

Para outros comandos do Scaffolding Angular FullStack veja

Arquivos gerados (output)

Os arquivos estão no GitHub veja.

Testando

Antes de abrir a aplicação será necessário realizar o "build", digite o comando:

grunt build

Para iniciar a aplicação

npm start

A aplicação utiliza por padrão a porta 9000.

Utilize em seus projetos

O Yeoman facilita a criação de projetos, com Scaffoldings que aplicam boas práticas e tecnologia de ponta, tanto no Front-End quanto no Back-End.

Até a próxima e não esqueça de compartilhar!