Tulio Solórzano
InicioCategoríasAcerca de
Tulio Solórzano

Este blog es una aplicación de internacionalización (i18n) multilingüe en inglés (en) y español (es) creada con Next.js y está alojada en Vercel. El sistema de gestión de contenidos (CMS) para este blog utiliza Postgres SQL en Supabase como base de datos. Las imágenes de las categorías y las entradas del blog se almacenan en mi bucket de AWS S3.

Navegación del Sitio

InicioCategoríasAcerca de

Proyectos

UI KitPanel de Ciberseguridad

Contacto

Contacta mePerfil de LinkedIn
© 2026 Tulio Solórzano. Todos los derechos reservados.

Tulio Solórzano — Acerca de

Sobre este blog

Este es mi blog personal sobre cultivar verduras en mi huerto casero durante el verano — un registro práctico de lo que cultivo, cómo cuido las plantas y las recetas estacionales que surgen.

Está escrito para otros jardineros y lectores curiosos: notas claras y sencillas sobre plantas, plagas y cosecha.

También es un portafolio vivo: utilicé este proyecto para actualizar mis habilidades en desarrollo web, aplicando patrones modernos de Next.js, localización, afinamiento de rendimiento y manejo resiliente de medios.

La actualización reciente se basó en ayudas programáticas y automatización asistida por IA para tareas repetitivas de migración — un enfoque pragmático y agentico que aceleró la migración manteniendo el control.

Para responsables de contratación: este sitio demuestra decisiones de nivel producción en rendimiento, accesibilidad, i18n y herramientas automatizadas — mostrando liderazgo técnico y ejecución práctica.

Características que impulsan este proyecto

Este sitio se impulsa por características prácticas: un flujo de autoría centrado en el contenido, localización robusta, alto rendimiento de páginas y manejo resiliente de medios (almacenamiento en Supabase + imágenes aptas para CDN).

La búsqueda y la descubribilidad son esenciales: la búsqueda en el encabezado, la navegación por categorías y los metadatos estructurados de las publicaciones facilitan encontrar contenido.

La ergonomía del desarrollador y la reproducibilidad importan: el código incluye scripts de migración y utilidades, enrutamiento declarativo y componentes de servidor para mantener un comportamiento predecible en servidor/edge.

La propia migración se apoyó en automatización y herramientas programáticas (migraciones scriptadas, pequeños codemods y scripts reutilizables): en otras palabras, un enfoque de desarrollo agentico donde ayudas automatizadas redujeron pasos manuales y aseguraron consistencia.

Las preocupaciones operativas — despliegues sencillos, menos piezas móviles y rutas de actualización claras — también influyeron en las elecciones de arquitectura al migrar a Supabase y adoptar los patrones más recientes de Next.js.

Migración del proyecto y lo que destaca

Este proyecto se migró desde una pila anterior basada en Next.js 13 y Directus ejecutándose en Railway a una pila moderna usando la última versión de Next.js y Supabase.

Por qué migré: Directus/Railway funcionó bien inicialmente, pero moverme a Supabase simplificó el alojamiento, el almacenamiento y las funciones en tiempo real, manteniendo un despliegue serverless sencillo.

Lo que destaca: el sitio ahora se beneficia del Postgres integrado de Supabase, APIs optimizadas para edge y almacenamiento para imágenes — mejorando el rendimiento y la mantenibilidad.

El frontend se actualizó para usar los patrones del app-router de Next.js, adoptando componentes de servidor, streaming y un enrutamiento simplificado para un sitio más resiliente y amigable con SEO.

En la práctica, esta migración redujo la complejidad operativa (menos piezas móviles), mejoró la paridad del desarrollo local y permitió una mejor integración para contenido, autenticación y almacenamiento de medios.

Stack actual (lo que usa el proyecto hoy)

Framework: Next.js (app router, componentes de servidor y metadatos para SEO).

Datos y autenticación: Supabase (Postgres, auth, flujos admin y helpers de datos).

Medios: S3 + CloudFront para garden_images, con acceso firmado vía OAC.

Rendimiento: optimización de imágenes desactivada para fiabilidad; el CDN maneja el caché.

i18n: rutas por idioma con diccionarios JSON y carga dinámica por locale.