Blog
Working notes
ChatGPT Booster: virtual scrolling para conversaciones largas en ChatGPT
Cómo desarrollé una extensión Chrome que reduce de 46,000 a 3,000 nodos DOM en conversaciones de 600+ mensajes usando virtualización CSS y MutationObserver.
Crear una app móvil con Next.js y Capacitor: de web a nativa
Transforma una aplicación Next.js en una app nativa para Android e iOS usando Capacitor, manteniendo una sola base de código.
Automatizar el scaffolding de Client Extensions en Liferay con Bash
Creé scripts Bash que generan proyectos completos de Client Extensions para React y Angular en segundos, eliminando el boilerplate y asegurando compatibilidad con Liferay DXP.
Automatizar builds de Android e iOS con GitHub Actions
Configura pipelines de CI/CD para generar APKs de Android y IPAs de iOS automáticamente con cada push, usando GitHub Actions y Capacitor.
Client Extensions vía Document Library y Fragmentos en Liferay DXP
Una alternativa flexible al despliegue clásico: subir Client Extensions a la Document Library y cargarlas desde fragmentos personalizados, sin necesidad de Remote Applications.
Guía completa de Client Extensions en Liferay DXP 7.4
Las Client Extensions revolucionan el desarrollo en Liferay DXP al permitir extender la plataforma sin desplegar módulos OSGi. Aprende a crearlas desde cero.
Headless Delivery vs JSONWS: elegir la API correcta en Liferay DXP
Liferay ofrece dos sistemas de APIs: la moderna Headless Delivery (/o/api) y la clásica JSONWS (/api/jsonws). Análisis práctico de cuándo usar cada una y cómo migrar.
Master Pages y StyleBooks en Liferay DXP: sistema de diseño para portales
Master Pages y StyleBooks son las herramientas de Liferay para mantener consistencia visual en portales enterprise. Análisis de sus capacidades y limitaciones actuales.
De Liferay 7.1 a 7.4: evolución de la plataforma y estrategia de migración
Una retrospectiva técnica de los cambios entre Liferay 7.1, 7.2, 7.3 y 7.4, con estrategias prácticas de migración basadas en experiencia real con proyectos enterprise.
Objects en Liferay DXP: modelado de datos sin escribir código
Liferay Objects permite crear entidades de datos completas con API REST automática, validaciones y relaciones, sin necesidad de Service Builder ni una sola línea de Java.
Portlets React en Liferay DXP: desarrollo con liferay-npm-bundler
Antes de las Client Extensions existían los portlets React con liferay-npm-bundler. Cómo funcionan, cuándo siguen siendo útiles y cómo estructurar un proyecto completo.
Service Builder en Liferay DXP 7.4: cuándo y cómo usarlo
Service Builder sigue siendo relevante en Liferay 7.4 para lógica de dominio compleja. Guía práctica sobre cuándo elegirlo sobre Objects y cómo estructurar módulos api/service.