Bird-of-the-day
Generador de sitio web estático diario sobre aves con feed RSS. Usa Python 3.12+, uv para gestión de dependencias, sin base de datos. Scraping de Cornell Lab, eBird API y Wikimedia. Despliegue Docker o GitHub Pages.
Ficha actualizada 26 sept 2026, 11:47 · upstream 26 sept 2026, 11:39 · release v2.1.0
Qué es Bird-of-the-day
Descripción editorial construida a partir del repositorio, su documentación y sus señales de mantenimiento.
Bird-of-the-day es una aplicación Python que genera diariamente un sitio web estático sobre especies de aves seleccionadas aleatoriamente de pools regionales configurables. Cada ejecución scrapea información de fuentes públicas del Cornell Lab of Ornithology, incluyendo descripciones taxonómicas y fotografías del Macaulay Library, generando contenido en inglés, español, francés o portugués.
El sistema utiliza un enfoque sin base de datos: el historial de publicaciones se almacena en history.json, las cachés de scrapes en cache/, y los mapas compuestos en maps/. La arquitectura es minimalista con renderizado del lado del servidor, sin frameworks JavaScript ni pasos de build. Incluye opcionalmente enriquecimiento con LLMs para generar prosa narrativa cuando se configura un endpoint compatible con OpenAI.
El despliegue soporta Docker con imágenes publicadas en ghcr.io y GitHub Actions para CI/CD. El sitio produce páginas estáticas, feeds RSS 2.0 completos y sitemap.xml. No utiliza cookies ni analytics; el único estado del lado del cliente es la preferencia de tema en localStorage bajo la excepción de preferencias funcionales estrictas.
- Autohospedaje de un sitio web informativo sobre aves con contenido diario fresco
- Generación de feeds RSS para agregadores de noticias o lectores como Feedly
- Plantilla reutilizable para proyectos de divulgación científica o conservación ambiental
- Despliegue en GitHub Pages como proyecto open source educativo sin servidor
- Sin base de datos: todo el estado persiste en archivos JSON locales, reduciendo complejidad operativa
- Multiidioma nativo con catálogos en inglés, español, francés y portugués bajo data/i18n/
- Enriquecimiento opcional con LLMs que intenta múltiples modelos hasta encontrar uno funcional
- Sin cookies ni trackers; único estado del lado del cliente es localStorage para preferencia de tema
- Dockerizado con imagen oficial en ghcr.io y workflow de publicación automatizado
- Licencias claras: MIT para el software, respetando licencias CC BY-SA 3.0 de Wikipedia y Creative Commons de Wikimedia
- Dependencia de APIs externas (eBird API requiere key gratuita; Cornell Lab tiene bot gate desde septiembre 2026)
- Sin base de datos implica que history.json debe gestionarse manualmente para reinicios o limpieza
- El enriquecimiento con LLMs es opcional y añade latencia si se activa sin endpoint OpenAI configurado
- Requiere Python 3.12+ y uv instalado; no funciona nativamente en entornos sin estas herramientas
Perfil de infraestructura
Estimación inicial derivada del repositorio y de los servicios detectados.
Despliegue detectado
Qué señales reales de instalación hemos encontrado.
Despliega en Docker usando la imagen de ghcr.io o construye localmente con docker build -t bird-of-the-day . Asegura que EBIRD_API_KEY esté en .env. Para GitHub Pages, configura el workflow de CI para publicar en la rama gh-pages. Usa volumen mount para persistir history.json y cache/ si es necesario. El sitio se regenera automáticamente cada día; para forzar regeneración, vacía history.json. Requiere 2 núcleos CPU y 2GB RAM mínimo.
Stack y dependencias
Componentes inferidos a partir de manifests, configuración y documentación.
Puede sustituir a
Relaciones detectadas por el análisis del repositorio y su categoría.
Experiencia real de la comunidad
Ayuda a contrastar la estimación automática con instalaciones reales.
Todavía no hay datos comunitarios para este proyecto.