4 MIN LECTURA · Pedro Thomaz

Sin paso de build

La mayoría de los sitios web modernos se publican a través de una pipeline de build. El nuestro no. Esto es lo que la contención le da a un sitio que tiene que durar.

Sin paso de build

Abre nuestro repositorio y falta algo. No hay carpeta dist/. No hay node_modules en el deploy. Ningún bundler, ningún paso de compilación esperando entre una edición y el sitio en producción. Cambias un archivo; es ese archivo el que se ejecuta.

Es deliberado, y es más raro de lo que debería.

El estándar que todos heredaron

La web moderna da por hecho un build. El código fuente se transpila, se empaqueta, se hashea y se vuelca en una carpeta que nadie lee. Funciona — hasta que deja de funcionar. Las toolchains se pudren. Un sitio construido sobre una toolchain de 2021 a menudo ni siquiera compila en 2026: una dependencia se movió, un loader se rompió, el lockfile apunta a versiones que ya no existen. El build debía ayudar; ahora es lo que se interpone entre tú y un arreglo de una línea.

Lo que hacemos en su lugar

El sitio es PHP 8.3 sencillo, renderizado en el propio servidor. El contenido viene de un CMS headless a través de una API simple; todo lo demás es HTML, CSS y un poco de JavaScript escritos a mano. El despliegue es un espejo FTP y una purga de caché — sin CI, sin contenedor, sin pipeline que se rompa por el cambio de otra persona. Donde la mayoría de los stacks empaqueta y desfigura, nosotros mantenemos un archivo fuente y su gemelo minificado lado a lado, con cache-busting mediante una query ?v=<mtime> para que el navegador reciba siempre la última versión.

El compromiso honesto

No es gratis. Mantenemos esos archivos minificados a mano en vez de dejar que lo haga una herramienta — una pequeña disciplina, un paso extra por cada cambio. Pero el coste es pequeño, visible y enteramente nuestro, no subcontratado a cuarenta dependencias que no controlamos.

Por qué importa

El sitio carga en milisegundos y puntúa en los 90 y pico en Lighthouse sin un solo plugin de optimización. No hay nada que nos ate — ni al cliente — a un proveedor. Y dentro de diez años, alguien puede abrir estos archivos y simplemente leerlos. Ese es todo el objetivo.

Un paso de build es una apuesta a que las herramientas seguirán ahí cuando las necesites. Preferimos no apostar con el sitio de un cliente.

La contención no es la ausencia de ingeniería. A veces es su punto más alto.