Las instalaciones de Node han sido lentas durante años. Ejecutas npm install, vas a la máquina de café, vuelves y CI todavía está resolviendo @types/node. Aube cambia esa ecuación: completa una instalación cálida en CI de un proyecto real de 1,400 paquetes en 139 milisegundos, unas 7.3 veces más rápido que pnpm y 3 veces más rápido que Bun en el mismo escenario. Lo mejor: lee y escribe tu archivo de bloqueo existente, puedes probarlo sin forzar una migración de equipo.
Esta guía explica qué es Aube, cómo logra esos tiempos, cómo instalarlo, comparativas con pnpm, npm, yarn y Bun, y cómo encaja si construyes APIs con herramientas como Apidog diariamente.
<!--kg-card-begin: html-->
<!--kg-card-end: html-->
¿Qué es Aube?
Aube es un gestor de paquetes de Node.js ultrarrápido desarrollado por en.dev con licencia MIT. El nombre significa “amanecer” en francés y se pronuncia “ōb”. El proyecto está en beta (v1.0.0-beta.10) y apunta a compatibilidad total con pnpm v11.
Aube usa el mismo modelo en disco que pnpm (almacén global direccionable por contenido y diseño de enlaces simbólicos aislado), pero el pipeline de instalación está implementado en un lenguaje con hilos nativos, no JavaScript. Así, logra superar incluso a Bun en benchmarks, escribiendo directamente en tu pnpm-lock.yaml.
Aube lee archivos de bloqueo de pnpm, npm, yarn y Bun (pnpm-lock.yaml, package-lock.json, npm-shrinkwrap.json, yarn.lock, bun.lock). Puedes probarlo localmente mientras tu CI sigue usando pnpm, sin cambios para el resto del equipo.
Benchmarks de Aube: ¿qué tan rápido es?
El benchmark se basa en un proyecto real de ~1,400 paquetes medido con hyperfine. Se asume un archivo de bloqueo comprometido. La variable es la “calidez” de la caché: warm borra node_modules pero mantiene almacén global y caché de paquetes; cold borra todo.
Resultados de benchmarks oficiales:
<!--kg-card-begin: html-->
| Escenario | aube | bun | pnpm | yarn | npm |
|---|---|---|---|---|---|
| Instalación CI (caché cálida, sin node_modules) | 139ms | 416ms | 1.01s | 2.43s | 2.78s |
| Instalación CI (caché fría, sin node_modules) | 1.12s | 935ms | 1.57s | 6.60s | 4.21s |
install && run test (ya instalado) |
21ms | 42ms | 453ms | 351ms | 615ms |
Añadir dependencia (add is-odd) |
209ms | 414ms | 1.33s | 2.55s | 2.89s |
- En CI con caché cálida, Aube es 7.3x más rápido que pnpm, 3x más rápido que Bun.
- El ciclo
install && run testbaja a 21ms gracias al archivo de estado de instalación, mientras otros siguen revalidando. - En caché fría, Bun es ligeramente más veloz (E/S domina el proceso).
- Puedes repetir estos números localmente con
mise run benchdesde el repo de Aube.
Por qué Aube es más rápido que pnpm y Bun
Tres decisiones técnicas clave:
1. Pipeline de instalación nativo y multihilo:
Aube mueve el pipeline fuera de V8 y lo implementa en nativo con hilos, evitando el overhead de JS. Bun también es nativo pero incluye un runtime JS, mientras que Aube está optimizado para instalación únicamente.
2. Almacén virtual global por defecto:
Aube usa siempre un almacén global virtual, maximizando la reutilización de paquetes entre proyectos. El resultado: menos espacio y mayor velocidad, lo que es ideal para monorepos.
3. Atajo vía archivo de estado:
aube run test verifica un archivo de estado. Si package.json y el hash del lock coinciden, omite la instalación: solo una llamada stat, ejecución inmediata (21ms).
No hay magia: es el diseño de pnpm, optimizado y sin el arranque de JS.
Cómo instalar Aube
La forma recomendada es vía mise:
mise use -g aube
Verifica que esté en tu PATH:
aube --version
Alternativas:
- Con npm:
npm install -g @endevco/aube
- Con Homebrew (macOS/Linux):
brew install endevco/tap/aube
Para fijar la versión localmente en un proyecto:
mise use aube
Esto añade Aube a tu mise.toml, asegurando la misma versión para todos los shells en ese proyecto.
Consulta la documentación de instalación para opciones por SO y tarball.
Comandos diarios que realmente usarás
Aube replica la CLI de pnpm, por lo que la transición es directa:
aube install # instalar dependencias
aube add react # añadir dependencia
aube add -D vitest # añadir dependencia de desarrollo
aube remove react # eliminar dependencia
aube update # actualizar según package.json
aube run build # ejecutar script package.json
aube test # ejecutar test, instala si necesario
aube exec vitest # ejecutar binario local
aube dlx cowsay hi # ejecutar paquete temporal
aube ci # instalación limpia y congelada para CI
Atajos:
aubr build # aube run build
aubx cowsay hi # aube dlx cowsay hi
En pipelines usa aube ci: borra node_modules, verifica el lockfile y reinstala solo si todo cuadra; falla si hay divergencia.
Compatibilidad con archivos de bloqueo
Aube adopta un enfoque seguro: solo prueba localmente, sin afectar al equipo ni a CI.
<!--kg-card-begin: html-->
| Archivo de bloqueo | Lee | Escribe en su lugar |
|---|---|---|
aube-lock.yaml |
sí | sí |
pnpm-lock.yaml v9 |
sí | sí |
package-lock.json v2/v3 |
sí | sí |
npm-shrinkwrap.json |
sí | sí |
yarn.lock (v1 classic + v2+ berry) |
sí | sí |
bun.lock |
sí | sí |
Patrón recomendado:
- Tu equipo usa pnpm, CI sigue con
pnpm install --frozen-lockfile. - Ejecuta
aube installlocalmente; actualizapnpm-lock.yaml. - Si Aube convence, migra CI más adelante. Si no, lo eliminas sin impacto.
Advertencias:
- Lockfiles antiguos de pnpm v5/v6 deben actualizarse antes.
- Proyectos yarn PnP requieren volver a
node_modules.
Valores predeterminados seguros
Aube refuerza la seguridad con estos defaults:
- Edad mínima para releases: No instala versiones recién publicadas hasta que superen un umbral configurable.
- Bloqueo de dependencias sospechosas: Bloquea dependencias transitivas con URLs raras, entradas tipo parche o refs Git atípicas; debes aprobarlas manualmente.
-
Aprobación de scripts postinstall: Scripts
postinstallde dependencias están bloqueados por defecto; apruébalos conaube approve-builds. Los omitidos se listan víaaube ignored-builds.
Esto te obliga a elegir qué paquetes pueden ejecutar código, reforzando la postura de seguridad.
Diseño de módulos de Node
Aube implementa un diseño aislado:
-
node_modules/contiene solo las dependencias declaradas. - Transitivas en
node_modules/.aube/. - Los archivos de paquete se almacenan una sola vez en
$XDG_DATA_HOME/aube/store/(por defecto~/.local/share/aube/store/).
Consecuencias:
- Múltiples proyectos comparten dependencias en disco.
- Importaciones fantasma fallan: si no está en tu
package.json, no puedes requerirlo desde el nivel superior. - Instalaciones repetidas solo enlazan desde el almacén, sin descargar ni descomprimir.
Si usabas un diseño plano (npm clásico/yarn v1), es probable que debas añadir explícitamente algunos paquetes a tu package.json.
Workspaces y monorepos
Aube soporta workspaces y el protocolo workspace::
aube install -r
aube run test -r
aube add zod --filter @acme/api
Lee y escribe pnpm-workspace.yaml. Los nuevos workspaces pueden usar aube-workspace.yaml. Las flags -r y --filter funcionan igual que en pnpm, por lo que configs como turborepo o nx siguen operando sin cambios.
En monorepos de API, la mejora crítica es la reducción de tiempo de instalación en CI con caché cálida: de 1s (pnpm) a 139ms (Aube) por paquete.
Dónde encaja Aube en el flujo de desarrollo de API
Cuando desarrollas y pruebas APIs, la instalación es parte del ciclo de feedback en cada refactor. Ejemplo práctico:
- Diseña y simula la API en Apidog.
- Genera el cliente tipado o ejecuta pruebas de contrato en tu proyecto Node.
- Usa Aube localmente para instalaciones ultrarrápidas.
- Ejecuta la misma suite en CI con
aube ci.
El cambio de herramientas de Postman es parte del movimiento hacia herramientas rápidas, locales y seguras. Si ya usas Apidog en VS Code, sumar Aube solo requiere un mise use.
Migración desde otros gestores de paquetes
Desde npm:
aube install
Aube lee y reescribe package-lock.json. Obtendrás node_modules aislados, así que agrega a package.json cualquier importación fantasma rota. Consulta la guía para usuarios de npm.
Desde pnpm:
Migración sin fricción: mismo diseño en disco, lee pnpm-lock.yaml v9. El protocolo workspace: y filtros funcionan igual. Consulta las diferencias en la página de pnpm-users.
Desde yarn:
Lee yarn.lock v1/v2. Si usas Yarn PnP, cambia a nodeLinker: node-modules antes de probar Aube.
Desde Bun:
Lee bun.lock. Diferencia principal: Aube es independiente del runtime Node. Si gestionas versiones de Node con mise, Aube se integra igual.
Consideraciones del mundo real
Estado Beta:
Aube es v1.0.0-beta.10 (abril 2026). Apunta a pnpm v11 pero aún es nuevo. Úsalo localmente primero, mantén el archivo de bloqueo actual y valida en tu flujo antes de llevarlo a producción.
Fuera de alcance:
Aube no replica funcionalidades de mise (runtime, setup, self-update). Algunos comandos (whoami, token, owner, search, pkg, set-script) son stubs que delegan a npm. Si tu CI depende de ellos, mantén npm como respaldo.
Soporte de plataforma:
Mise es compatible con macOS, Linux y Windows vía WSL. Instalador nativo para Windows disponible, pero en fases iniciales. Consulta la matriz de instalación.
Comunidad:
Aube tiene Discord, 325 estrellas GitHub, y Buildkite para CI.
Preguntas frecuentes
¿Qué significa “aube”?
Amanecer, en francés. Se pronuncia “ōb”.
¿Reemplaza directamente a pnpm?
Casi: busca compatibilidad total con pnpm v11 y su lockfile. Algunos comandos de pnpm quedan fuera de alcance.
¿Puedo usar Aube en CI y pnpm localmente?
Sí, ambos pueden compartir pnpm-lock.yaml.
¿Cómo se compara con Bun?
Aube es 3x más rápido en instalaciones cálidas (Bun revalida más estados). Bun es un runtime JS, Aube es solo gestor de paquetes.
Comparativa de diseño aislado estilo pnpm.
¿Funciona en Windows?
Sí, vía WSL y con soporte nativo en desarrollo. Mise facilita instalación en todos los SO.
¿Es open source?
Sí, bajo MIT: GitHub.
¿Qué pasa con mi lockfile existente?
Aube lo lee y reescribe. Tus compañeros pueden seguir usando pnpm sin problema.
Conclusión
En 2026, la instalación de Node sigue siendo un cuello de botella innecesario. Aube es el gestor más rápido en instalaciones cálidas y comandos repetidos: 139 ms para 1,400 paquetes en CI; 21 ms para install && test cuando nada cambió; hasta 90% menos espacio en disco en máquinas con varios proyectos. Lee tu lockfile existente, prioriza seguridad y probarlo requiere solo un mise use aube.
Si ya pruebas APIs con un cliente rápido y “local-first” como Apidog, Aube es tu complemento ideal para la instalación. Descarga Apidog si aún no lo tienes, súmalo a tu próximo servicio Node y experimenta ciclos de feedback mucho más rápidos.
<!--kg-card-begin: html-->button<!--kg-card-end: html-->


Top comments (0)