← Volver al inicio

¿Por qué hacer un mini SSG?

Este proyecto no nació para competir con los grandes generadores de sitios estáticos (SSG) del mercado. Nació de una necesidad personal: resolver el problema de publicar un blog sin heredar la complejidad de herramientas modernas innecesarias.

🧬Mi filosofía para el proyecto: Menos es Más

1. El rechazo a la complejidad innecesaria

En lugar de lidiar con las reglas de formato de Markdown, que a veces pueden ser ambiguas, decidí usar YAML. ¿Por qué? Porque es puramente estructurado. Es data cruda que el motor toma y coloca en su lugar. No hay que "traducir" sintaxis complejas; solo es información fluyendo hacia una plantilla.

2. Un blog sin el peso de JavaScript

Hoy en día, la web parece no poder vivir sin frameworks pesados de JS. Sin embargo, recordé una premisa de Richard Stallman: la libertad de navegar con el JavaScript desactivado. Esto me inspiró a volver a las raíces.

"Mi idea era volver a lo simple: HTML y CSS puro. Un lugar donde entras, lees y te vas, sin que tu navegador tenga que ejecutar miles de líneas de código invisible."

3. El espíritu de los "Small Web"

Este proyecto se alinea con movimientos como la Small Web o el Low-tech Web. Se trata de crear herramientas que "solo resuelvan", sin ser sofisticadas, pero siendo 100% funcionales. Al eliminar JS, el blog es:

  • Universal: Se lee igual en un navegador de 1995 que en uno de 2026.
  • Privado: No hay scripts rastreándote.
  • Eficiente: La carga es instantánea porque el navegador solo tiene que renderizar texto y estilo.

Automatización real, plantillas directas y control total. Eso es todo lo que necesitaba.

Este sitio es generado dinámicamente mediante un motor estático escrito en Go. Su función principal es transformar datos puros y plantillas modulares en un sitio web ligero, rápido y optimizado para la web moderna.

🏗️ Arquitectura del Generador

El flujo de trabajo organiza las responsabilidades para que el diseño y el contenido vivan separados:

  • 📄 Content: Archivos .yaml que actúan como la base de datos de cada post.
  • 📐 Layout & Pages: Estructuras HTML base donde se inyecta el contenido dinámicamente.
  • 🧩 Components: Bloques reutilizables (nav, footer, botones) para evitar código duplicado.
  • 🎼 Main.go: El núcleo que orquesta la lectura, el procesado y la exportación.

🚀 SEO y Sindicación Nativa

Para asegurar que el contenido sea fácilmente indexable por buscadores y accesible para lectores de noticias, el motor genera automáticamente dos archivos críticos durante el proceso de build:

📡 Feed RSS: Permite que los usuarios se suscriban a las actualizaciones del blog mediante lectores de feeds.
🗺️ Sitemap: Un mapa XML detallado que ayuda a Google y otros motores de búsqueda a rastrear todas las páginas del sitio.

📂 Estructura del Directorio /public

El resultado final es un despliegue de archivos estáticos listo para cualquier servidor o para github pages:

Archivo / CarpetaDescripción
/post/(titulo)/index.htmlEntradas del blog generadas desde plantillas.
/lista-de-posteos/index.htmlTodas las entradas.
/sitemap.xmlSoporte nativo para SEO (Motores de búsqueda).
/index.xmlSoporte para RSS Feed (Sindicación).
/robots.txtInstrucciones para rastreadores web.