{"id":28103488,"url":"https://github.com/gustavo-mmh/synopz","last_synced_at":"2026-04-11T06:03:29.642Z","repository":{"id":287481274,"uuid":"961137227","full_name":"gustavo-mmh/Synopz","owner":"gustavo-mmh","description":"Uma aplicação Flask para resumir vídeos do YouTube utilizando a API do Google AI Studio (Gemini). O projeto extrai legendas de vídeos e gera resumos estruturados com base no conteúdo.","archived":false,"fork":false,"pushed_at":"2025-05-06T21:02:36.000Z","size":2147,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-05-06T21:37:00.504Z","etag":null,"topics":["bootstrap","django","flask","gemini","google-ai-studio","python","youtube-api"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gustavo-mmh.png","metadata":{"files":{"readme":"Readme.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","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,"zenodo":null}},"created_at":"2025-04-05T20:44:59.000Z","updated_at":"2025-05-06T21:02:39.000Z","dependencies_parsed_at":"2025-04-12T01:27:36.364Z","dependency_job_id":"ecc445ce-c650-4a7a-881d-76507a34a2a5","html_url":"https://github.com/gustavo-mmh/Synopz","commit_stats":null,"previous_names":["gustavo-mmh/video_ia_sumarize","gustavo-mmh/synopz"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gustavo-mmh%2FSynopz","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gustavo-mmh%2FSynopz/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gustavo-mmh%2FSynopz/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gustavo-mmh%2FSynopz/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gustavo-mmh","download_url":"https://codeload.github.com/gustavo-mmh/Synopz/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254022075,"owners_count":22001053,"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":["bootstrap","django","flask","gemini","google-ai-studio","python","youtube-api"],"created_at":"2025-05-13T20:38:03.442Z","updated_at":"2025-12-30T23:05:00.979Z","avatar_url":"https://github.com/gustavo-mmh.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Synopz\n\n![GitHub repo size](https://img.shields.io/github/repo-size/gustavo-mmh/Synopz)\n![GitHub last commit](https://img.shields.io/github/last-commit/gustavo-mmh/Synopz)\n![GitHub stars](https://img.shields.io/github/stars/gustavo-mmh/Synopz?style=social)\n\n## 📌 Sobre o Projeto\n\nO **Synopz** é uma aplicação web full stack composta por backend em Flask e frontend em Angular. Seu objetivo é resumir vídeos do YouTube utilizando a API Gemini do Google AI Studio. O sistema extrai legendas dos vídeos, envia o conteúdo para a IA e retorna um resumo estruturado, facilitando o consumo rápido de informações.\n\n---\n\n## 🏗️ Estrutura do Projeto\n\n- **backend/**: API Flask responsável por processar vídeos, extrair legendas e interagir com a API Gemini.\n- **frontend/**: Aplicação Angular que fornece a interface web para o usuário inserir links de vídeos e visualizar os resumos.\n\n---\n\n## 🚀 Como Executar Localmente\n\n### 📋 Pré-requisitos\n\n- Python 3.8+\n- Node.js 18+ e npm\n- Conta no Google AI Studio com acesso à API Gemini\n- Chave de API Gemini\n\n### 🔧 Instalação\n\n#### 1. Clone o repositório\n\n```bash\ngit clone https://github.com/seu-usuario/synopz.git\ncd synopz\n```\n\n#### 2. Backend (Flask)\n\n```bash\ncd backend\npython -m venv .venv\n# Ative o ambiente virtual:\n# Windows:\n.venv\\Scripts\\activate\n# Linux/Mac:\nsource .venv/bin/activate\n\npip install -r requirements.txt\n```\n\nOpcional: Crie um arquivo `.env` com sua chave de API Gemini:\n\n```\nGEMINI_API_KEY=sua_chave_aqui\nSECRET_KEY=sua_chave_secreta\n```\n\nInicie o servidor Flask:\n\n```bash\npython run.py\n```\n\n#### 3. Frontend (Angular)\n\nAbra outro terminal e execute:\n\n```bash\ncd frontend\nnpm install\nng serve\n```\n\nAcesse o frontend em [http://localhost:4200](http://localhost:4200).\n\n---\n\n## 🧪 Testes\n\n- **Backend:** Os testes estão na pasta `backend/tests/`. Execute com:\n  ```bash\n  pytest\n  ```\n- **Frontend:** Execute testes unitários com:\n  ```bash\n  ng test\n  ```\n  Para testes end-to-end:\n  ```bash\n  ng e2e\n  ```\n\n---\n\n## 🛠️ Tecnologias Utilizadas\n\n- **Backend:** Python, Flask, Google AI Studio API (Gemini)\n- **Frontend:** Angular, TailwindCSS\n\n---\n\n## 🤝 Contribuição\n\nContribuições são bem-vindas! Sinta-se à vontade para abrir issues ou enviar pull requests.\n\n---\n\n## 📄 Licença\n\nEste projeto está sob a licença MIT. Veja o arquivo [LICENSE.md](LICENSE.md) para mais detalhes.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgustavo-mmh%2Fsynopz","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgustavo-mmh%2Fsynopz","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgustavo-mmh%2Fsynopz/lists"}