https://github.com/samuelcarneiro/api-nodejs
API Node.js para cadastro, login e listagem de usuários com Express, Prisma, JWT, acesso à banco de dados MySQL e rotas publicas e privadas com verificação de autorização de acesso.
https://github.com/samuelcarneiro/api-nodejs
backend express jwt nodejs prisma prisma-client
Last synced: 3 months ago
JSON representation
API Node.js para cadastro, login e listagem de usuários com Express, Prisma, JWT, acesso à banco de dados MySQL e rotas publicas e privadas com verificação de autorização de acesso.
- Host: GitHub
- URL: https://github.com/samuelcarneiro/api-nodejs
- Owner: samuelcarneiro
- Created: 2024-12-08T14:11:54.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-12-09T01:04:39.000Z (over 1 year ago)
- Last Synced: 2025-06-06T19:08:16.647Z (about 1 year ago)
- Topics: backend, express, jwt, nodejs, prisma, prisma-client
- Language: JavaScript
- Homepage:
- Size: 28.3 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# API Node.js
Projeto de uma API construída em Node.js, Express, Prisma, JWT e banco de dados MySQL. O objetivo do projeto é fornecer uma base para desenvolvimento de APIs RESTfull escaláveis e bem estruturadas.
## Funcionalidades disponíveis
- Cadastro de usuários (nome, email e senha) impossibilitando cadastro de usuários com o mesmo email;
- Os dados do cadastro são salvos no banco de dados Mysql local;
- Login com verificação de usuário e senha;
- Listagem dos usuários salvos no banco de dados somente por logins autorizados ao acesso;
- Validação de entradas de dados
## Tecnologias utilizadas






### Pré-requisitos
Antes de começar, você precisa ter as seguintes ferramentas instaladas:
Node.js e MySQL
### Instalação
1. Clone este repositório:
```
git clone https://github.com/samuelcarneiro/api-nodejs.git
```
2. Acesse o diretório do projeto no seu computador:
```
cd api-nodejs
```
3. Instale as dependências do projeto:
```
DATABASE_URL="mysql://USER_DB:PASSWORD@localhost:PORT_MYSQL/NAME_DATABASE"
JWT_SECRET="YOUR_KEY_JWT_gerada_pelo_comando_abaixo"
```
*Utilizando o comando `node -e "console.log(require('crypto').randomBytes(32).toString('hex'))"
` no terminal, o Node.js gerará uma string que você poderá utilizar como sua Key JWT_SECRET*
4. Inicie o servidor:
```
npm start
```
*A API estará disponível em http://localhost:3000*
### Contribuindo
Contribuições são bem-vindas! Siga os seguintes passos para contribuir:
- Faça um **fork** deste repositório.
- Crie uma nova branch para sua modificação `git checkout -b minha-modificacao`.
- Faça as alterações e commit `git commit -am 'Adiciona nova funcionalidade'`.
- Push para a branch `git push origin minha-modificacao`.
- Abra um pull request explicando as mudanças realizadas.