Desde que empecé con mi blog en 2014, elegí WordPress porque, en aquel entonces, era la mejor opción: buenos themes, plugins e integraciones listas para usar. Sin duda, para mí fue la mejor elección, y para muchos aún lo sigue siendo, ya que es una gran herramienta.
Estuve valorando opciones más livianas, pero también más complejas de mantener e implementar, debido a la falta de comunidad, plantillas y plugins que WordPress sí cubría.
Pero fue en 2017 cuando descubrí notion.so y empecé a usarlo como una wiki personal: para anotar toda la información técnica y manuales, e incluso algunos drafts que después pegaba en el editor de WordPress. Lo que más me sorprendió fue su simplicidad y lo adaptable que era. Para mí fue como el primer editor Markdown realmente simple de utilizar. Con los años fueron implementando más bloques, hasta el punto de poder crear tus propias bases de datos al más puro estilo “Microsoft Access”.
Hace un par de años le estuve dando vueltas: ¿podría ser Notion una alternativa a mi WordPress? Y ojo: no pretendo asumir que Notion pueda ser una alternativa a WordPress, porque por sí solo no podría. Pero en mi caso —un blog simple, con un theme muy minimal como el C Theme de Asithemes, basado en Genesis y usando solo el módulo de Posts y poco más— sí encajaba.
En estos últimos años me empezó a dar pereza mantener WordPress: sus actualizaciones, los plugins, e incluso tener que entrar al dashboard para actualizar y publicar mis posts. En Notion no me pasa. Es una herramienta que uso casi a diario, me resulta muy sencilla y me permite escribir mis posts con la misma interfaz fluida que ya uso en el día a día. Incluso editar una errata es tan fácil como abrir Notion en el móvil y corregirla. Además, no tengo que gestionar ninguna base de datos SQL (MariaDB o similar): los datos simplemente están en Notion, gratis y sin mantenimiento.
Por eso, hoy os presento el nuevo Minimalist Blog, alojado en Cloudflare, construido con Next.js y potenciado por mi “segundo cerebro”: Notion.

¿Cómo lo he hecho?
La arquitectura es sorprendentemente sencilla, pero potente. Aquí te cuento los detalles técnicos de cómo he montado este sistema:
- Base de datos en Notion, a la que llamo vía API.
- Un proyecto construido en Next.js:
- El script consulta la base de datos de Notion vía API y lo muestra en esta página web.
- Para no perder SEO, las URLs las intento construir igual que lo hace WordPress, implementando una función slugify que toma el título del post en Notion, lo limpia, quita acentos, convierte a minúsculas y reemplaza los espacios por guiones.
- Snapshot estático: cuando despliego Next.js, genera todo el HTML estático y Cloudflare lo sirve al instante (Edge Network).
- He configurado una rotación de caché cada 30 minutos. Esto es crítico porque las imágenes de Notion caducan cada 60 minutos; al regenerar cada 30 minutos, aseguro que los enlaces se refresquen antes de expirar.
- Esto garantiza buena velocidad y una frescura razonable sin saturar la API de Notion.
- He implementado un motor de bloques personalizado que soporta:
- Diagramas en código: los bloques Mermaid se renderizan como diagramas visuales.
- LaTeX: las ecuaciones se renderizan con KaTeX.
- Bloques de código: resaltado de sintaxis nativo para múltiples lenguajes.
- Imágenes: cuando incrusto una imagen, se usa la URL generada por Notion.
- Vídeos y multimedia: igual que con las imágenes, pero usando la dirección original (por ejemplo, YouTube).
- Logo y favicon: se establecen directamente desde Notion, sin tocar código, y se inyectan dinámicamente en el layout global.
- Seguridad: las claves de la API y el ID de la base de datos se manejan mediante variables de entorno.
Conclusión
Este nuevo stack “serverless” me permite prescindir de un hosting tradicional: uso la capa gratuita de Cloudflare Pages y una “base de datos” también en la capa gratuita de Notion. Es el minimalismo llevado al extremo, tanto en diseño como en mantenimiento.