Construyo mi propio CMS para mi blog

Puedes crear un blog de miles de formas: contratar algún SaaS, programar tu propio blog mediante plantillas y ficheros estáticos (para lo que hay miles de herramientas como Hugo), puedes programarlo con cualquier tecnología backend o frontend… como verás, hay miles de combinaciones y yo he probado prácticamente todas hasta encontrar la que más me gusta a mí.
Mi objetivo último es optimizar mi tiempo: tener procesos eficientes, que me gusten y me permitan crear contenido mientras aprendo. Si te lo preguntas, sí desarrollar todo esto requiere tiempo, pero para mí es un hobby que me permite mejorar mis habilidades y conocimientos, y enseñar a otras personas a crecer haciendo lo mismo que yo.
Como me gusta mucho usar React para desarrollar interfaces web, he elegido Next.js que para mí es el mejor framework. Además, la idea de tener SSR y algo de caché me gusta más que tener que generar ficheros estáticos. Por otro lado, a nivel profesional me dedico a gestionar infraestructura, me resulta más cómodo tener un servidor cloud que gestionar diferentes servicios serverless (también por pricing siendo honestos). Sobre esto hablaré en otro post, así que no olvides suscribirte a la newsletter para no perdértelo.
Al final, después de probar todo tipo de herramientas me quedo con Next.js, ya que me resulta muy cómodo y fácil, y más con plataformas como V0 que te ayudan a diseñar interfaces web. He estado probando tanto los Server Actions como la API de Next.js y no me termina de convencer para tener un proyecto grande a día de hoy (en el futuro puede que mejore la experiencia y en mi caso prefiero tener un monorepo/monolito que mantener N proyectos). En cualquier caso, decidí crear un proyecto separado con la API y estoy encantado. Es cierto que tener dos proyectos requiere un poco más de mantenimiento.
Para la creación de contenido inicialmente comencé gestionando ficheros markdown, pero se me hacía muy tedioso tener que estar creando ficheros manualmente o imágenes, por lo que decidí automatizarlo con un pequeño administrador. Aquí he estado probando Vite con React-Router 7 (o remix.js) y me encanta la experiencia. Cualquier side-project es bueno para aplicar nuevas ideas o herramientas, y aprender y mejorar.
Finalmente me alquilé un servidor cloud y desplegué todos los proyectos ahí junto con una base de datos MySQL. Esto te lo contaré en otro post ya que me da para escribir un post completo sólo hablando de este tema. Utilizo Docker y me he creado mi propia herramienta para desplegar a producción desde local, sin necesidad de tener pipelines.
Finalmente, en este administrador tengo diferentes herramientas para medir el tráfico de la página (analítica web), gestión de imágenes y de contenido privado para la comunidad. Sí, he creado una membresía y por eso este tiempo he estado menos activo, ya que he estado buscando la forma de ayudar a personas como tú que quieren mejorar en el sector IT. Así que te invito a echarle un vistazo, ya que en la membresía creo contenido profundo y te doy soporte a todas las dudas que tengas. Lo que necesite la comunidad, lo planteamos, ya sea contenido, soporte o una llamada grupal.
¿Te ha parecido interesante el artículo?¡ Únete a la comunidad para recibir contenido exclusivo !