{"id":27772167,"url":"https://github.com/leandroffdev/projeto_videoteca","last_synced_at":"2025-04-29T23:05:29.621Z","repository":{"id":265546187,"uuid":"894780475","full_name":"leandroffdev/projeto_videoteca","owner":"leandroffdev","description":"API de uma videoteca simples desenvolvida com Node.js, Express, Mongoose e MongoDB. O projeto utiliza arquitetura MVC, com controllers, middlewares e models, oferecendo funcionalidades de CRUD para gerenciar filmes. Ideal para aprendizado e prática em desenvolvimento backend com Node.js.","archived":false,"fork":false,"pushed_at":"2024-12-01T02:48:52.000Z","size":20,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-29T23:05:26.206Z","etag":null,"topics":[],"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/leandroffdev.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-11-27T01:21:11.000Z","updated_at":"2024-12-01T02:50:28.000Z","dependencies_parsed_at":"2024-11-29T21:42:27.390Z","dependency_job_id":null,"html_url":"https://github.com/leandroffdev/projeto_videoteca","commit_stats":null,"previous_names":["leandroffdev/projeto_videoteca"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leandroffdev%2Fprojeto_videoteca","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leandroffdev%2Fprojeto_videoteca/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leandroffdev%2Fprojeto_videoteca/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leandroffdev%2Fprojeto_videoteca/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/leandroffdev","download_url":"https://codeload.github.com/leandroffdev/projeto_videoteca/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251596690,"owners_count":21615018,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":[],"created_at":"2025-04-29T23:05:29.137Z","updated_at":"2025-04-29T23:05:29.613Z","avatar_url":"https://github.com/leandroffdev.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# API de Videoteca 🎥\n\nEste repositório contém o backend de uma API simples para gerenciamento de uma videoteca, desenvolvida com **Node.js**, **Express**, **Mongoose** e **MongoDB**, seguindo a arquitetura **MVC**.\n\n## 🚀 Tecnologias Utilizadas\n- **Node.js**: Plataforma para execução de JavaScript no servidor.\n- **Express**: Framework minimalista para criação de servidores web.\n- **Mongoose**: Biblioteca para modelagem de dados com MongoDB.\n- **MongoDB**: Banco de dados NoSQL para armazenamento das informações.\n\n## 📂 Estrutura do Projeto\n```plaintext\nsrc/\n├── controllers/   # Lógica para manipulação das requisições\n├── middlewares/   # Validações e tratamentos\n├── models/        # Modelos e esquemas do Mongoose\n├── routes.js      # Definição das rotas\n├── database.js    # Configurações de conexão com o banco MongoDB\n└── server         # Configuração e inicialização do servidor\n\n📖 Funcionalidades\nCadastro, leitura, atualização e exclusão de filmes (CRUD).\nOrganização de código com arquitetura MVC.\nValidação e manipulação de dados com middlewares.\nIntegração com MongoDB usando Mongoose.\n\n⚙️ Como Executar\nClone o repositório:\n\nbash\nCopy code\ngit clone https://github.com/leandroffdev/projeto_videoteca.git\ncd nome-repositorio\nInstale as dependências:\n\nbash\nCopy code\nnpm install\nConfigure as variáveis de ambiente: Crie um arquivo .env na raiz do projeto com as seguintes informações:\n\nPORT=3000\nInicie o servidor:\n\nbash\nCopy code\nnpm start\nAcesse a API:\n\nURL base: http://localhost:3000\n\nRotas disponíveis:\nGET /videos - Lista todos os filmes.\nPOST /videos - Adiciona um novo filme.\nGET /videos/:id - Detalha um filme pelo ID.\nPUT /videos/:id - Atualiza um filme pelo ID.\nDELETE /videos/:id - Exclui um filme pelo ID.\n\n🛠️ Melhorias Futuras\nImplementação de autenticação e autorização.\nAdicionar testes automatizados.\nDocumentação da API com Swagger.\nFeito com ❤️ para aprendizado e prática de backend!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fleandroffdev%2Fprojeto_videoteca","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fleandroffdev%2Fprojeto_videoteca","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fleandroffdev%2Fprojeto_videoteca/lists"}