https://github.com/luanaraujo5/crud-nestjs-graphql
Secure API built with NestJS and GraphQL, featuring JWT authentication and a complete CRUD system for user management, ready for deployment. ššŖ¼
https://github.com/luanaraujo5/crud-nestjs-graphql
graphql jwt-authentication nestjs
Last synced: 5 months ago
JSON representation
Secure API built with NestJS and GraphQL, featuring JWT authentication and a complete CRUD system for user management, ready for deployment. ššŖ¼
- Host: GitHub
- URL: https://github.com/luanaraujo5/crud-nestjs-graphql
- Owner: luanaraujo5
- Created: 2024-09-06T22:11:55.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2024-09-20T00:11:33.000Z (10 months ago)
- Last Synced: 2024-12-28T10:37:59.972Z (7 months ago)
- Topics: graphql, jwt-authentication, nestjs
- Language: TypeScript
- Homepage: https://crud-nestjs-graphql.onrender.com/graphql
- Size: 1.38 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Projeto de Aprendizado com NestJS e GraphQL
Este projeto foi desenvolvido com o intuito de aprender e praticar a construção de uma API usando NestJS e GraphQL. O foco do projeto foi implementar operações CRUD (Create, Read, Update, Delete) para gerenciar usuÔrios, garantindo boas prÔticas de segurança e organização do código.
## Tecnologias Utilizadas
- **NestJS**: Um framework para construir aplicaƧƵes Node.js escalƔveis e eficientes.
- **GraphQL**: Uma linguagem de consulta para APIs que permite solicitar exatamente os dados necessƔrios.
- **TypeORM**: Um ORM (Object-Relational Mapping) que facilita a interação com o banco de dados.
- **SQLite**: Um banco de dados relacional leve e auto-contido.
- **bcrypt**: Uma biblioteca para criptografar senhas de forma segura.
- **Apollo Studio**: Uma plataforma para gerenciar e monitorar APIs GraphQL.## Funcionalidades Implementadas
### 1. Criação de UsuÔrio
O endpoint para criação de usuÔrio permite adicionar um novo usuÔrio ao banco de dados. A senha é criptografada antes de ser armazenada para garantir a segurança dos dados.
**Exemplo de Mutação**:

### 2. Listagem de UsuƔrios
O endpoint de listagem retorna todos os usuÔrios cadastrados no banco de dados, mostrando informações como ID, nome, email, e datas de criação e atualização.
**Exemplo de Query**:

### 3. Edição de UsuÔrio
O endpoint de edição permite atualizar as informações de um usuÔrio existente. Caso a senha seja alterada, ela é novamente criptografada antes de ser armazenada.
**Exemplo de Mutação**:

### 4. Deleção de UsuÔrio
O endpoint de deleção permite remover um usuÔrio do banco de dados com base no seu ID.
