- Inicie realizando o download do projeto
git clone https://github.com/omausantos/challenge-nodejs-baas
- Agora Ć© instalar as dependencias via NPM ou YARN (observe que deve estar dentro da pasta onde encotnra-se o arquivo package.json)
npm install
OU
yarn install
- Lembre de criar as variaveis de ambiente, para acesso ao MongoDB e Secret JWT, no arquivo .env
URL_ACCESSE_MONGODB = 'XXXXXXXX'
SECRET_AUTH = 'XXXXXXXX'
- EntĆ£o Ć© hora de inicializar o projeto!
npm run dev
OU
yarn dev
-
Tudo pronto? Acesse http://localhost:3000/ e os EndPoints estarĆ£o disponiveis
-
DocumentaĆ§Ć£o das API`s estĆ£o disponiveis em http://localhost:3000/swagger
API POST/accounts Criar conta para usuĆ”rio cadastrado, nĆ£o estĆ” com autenticaĆ§Ć£o para que possam criar um usuĆ”rio para teste
O desafio Ć© composto por 11 EndPoints, separados em 4 grupos e documentaĆ§Ć£o.
- GET /accounts: Lista todas as contas cadastradas
- GET /accounts/ID: Todos os dados de uma conta especifica
- GET /accounts/balance/ID: Saldo de uma conta especifica
- POST /accounts: Criar conta para usuƔrio cadastrado
- POST /accounts/transfer: Transferencia bancaria entre contas P2P
- POST /auth: Requisitar token JWT
- POST /documents: InclusĆ£o de documento por usuĆ”rio
- GET /documents/ID: Lista de todos os documentos por usuƔrio
- GET /users: Lista todos os usuƔrios cadastrados
- GET /users/ID: Todos os dados de um usuƔrio especifico
- POST /users: InclusĆ£o de novo usuĆ”rio
- DocumentaĆ§Ć£o Swagger: Desenvolver documentaĆ§Ć£o das API`s via Swagger
ESLint
ferramenta para padronizaĆ§Ć£o de cĆ³digo, identificaĆ§Ć£o de erros e unificaĆ§Ć£o.bcryptjs
biblioteca para criptografia de dados e variaveis.cors
utilizada junto com Express, auxilia no controle de CORS entre aplicaƧƵes.dotenv
gestĆ£o de variaveis de ambiente.express
framework para desenvolvimento de API Rest em NodeJS.jsonwebtoken
gestĆ£o de tokens JWT.mongoose
gestĆ£o do acesso ao MongoDB.multer
gestĆ£o de uploads de arquivos no NodeJS.mime-types
para validaĆ§Ć£o do upload de arquivos, junto com @multer.swagger-ui-express
server para documentaĆ§Ć£o API Swagger.