Problema
Actualmente Newty solo extrae proyectos de GitHub Trending. Para tener una visión más completa de tecnologías y proyectos emergentes, sería ideal agregar más fuentes.
Fuentes propuestas
1. Product Hunt
- URL: https://www.producthunt.com/
- Qué extraer: Productos del día/semana con votos, descripción, tags
- Desafío: Product Hunt usa mucho JavaScript, puede requerir API o una herramienta como Selenium/Playwright
2. Hacker News
3. Reddit (r/programming, r/github, r/opensource)
4. Awesome Lists
Implementación
- Cada fuente debe ser un módulo independiente en
fuentes/ (ej: fuentes/producthunt.py, fuentes/hackernews.py)
- Cada módulo debe implementar una interfaz común:
def extraer(cantidad: int) -> list[dict]: ...
-
Los proyectos extraídos deben unificarse en el mismo formato:
{
"nombre": "...",
"autor": "...",
"repo_url": "...", # o link al producto
"descripcion": "...",
"stars": "...", # o votos/upvotes
"fuente": "producthunt" # para identificar el origen
}
-
--modo github → solo GitHub Trending
-
--modo completo → GitHub + todas las fuentes habilitadas
Criterios de éxito
Problema
Actualmente Newty solo extrae proyectos de GitHub Trending. Para tener una visión más completa de tecnologías y proyectos emergentes, sería ideal agregar más fuentes.
Fuentes propuestas
1. Product Hunt
2. Hacker News
3. Reddit (r/programming, r/github, r/opensource)
4. Awesome Lists
Implementación
fuentes/(ej:fuentes/producthunt.py,fuentes/hackernews.py)Los proyectos extraídos deben unificarse en el mismo formato:
{ "nombre": "...", "autor": "...", "repo_url": "...", # o link al producto "descripcion": "...", "stars": "...", # o votos/upvotes "fuente": "producthunt" # para identificar el origen }--modo github→ solo GitHub Trending--modo completo→ GitHub + todas las fuentes habilitadasCriterios de éxito
--modo completoconfig.json(activar/desactivar fuentes)