O projeto tem como objetivo hospedar certificados, para que possam ser exibidos no LinkedIn sem realizar autenticação na plataforma que o expediu.
Este repositório contém apenas o back-end do projeto, e ele foi desenvolvido utilizando:
Além das tecnologias acima, também utilizei o Cloudinary para hospedagem das imagens, e o Nodemailer para o serviço de e-mails.
O projeto foi documentado utilizando Swagger, e caso queira acessar a documentação, basta rodar o projeto e acessar a rota /api-docs
em seu navagador.
O projeto exige as seguintes tecnologias instaladas:
Se sua máquina já cumpre os requisitos de instalação, você deve primeiramente clonar este projeto, utilizando o comando git clone https://github.com/NicolasCoiado/platoni-backend.git
em seu terminal.
-
Com o projeto clonado em sua máquina, agora execute o seguinte comando:
mysql -u [seu usuario] -p [sua senha]
. -
Ao acessar devidamente o MySQL, você deve criar as tabelas necessárias para o banco de dados, os comandos utilizados para isso, estão presentes no seguinte arquivo:
/src/database/db.txt
. -
Após a criação do seu banco de dados, utilize o comando
exit
para voltar ao terminal inicial. -
Nessa etapa, o que você deve fazer é preencher as informações presentes no arquivo:
/src/config/.end.example
. Este arquivo contém as bases necessárias para que você possa criar seu arquivo .env. -
Após preencher as informações sensíveis, execute o comando
npm install
e após isso, acesse a pasta src com seu terminal, e execute o comandonode server.js
.
Pronto, agora seu projeto já está em funcionamento :)
Por conta de limitações no cliente Axios, utilizado no consumo desta API, precisei substituir os verbos HTTP GET e DELETE por POST e PUT. As limitações citadas, ocorrem pois não é possível passar parâmetros no corpo das requisições que utilizam os verbos supracitados.
Caso tenha tido alguma dúvida ao tentar executar o projeto, indico os seguintes conteúdos:
Para dúvidas com Cloudinary.
Para dúvidas com NodeMailer.