[{"data":1,"prerenderedAt":41},["ShallowReactive",2],{"blog-posts-es":3},[4,14,23,33],{"title":5,"description":6,"date":7,"path":8,"tags":9,"readingTime":13},"Cómo hacer migraciones con Claude Code y no morir en el intento","Tres migraciones reales con Claude Code: el toolchain de un monorepo, screaming architecture y el rediseño de este sitio. Lo que antes tomaba semanas, hoy se hace en días.","2026-04-28","\u002Fes\u002Fblog\u002Fcomo-hacer-migraciones-con-claude-code-y-no-morir-en-el-intento",[10,11,12],"claude-code","migrations","tooling",9,{"title":15,"description":16,"date":17,"path":18,"tags":19,"readingTime":22},"oxlint-tailwindcss: el plugin de linting que Tailwind v4 necesitaba","El plugin de linting más completo para Tailwind CSS, nativo para oxlint. 22 reglas con autofix, zero-config y diseñado desde cero para Tailwind CSS v4.","2026-03-20","\u002Fes\u002Fblog\u002Foxlint-tailwindcss-el-plugin-de-linting-que-tailwindcss-necesitaba",[12,20,21],"tailwindcss","open-source",5,{"title":24,"description":25,"date":26,"path":27,"tags":28,"readingTime":32},"Lo que aprendí construyendo Design Systems y que haría diferente","Lecciones reales construyendo Design Systems en Vue y TypeScript: errores comunes, decisiones de arquitectura y qué haría diferente hoy.","2025-06-25","\u002Fes\u002Fblog\u002Flo-que-aprendi-construyendo-design-systems-y-que-haria-diferente",[29,30,31],"design-system","frontend","vue",7,{"title":34,"description":35,"date":36,"path":37,"tags":38,"readingTime":32},"Screaming Architecture: la clave para un frontend escalable","Tu proyecto frontend debería gritar lo que hace, no con qué está hecho. Ejemplos concretos de migración, convivencia con frameworks como Nuxt y manejo de shared state.","2025-06-11","\u002Fes\u002Fblog\u002Fscreaming-architecture-la-clave-para-un-frontend-escalable",[39,30,31,40],"architecture","nuxt",1777609837488]