Sistema de contenido dinámico GSoC
Este directorio utiliza un enfoque basado en datos para generar páginas GSoC, eliminando la necesidad de copiar y pegar contenido entre años.
Cómo funciona
- Archivo de datos: todo el contenido específico del año se almacena en
_data/gsoc-data.json - Secuencia de comandos del generador:
scripts/generate-gsoc-pages.pylee los datos y genera archivos de rebajas - Páginas generadas: el script crea archivos
YYYY.mdpara cada año.
Agregar un año nuevo
Para el año actual (con ideas de proyectos):
- Abra
_data/gsoc-data.json - Agregue una nueva entrada en
yearscon el año como clave:"2026": { "type": "current", "title": "GSoC 2026", "description": "Google Summer of Code 2026 program at omegaUp", "intro": "Your introduction text here...", "project_ideas": [...], "application_process": {...}, "communications": [...], "faq": [...], "related_docs": [...] } - Actualice el
typedel año anterior a"past"y agregue la matrizprojectsen lugar deproject_ideas. - Ejecute el generador:
python3 scripts/generate-gsoc-pages.py - Revise los archivos generados y confírmelos.
Para el año pasado (proyectos completados):
- Abra
_data/gsoc-data.json - Agregue una nueva entrada en
years:"2025": { "type": "past", "title": "GSoC 2025", "description": "Google Summer of Code 2025 projects", "intro": "Projects completed during GSoC 2025.", "projects": [ { "name": "Project Name", "description": "Project description", "result": "Project result/outcome" } ], "related_docs": [...] } - Ejecute el script del generador.
- Revisar y comprometerse
Actualización del contenido existente
Simplemente edite _data/gsoc-data.json y ejecute el script del generador. Todas las páginas se regenerarán con el contenido actualizado.
Beneficios
- Sin errores de copiar y pegar: fuente única de verdad para el contenido compartido
- Consistencia: todas las páginas siguen la misma estructura
- Actualizaciones fáciles: actualiza el archivo de datos una vez, regenera todas las páginas
- Control de versiones: el archivo de datos muestra exactamente qué cambió entre años
Estructura de archivos
gsoc/
├── _data/
│ └── gsoc-data.json # Single source of truth
├── _templates/ # (Legacy - not used anymore)
├── 2023.md # Generated file
├── 2024.md # Generated file
├── 2025.md # Generated file
├── index.md # Manual file (not generated)
└── README.md # This file
Notas
- El script del generador utiliza sólo la biblioteca estándar de Python (sin dependencias externas)
- Los archivos generados deben enviarse a git.
- El archivo de datos (
gsoc-data.json) es la fuente de la verdad; edítelo, no los archivos de rebajas generados. - Ejecute siempre el generador después de actualizar el archivo de datos.