Coder Social home page Coder Social logo

nest-clean's Introduction

Nest Logo

A progressive Node.js framework for building efficient and scalable server-side applications.

NPM Version Package License NPM Downloads CircleCI Coverage Discord Backers on Open Collective Sponsors on Open Collective Support us

Descrição

Aplicação backend de estudos, feita durante o bootcamp Ignite da @rocketseat, utilizando o framework Nest com TypeScript.

Instalação

Instale as dependências de desenvolvimento.

$ pnpm install

Configuração

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

Execução

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

nest-clean's People

Contributors

gabrielauzier avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.