{"id":22511667,"url":"https://github.com/camillamendess/apis-node-express","last_synced_at":"2026-04-06T02:34:33.150Z","repository":{"id":227946465,"uuid":"772262192","full_name":"camillamendess/APIs-node-express","owner":"camillamendess","description":"API REST com Node.js, Express e MongoDB.","archived":false,"fork":false,"pushed_at":"2024-09-23T16:43:31.000Z","size":95,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-28T00:46:59.738Z","etag":null,"topics":["express","mongodb","mongoose","nodejs","postman"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/camillamendess.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-03-14T21:03:22.000Z","updated_at":"2024-09-23T16:58:29.000Z","dependencies_parsed_at":"2024-03-27T02:28:56.600Z","dependency_job_id":"50d55144-7d2b-47c7-b777-acb4def12f6c","html_url":"https://github.com/camillamendess/APIs-node-express","commit_stats":null,"previous_names":["camillamendess/apis-com-node-e-express","camillamendess/apis-node-express"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/camillamendess/APIs-node-express","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/camillamendess%2FAPIs-node-express","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/camillamendess%2FAPIs-node-express/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/camillamendess%2FAPIs-node-express/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/camillamendess%2FAPIs-node-express/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/camillamendess","download_url":"https://codeload.github.com/camillamendess/APIs-node-express/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/camillamendess%2FAPIs-node-express/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31457722,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-05T21:22:52.476Z","status":"online","status_checked_at":"2026-04-06T02:00:07.287Z","response_time":112,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["express","mongodb","mongoose","nodejs","postman"],"created_at":"2024-12-07T02:13:39.690Z","updated_at":"2026-04-06T02:34:33.131Z","avatar_url":"https://github.com/camillamendess.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Projeto de API REST com Express e MongoDB\n\n## Descrição\nEste projeto consiste no desenvolvimento de uma API seguindo o estilo arquitetural **REST**, utilizando o framework **Express** e conectando-a ao banco de dados **MongoDB**.\n\n## Aprendizados\n\n### 1. Criar uma API REST\nDesenvolvi uma **API REST** do zero, compreendendo os princípios do estilo arquitetural REST, como a separação entre cliente e servidor e o uso de endpoints.\n\n### 2. Funcionamento das Requisições HTTP\nEntendi como funcionam as **requisições HTTP** (GET, POST, PUT, DELETE) e a importância de cada método para a interação com a API. Cada requisição é usada para uma operação específica:\n- **GET**: Buscar dados.\n- **POST**: Criar novos dados.\n- **PUT**: Atualizar dados existentes.\n- **DELETE**: Remover dados.\n\n### 3. Express: Framework para Aplicações Escaláveis\nUtilizei o framework **Express**, que oferece uma estrutura simples e flexível para desenvolver aplicações web. O Express facilita o gerenciamento de rotas e a implementação de middlewares.\n\n### 4. Conexão com MongoDB\nAprendi a **conectar a API ao MongoDB**, permitindo o armazenamento e a recuperação de dados. A integração com o MongoDB foi feita usando o Mongoose, um ODM (Object Data Modeling) que simplifica as interações com o banco de dados.\n\n### 5. Tratamento de Erros\nAprendi a tratar erros, garantindo que a API forneça respostas claras e seguras ao usuário. O tratamento de erros é essencial para a estabilidade da API e para melhorar a experiência do usuário final.\n\n### 6. Buscas, Filtros e Operadores do MongoDB\nAprofundei o conhecimento em **buscas avançadas e filtros**, utilizando os operadores do MongoDB para realizar consultas complexas e extrair informações específicas. \n\n### 7. Paginação\nImplementei **paginação** nas rotas, permitindo que a API lide de forma eficiente com grandes volumes de dados. A paginação foi estruturada de forma reutilizável, permitindo sua aplicação em diferentes endpoints.\n\n### 8. Middlewares \nEntendi e implementei **middlewares no Express**, que são funções intermediárias usadas para tratar e modificar dados antes de chegar às rotas finais. Os middlewares foram essenciais para a reutilização de código e para adicionar camadas de validação, autenticação e tratamento de erros de forma centralizada.\n\n## Tecnologias Utilizadas\n- **Node.js**\n- **Express**\n- **MongoDB**\n- **Mongoose**\n\n# API REST Project with Express and MongoDB\n\n## Description\nThis project involves the development of an API following the **REST architectural style**, using the **Express** framework and connecting it to a **MongoDB** database.\n\n## Learnings\n\n### 1. Creating a REST API\nI developed a **REST API** from scratch, understanding the principles of the REST architectural style, such as the separation between client and server and the use of endpoints.\n\n### 2. Understanding HTTP Requests\nI learned how **HTTP requests** (GET, POST, PUT, DELETE) work and the importance of each method for interacting with the API. Each request is used for a specific operation:\n\n- **GET**: Retrieve data.\n- **POST**: Create new data.\n- **PUT**: Update existing data.\n- **DELETE**: Remove data.\n\n### 3. Express: Framework for Scalable Applications\nI used the **Express** framework, which offers a simple and flexible structure for developing web applications. Express simplifies route management and the implementation of middlewares.\n\n### 4. Connecting with MongoDB\nI learned how to connect the API to **MongoDB**, allowing for data storage and retrieval. The integration with MongoDB was done using **Mongoose**, an ODM (Object Data Modeling) that simplifies interactions with the database.\n\n### 5. Error Handling\nI learned how to handle errors, ensuring the API provides clear and secure responses to the user. Error handling is essential for API stability and improving the user experience.\n\n### 6. Searches, Filters, and MongoDB Operators\nI deepened my knowledge in **advanced searches and filters**, using MongoDB operators to perform complex queries and extract specific information.\n\n### 7. Pagination\nI implemented **pagination** in the routes, allowing the API to efficiently handle large volumes of data. Pagination was structured in a reusable way, making it applicable to different endpoints.\n\n### 8. Express Middlewares\nI understood and implemented **middlewares in Express**, which are intermediary functions used to handle and modify data before reaching the final routes. Middlewares were essential for code reuse and for adding layers of validation, authentication, and error handling in a centralized way.\n\n## Technologies Used\n- **Node.js**\n- **Express**\n- **MongoDB**\n- **Mongoose**\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcamillamendess%2Fapis-node-express","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcamillamendess%2Fapis-node-express","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcamillamendess%2Fapis-node-express/lists"}