- Para iniciar um projeto execute
npm init -y- O parâmetro
-yevitará as perguntas e criará o arquivopackage.jsoncom as informações padrões do node. O arquivo pode ser alterado manualmente, se necessário.
- O parâmetro
- Execute também o comando
npm install http express debugpra instalar os pacotes básicos para desenvolvimento web. - Para executar a API apenas execute o comando
node .\bin\server.jsou apenas executenpm start(script armazenado no package.json)
- Package
nodemon(apenas para dev), para que a API atualize em tempo de execução conforme alteramos a mesma.npm install nodemon --save-dev- Para executar o nodemon execute:
nodemon .\bin\server.js
- Package
mongoosepara conexão com o MongoDBnpm install mongoose --save
- Package uuid para geração de GUIDs:
npm install uuid --save
- Package md5 para criptografia de senha de usuários:
npm install md5 --save
- Package sendgrid/mail para envio de e-mails:
npm install --save @sendgrid/mail
- Package JWT para envio autenticação:
npm install jsonwebtoken --save
- A aplicação faz uso do MongoDB com docker. Para installar a versão mais recente do mongodb com docker (latest) use o comando:
docker pull mongo
- Para criar um container chamado mongodb, execute o comando abaixo substituindo os valores dos campos
MONGO_INITDB_ROOT_USERNAMEeMONGO_INITDB_ROOT_PASSWORDpara o usuário e senha desejado.docker run --name mongodb -p 27017:27017 -e MONGO_INITDB_ROOT_USERNAME=dbuser -e MONGO_INITDB_ROOT_PASSWORD=myPassword mongo- Comando pra parar a execução:
docker stop mongodb - Para iniciar novamente o mesmo container:
docker start mongodb
- Para o funcionamento correto da aplicação é necessário criar o arquivo secrets.js contendo os dados sensíveis usados pela aplicação. O arquivo deve conter as seguintes propriedades:
module.exports = {
mongodbUser: 'mongoDbUser',
mongodbPassword: 'mongoDbPassword',
mongodbHost: 'YouHost',
mongodbPort: '27017',
saltKey: 'SOME GUID SALT KEY'
}