A progressive Node.js framework for building efficient and scalable server-side applications.
Aplicação backend de estudos, feita durante o bootcamp Ignite da @rocketseat, utilizando o framework Nest com TypeScript.
Instale as dependências de desenvolvimento.
$ pnpm install
O serviço de autenticação JWT desta aplicação utiliza o algoritmo de criptografia RSA-256 para a geração das chaves pública e privada.
Veja abaixo como proceder para a geração e configuração das chaves em seu projeto, no Linux/MacOS.
Execute o seguinte comando para gerar uma chave privada RSA de 2048 bits e salvá-la em um arquivo chamado private_key.pem
:
$ openssl genpkey -algorithm RSA -out private_key.pem -pkeyopt rsa_keygen_bits:2048
Execute o seguinte comando para extrair a chave pública correspondente e salvá-la em um arquivo chamado public_key.pem
:
$ openssl rsa -pubout -in private_key.pem -out public_key.pem
Com as chaves criadas, você deve convertê-las para um base64, capaz de ser utilizado no arquivo .env
$ base64 -w 0 private_key.pem > private_key_base64.txt
$ base64 -w 0 public_key.pem > public_key_base64.txt
Suba o contâiner do banco de dados.
$ docker-compose up
Atualize o banco de dados para a última versão.
$ pnpm prisma migrate dev
Inicie a aplicação em modo de desenvolvimento.
# development
$ pnpm start
# watch mode
$ pnpm start:dev
# production mode
$ pnpm start:prod
(Opcional) Instale a extensão Rest Client no seu VSCode. Assim, você pode testar as requisições no arquivo client.http
(Opcional) Inicie o modo studio do banco de dados.
$ pnpm prisma studio