- Un caso de crear un blog directamente sin Jekyll, Ghost ni WordPress
- Los requisitos básicos son usar un dominio propio, generar un sitio estático, cumplir con SEO y agregar publicaciones fácilmente, entre otros
- La configuración central consiste en el script
template.html y render.py, y con solo escribir artículos en Markdown se renderizan automáticamente todas las páginas
- Se usa la librería de Python
markdown2 para automatizar la conversión de Markdown → HTML y la generación de páginas
- Se enfatiza una estructura que cumple con SEO y con los estándares web modernos, mientras permite agregar contenido de forma sencilla
Requisitos del blog
- Usar un dominio ya propio
- Mantener estándares web modernos y compatibilidad con SEO
- Que agregar artículos sea muy fácil
- Que todas las páginas se generen de forma estática
Resumen del proceso de implementación
- Crear el archivo
template.html → configurar la estructura base de HTML
- Instalar la herramienta de renderizado Markdown con el comando
pip install markdown2
- Pedirle a
O1 un script de Python para renderizado (render.py)
- Escribir publicaciones dentro de la carpeta
posts/ con el formato eng.md
- Ejecutar
render.py para convertir a HTML y crear la carpeta de salida
Plantilla HTML principal (template.html)
- La estructura HTML es simple y minimalista, e inserta el resultado renderizado de Markdown en
{{ content }}
- El CSS usa tipografía basada en
system-ui, padding adaptable y configuración de color-scheme para mejorar la legibilidad
Script principal de renderizado en Python (render.py)
- Usa
markdown2 para convertir cada publicación en Markdown a HTML
- Durante la conversión, reemplaza automáticamente la ruta de
<img> por /posts/{post_code}/
- El título HTML se extrae del encabezado
# en Markdown
index.html se compone de greetings.md + una lista de títulos de cada publicación
- El resultado se guarda como
.html en la carpeta ./blog/
5 comentarios
Yo también estoy manejando mi blog justo de la misma manera que arriba. Uso un SSG que hice para cubrir mis necesidades personales. Le fui agregando funciones personalizadas para aprovechar características como imagen de miniatura, categorías y etiquetas. Las imágenes adjuntas las convierto automáticamente a
webppara referenciarlas, y gracias a eso la velocidad de renderizado me tiene muy satisfecho.Oh, entonces esas funciones personalizadas, ¿las van agregando ustedes mismos escribiendo el código directamente? A mí también siempre me tienta hacerlo todo DIY, pero termino dudando por las extensiones y funciones de plugins que ofrecen los frameworks de blogs SSG que ya venía usando.
Si dejas de lado la ambición, o mejor dicho, con solo quitarle un poco de ambición, el resto no es tan difícil. Incluso con
ssg, si se lo pides a la IA, te escribe todo el código, y si le pides que agregue funciones, la verdad es que también las añade todas jajaSi solo eliges una tipografía bonita, termina viéndose bastante bien.
Opiniones de Hacker News
Al empezar un blog usó SSG, pero al final se cambió a Wordpress y ganó más libertad
Dos elementos necesarios para que califique como blog
Aprecio por los sitios web independientes
Quiere soporte nativo en el navegador para text/markdown y text/gemini
Señalan un bug donde la cadena "Minimum viable blog" se reemplaza por el título de la publicación
Mantuvo un blog con una página HTML simple, pero ahora usa Astro para tener un sitio más avanzado
Experimento con Bun JS y usando HTML como cadenas de texto en JS
Algunos trucos aprendidos tras 15 años experimentando con un blog mínimo
Facilidad de un framework estándar de blogging estático usando Hugo/Zola y Cloudflare Pages
Al revivir un blog antiguo experimentó lo incómodo que es Hexo