Olá, bem-vindo ao segundo de uma série de posts sobre como criar uma API REST com Nestjs!

Nessa segunda parte iremos iniciar o nosso projeto com NestJS utilizando o Visual Code.

Esse post foi desenvolvido com base na documentação do NestJS.

1 - Instalando o Node.js

Node.js trata-se de um software open-source que executa código de JavaScript a nível backend e frontend. Para iniciarmos um projeto em NestJS, é necessário termos o Node.js e seu gerenciador de pacotes, o npm, instalados na nossa máquina.

Abra o terminal e utilize o comando:

sudo apt update

em seguida, instale o Node.js:

sudo apt install nodejs

e, por fim, para instalar o npm, basta usar o comando:

sudo apt install npm

2 - Instalando o Yarn

Iremos utilizar o Yarn pois ele possui algumas vantagens de segurança e consistência em relação ao npm. Caso você queira saber mais sobre, estes links podem ser úteis:

Para instalar o Yarn basta rodar os seguintes comandos no terminal:

curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add - echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
sudo apt-get update && sudo apt-get install yarn

3 - Iniciando o projeto

Abra o terminal e navegue até o diretório onde você deseja iniciar seu projeto. Aqui vou colocar o projeto na pasta Documents

cd ~/Documents

É necessário instalar o NestJS utilizando o npm:

npm i -g @nestjs/cli

Feita a instalação, é só utilizar o comando abaixo para iniciar um novo projeto:

nest new my-pricing

Nessa série de posts vamos criar uma API para administrar os pedidos de uma loja com precificação simples de produtos. O usuário poderá cadastrar um produto e seus respectivos insumos e custos, e também poderá informar o quanto deseja de lucro. Será possível também a criação de pedidos e a geração de um relatório simples, informando o quanto de custo e lucro ele obteve em um determinado período.

Ao executar o comando, a seguinte opção é mostrada. Selecione yarn e aperte enter para que a instalação das dependências do projeto continue

Terminada a criação do projeto, abra o Visual Code e clique em File > Open Folder e selecione a pasta com o nome do projeto

Você verá uma estrutura semelhante a essa:

O próximo passo é executar o nosso projeto.
Para isso, abra o terminal no Visual Code e execute o comando yarn start

É no arquivo main.ts onde é definido a porta em que nossa API irá rodar, portanto, basta acessar a url http://localhost:3000 e iremos ver o nosso primeiro endpoint funcionando!

Entendendo algumas coisas básicas do NestJS:

Modules - Partes da estrutura de um projeto NestJS, permitindo que o projeto seja separado em módulos com diferentes funcionalidades.

Controllers - Recebem requisões HTTP e enviam respostas para quem estiver consumindo a API

Providers - Quando um controller recebe uma requisição, geralmente chama um service para executar uma parte mais complexa da lógica da API.

Os Controllers e Providers precisam ser declarados em seus respectivos módulos como na imagem abaixo, onde temos um service e controller declarados no module principal do NestJS.

Chegamos ao fim dessa segunda parte. Agora, com o projeto iniciado, poderemos nos conectar ao banco e criar as entidades e migrations necessárias.

Te aguardo no próximo post!