- Sobre o projeto
- Funcionalidades da API
- Arquitetura da Aplicação
- Tecnologias utilizadas
- Como executar o projeto
- Autor
A API_NodeJS_example é um modelo de API, criado e desenvolvido para exemplificar o uso de uma API em uma aplicação na parte de Back-end, como exemplo esta é usada originalmente com o projeto Angular Lista_contatos_angular, apesar de ser possível testar com qualquer ferramenta que simule um cliente.
Além de que se tem outra utilidade, pois com ênfase em sua arquitetura de pastas, os arquivos podem ser substituíveis pelos arquivos do próprio usuário que deseja utilizar-se deste modelo, visualizando nos arquivos já finalizados como se relacionam em um projeto.
- Cadastro de cliente.
- Obtenção de todos os cliente.
- Obtenção de cliente por id.
- Atuaalização de cliente por id.
- Remoção de cliente por id.
- Javascript - vES6
- NodeJS - v18.17.1
- Npm - v9.6.7
- Nodemon - v3.0.1
- Body-parser - v1.20.2
- Cors - v2.8.5
- Dotenv - v16.3.1
- Express - v4.18.2
- Sequelize - v6.32.1
- sequelize-cli - v6.6.2
- supertest - v6.3.3
- jest - v29.7.0
- pino - v8.17.1
- pino-rotating-file-stream - v0.0.2
#clonar repositório:
$ git clone https://github.com/R1TKILL/API_NodeJS_example
#Entrar na pasta do projeto:
$ cd server
#Se necessário instalar as dependências:
#Nodemon
$ npm install nodemon
#Body-parser
$ npm install body-parser
#Cors
$ npm install cors
#Dotenv
$ npm install dotenv
#Express
$ npm install express
#Sequelize
$ npm install sequelize
#Para testes unitários caso queira testar.
#Jest
$ npm install jest
#Jest intellisense
$ npm install @types/jest
#supertest
$ npm install supertest
# Para os logs:
$ npm install pino
# Pegar todos as informações de requisições web em logs:
$ npm install pino-http
# Para rotacionar os logs:
$ npm install pino-rotating-file-stream
#Execute o projeto:
$ nodemon index.js
Também é necessário configurar suas credenciais para o banco e ambiente através das variaveis de ambiente, pode-se utilizar as chaves em .env.example, definindo seus própios valores em um .env, caso tenha dúvidas acesse: como usar o .env
#Comando para criar novas migrations:
$ npx sequelize-cli migration:generate --name create-People
#Comando para executar as migrations e trazer as tabelas atuais da API para o seu projeto:
$ npx sequelize-cli db:migrate
#Desfazer as migrations, derruba a tabela:
$ npx sequelize-cli db:migrate:undo
#Criando as seeders:
$ npx sequelize-cli seed:generate --name peoples
#Populando banco de dados com as seeds:
$ npx sequelize-cli db:seed:all
#rRemovendo todos os dados banco de dados:
$ npx sequelize-cli db:seed:undo
#OBS: Lembrando que para isso deve-se ter o sequelize-cli instalado em node-modules, e configurar as pastas corretamente ou altera-las no arquivo '.sequelizerc', apontando para o arquivo de configuração corretamente.
- Para o tempo limite de validação até o novo login.
- Para poder criptografar as informações com um hash.
Antonio Junior Rodrigues Mota - R1TKILL
Linkedin: http://www.linkedin.com/in/antonio-junior-rodrigues-mota-8a568a173
Email: antoniojunio402@gmail.com
