Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/sergiovieirawebb/project-backend-nodejs
Base inicial para projetos de Backend NodeJS.
https://github.com/sergiovieirawebb/project-backend-nodejs
api-rest backend docker dotenv express express-async-errors jsonwebtoken mysql2 nodejs sequelize sequelize-cli
Last synced: about 2 months ago
JSON representation
Base inicial para projetos de Backend NodeJS.
- Host: GitHub
- URL: https://github.com/sergiovieirawebb/project-backend-nodejs
- Owner: sergiovieirawebb
- License: mit
- Created: 2022-09-20T16:29:28.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2023-09-03T01:36:48.000Z (over 1 year ago)
- Last Synced: 2024-04-07T01:34:03.346Z (9 months ago)
- Topics: api-rest, backend, docker, dotenv, express, express-async-errors, jsonwebtoken, mysql2, nodejs, sequelize, sequelize-cli
- Language: JavaScript
- Homepage:
- Size: 331 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# Backend NodeJS
## Projeto
Base inicial para projetos de Backend NodeJS, utilizando as seguintes tecnologias:
- [Docker](https://www.docker.com/)
- [NodeJs](https://nodejs.org/)
- [DotEnv](https://www.npmjs.com/package/dotenv)
- [Express](https://expressjs.com/)
- [ExpressAsyncErrors](https://www.npmjs.com/package/express-async-errors)
- [Mysql2](https://www.npmjs.com/package/mysql2)
- [Sequelize](https://sequelize.org/)
- [SequelizeCli](https://www.npmjs.com/package/sequelize-cli)
- [JsonWebToken](https://jwt.io/)## Como executar
- Faça o download do [Docker](https://www.docker.com/) para rodar o banco de dados
- Clone o repositório `git clone [email protected]:sergiovieirawebb/backend-nodejs.git`
- Renomei a pasta `backend-nodejs` para o `nome-do-seu-projeto`
- Entre na pasta `nome-do-seu-projeto` com o comando `cd nome-do-seu-projeto`
- Rode o `npm install` para baixar as dependências
- Rode o `docker-compose up -d` para iniciar o banco de dados pelo docker
- Rode o `npm run database` para criar as tabelas do banco de dados
- Rode o `npm run dev` para iniciar a aplicaçãoPor fim, a aplicação estará disponível em `http://localhost:3001/login`
## Rotas da aplicação
- Dica: faça o download do [insomnia](https://insomnia.rest/) para acessar as rotas.
#### Fazer login `POST /login`
> body do envio
```json{
"email": "[email protected]",
"password": "1234567"
}```
> body da resposta
```json{
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJwYXlsb2FkIjp7ImlkIjoxLCJmdWxsTmFtZSI6Ikxlb25hcmRvIiwiZW1haWwiOiJsZW9AdGVzdC5jb20ifSwiaWF0IjoxNjYzNjg5MTI1LCJleHAiOjE2NjQxMjExMjV9.q7shs9V8hHnXJ5HOHy-0vvOS1intyc43rnT6uCzk9sQ"
}```
- Atenção: inserir em Authorization o token gerado no login para acessar a rota abaixo.
#### Buscar todos usuários `GET /users`
> body da resposta
```json
[
{
"id": 1,
"fullName": "Leonardo",
"email": "[email protected]",
"phoneNum": "11942079043"
},
{
"id": 2,
"fullName": "Eduardo",
"email": "[email protected]",
"phoneNum": "11942079043"
}
]
```## Licença
Projeto criado por [Sérgio Vieira](https://www.linkedin.com/in/sergiovieirawebb/). E está sob a licença MIT, veja o arquivo [LICENSE](./LICENSE.md) para mais detalhes... :rocket: