🎵 oooooh aonde nós chegooou! valeu a pena esperaaaar! 🎵
Depois de tanta coisa, finalmente chegamos nos momentos finais, ansiedade tá a mil, né minha filha?!
Mas ainda precisamos internalizar algumas coisinhas pra aí sim ter nosso projetinho final 100% dentro dos conformes.
Bora descobrir quais sao essas coisinhas?
Vale lembrar que o material aqui do readme é um complemento do material do nosso slide
Bora documentar?
Segue esse passo a passo q eh sucesso:
-
Abro meu projeto
-
Abro o terminal na raiz do projeto
-
Executo os seguintes comandos:
$ npm i swagger-autogen swagger-ui-express (isso fará a instalacao do swagger autogen no nosso projeto)
$ touch swagger.js (isso fará com que um arquivo swagger seja criado no nosso projeto)
$ mkdir swagger/ (isso fará com que uma pasta swagger seja criada no nosso projeto)
- Depois da criação da pasta, vamos no arquivo swagger.js e adicionamos esse pedaço de código:
const swaggerAutogen = require('swagger-autogen')();
const outputFile = './swagger/swagger_output.json';
const endpointsFiles = ['./src/app.js'];
swaggerAutogen(outputFile, endpointsFiles);
- Iremos lá no nosso package.json e faremos a seguinte alteraçao:
"script”: {
"start": "nodemon server.js",
"swagger-autogen": "node swagger.js",
}
- Em seguida digitaremos o seguinte comando la no terminal:
npm run swagger-autogen
Note que foi criado um arquivo chamado swagger_output.json dentro da nossa pasta swagger.
Parabéns, vc ja tem sua documentação!!!!
Bora deixar nossa documentaçao mais visual?
- Vamos lá no nosso app.js e adicionaremos o seguinte código:
const swaggerFile = require('../swagger/swagger_output.json');
app.use('/minha-rota-de-documentacao', swaggerUi.serve, swaggerUi.setup(swaggerFile));
- Em seguida, inicializaremos nosso projeto, é so digitar no terminal:
npm start
- Feito isso, acessaremos a nossa rota
localhost:3000/minha-rota-de-documentacao
PS: Estou usando a porta 3000, caso vc esteja usando alguma diferente, use ela, beleza?
-
Iremos conectar nosso repositório com o heroku, para isso precisaremos criar uma conta no (heroku)[https://www.heroku.com], e criar o primeiro app clicando no botão "new".
-
Coloque o nome do seu projeto e escolha a região em que o seu projeto ficará, pode escolher os EUA ou Europa, não faz diferença nesse caso.
-
Na area de deploy conecte-se à sua conta no Github como método de deployment.
-
Em seguida, encontre o github do projeto que você deseja dar deploy, e entao escolha qual branch deseja dar deploy.
Após criar sua conta no Heroku e conectar seu repositório com o Heroku, algumas mudanças devem ser feitas no seu projeto.
Primeiramente, precisamos criar um arquivo chamado Procfile.
O heroku espera que esse arquivo esteja na raiz do seu projeto, onde fica o server.js, package.json e package-lock.json.
Então, vamos abrir o terminal na raiz do nosso projeto e digitar o seguinte comando:
`touch Procfile`
O Procfile é que vai guiar os primeiros comandos para rodar seu projeto.
Dentro desse arquivo vamos digitar:
web: npm install && node server.js
Feito isso, voltaremos para o app do Heroku e iremos na aba de Settings.
Nós vamos adicionar as variáveis de ambiente necessárias para o projeto.
Em Settings vamos para a área de Config Vars
Vamos criar as variáveis de ambiente do projeto, em Config Vars clicamos em Reveal Config Vars.
Teremos então o campo de KEY (chave) e o campo de VALUE (valor), nele colocaremos a chave e o valor criado por nós no arquivo de configuração do banco de dados do seu projeto a MONGODB_URI
Depois de adicionar o nome da variável e o valor clicamos em add
Se você tem outras variáveis de ambiente no seu .env, como o SECRET, PORT ou qualquer outra que seu projeto dependa pra funcionar você também deve fazer esse processo de adicionar nas config vars as chaves e os valores correspondentes.
Fez todos os passos? Seu código ta sem erro? Vamo deployar pra ver se ta tudo ok?
Primeiro, você vai precisar subir as alterações feitas no seu projeto:
git add .
(pra adicionar os arquivos alterados)
git commit -m 'meu commit'
(pra commitar os arquivos alterados)
git push origin minha-branch
(pra subir pro repositorio os arquivos alterados)
Depois disso, voltaremos no app do Heroku e acessaremos a aba de Deploy. Seguiremos para Manual Deploy(fica la no final da pagina), selecionaremos a branch e entao clicaremos em Deploy Branch
Em seguida, um terminalzinho aparecerá para você.
Mas logo ele vai ficar todo verdinho
e você pode clicar em View, para abrir sua linda api.
Deu certo? Parabéns! Nossa rota está no ar! 🎊