https://github.com/sara-source01/api-users-node-mongoose-
API REST simples desenvolvida com Node.js, Express e MongoDB (Mongoose). Permite criar, listar, atualizar e deletar usuários através de requisições HTTP ou interface HTML. Ideal para aprendizado e prática de integração com bancos NoSQL.
https://github.com/sara-source01/api-users-node-mongoose-
api-rest backend crud express fullstack-learning javascript mongodb mongoose nodejs rest-api
Last synced: about 1 month ago
JSON representation
API REST simples desenvolvida com Node.js, Express e MongoDB (Mongoose). Permite criar, listar, atualizar e deletar usuários através de requisições HTTP ou interface HTML. Ideal para aprendizado e prática de integração com bancos NoSQL.
- Host: GitHub
- URL: https://github.com/sara-source01/api-users-node-mongoose-
- Owner: Sara-source01
- Created: 2025-06-05T02:53:36.000Z (8 months ago)
- Default Branch: main
- Last Pushed: 2025-06-05T04:09:48.000Z (8 months ago)
- Last Synced: 2025-07-05T03:08:51.762Z (7 months ago)
- Topics: api-rest, backend, crud, express, fullstack-learning, javascript, mongodb, mongoose, nodejs, rest-api
- Language: JavaScript
- Homepage: https://sara-source01.github.io/api-users-node-mongoose-/
- Size: 17.6 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# 🧪 Mongoose Demo
Este é um projeto simples de API REST criada com **Node.js**, **Express** e **MongoDB (Mongoose)**.
Permite criar, listar, atualizar e deletar usuários a partir de requisições HTTP.
---
## 🚀 Tecnologias Utilizadas
- [Node.js](https://nodejs.org/) *(plataforma JavaScript para criar servidores e aplicações back-end)*
- [Express](https://expressjs.com/) *(framework minimalista para criar rotas e gerenciar requisições HTTP)*
- [MongoDB](https://www.mongodb.com/) *(banco de dados NoSQL usado para armazenar os dados dos usuários)*
- [Mongoose](https://mongoosejs.com/) *(biblioteca que facilita a conexão e modelagem de dados no MongoDB)*
- [dotenv](https://www.npmjs.com/package/dotenv) *(para carregar variáveis de ambiente de forma segura através do arquivo `.env`)*
- [Validator](https://www.npmjs.com/package/validator) *(usada para validar campos, como verificar se um e-mail é válido)*
- [CORS](https://www.npmjs.com/package/cors) *(para permitir acesso da interface HTML sem bloqueios de origem cruzada)*
- [MongoDB Compass](https://www.mongodb.com/products/compass) *(interface gráfica para visualizar, buscar e editar os dados no MongoDB)*
---
## 📂 Estrutura do Projeto
```plaintext
mongoose-demo/
├── controllers/
│ └── userController.js
│
├── models/
│ └── user.js
│
├── routes/
│ └── userRoutes.js
│
├── node_modules/
│
├── index.html
│
├── .env
│
├── server.js
│
├── package.json
│
├── package-lock.json
│
└── README.md
```
---
## 📌 Funcionalidades da API
| Método | Rota | Descrição |
|--------|------------------|--------------------------------------|
| GET | `/users` | Lista todos os usuários |
| GET | `/users/:id` | Mostra um usuário específico por ID |
| POST | `/users` | Cria um novo usuário |
| PUT | `/users/:id` | Atualiza os dados de um usuário |
| DELETE | `/users/:id` | Remove um usuário do banco de dados |
---
## 📦 Como Rodar o Projeto
1. Clone o repositório:
```bash
git clone https://github.com/Sara-source01/api-users-node-mongoose-.git
2. Instale as dependências:
npm install express mongoose dotenv cors validator
3. Configure o arquivo .env:
MONGO_URI=mongodb://localhost:27017/mongoose_demo
PORT=3000
4. Inicie o servidor:
node server.js
🧪 Testando a API
Você pode testar a API de três formas:
1. Com Postman ou Insomnia:
Envie requisições para:
http://localhost:3000/users
2. Com interface HTML (index.html):
Abra o arquivo index.html no navegador, preencha os campos de nome e e-mail e clique em "Create".
Isso envia um POST para a rota /users usando fetch().
Atenção: o servidor precisa estar rodando e com CORS ativado.
A biblioteca CORS permite que navegadores (como uma página HTML local) consigam acessar a API sem bloqueio.
3. Via MongoDB Compass:
Abra o MongoDB Compass.
Conecte-se a:
mongodb://localhost:27017
Acesse o banco de dados mongoose_demo.
Clique na coleção users para ver os dados inseridos pela API ou HTML.
Dessa forma, você pode acompanhar visualmente as alterações feitas pelos endpoints da API.
---
📄 Licença
Este projeto é livre para estudos e testes.
## 👩💻 Autor
Desenvolvido por [Sara George](https://github.com/Sara-source01) 🚀
Sinta-se à vontade para entrar em contato ou contribuir com melhorias!