Automatiza el versionado semántico, la generación del changelog y la publicación de paquetes en CI a partir de los mensajes de commit.
lerna/lerna
Un sistema de compilación para gestionar y publicar varios paquetes de JavaScript/TypeScript desde un único repositorio (monorepo).
- Estrellas
- 36,033
- Forks
- 2,267
- Issues abiertos
- 298
- Último commit
- hace 21 horas
¿Qué es?
Lerna es un sistema de compilación para monorepos, donde varios paquetes de JavaScript o TypeScript conviven en un mismo repositorio de Git. Se encarga de coordinar las tareas propias de esta estructura, como ejecutar comandos en distintos paquetes, enlazar entre sí los paquetes locales y publicarlos en npm.
El proyecto se basa en el ecosistema de paquetes de npm y se distribuye como el paquete lerna. La documentación incluye instrucciones para empezar, guías de funcionalidades y tutoriales interactivos en lerna.js.org. El README indica que la responsabilidad del proyecto ha pasado a Nx, que sigue manteniéndolo.
Lerna está pensado para equipos que quieren versionar y publicar juntos paquetes relacionados sin tener que gestionar cada repositorio por separado.
Funciones clave
- 01Ejecuta comandos en todos los paquetes del repositorio.
- 02Enlaza los paquetes locales para que puedan depender unos de otros durante el desarrollo.
- 03Publica varios paquetes en npm desde un único repositorio.
- 04Admite paquetes de TypeScript y JavaScript.
Casos de uso
- Mantener una biblioteca de componentes compartida, dividida en varios paquetes de npm.
- Versionar y publicar juntos paquetes relacionados desde un único repositorio.
- Ejecutar scripts de compilación o pruebas en todos los paquetes de un monorepo.
Inicio rápido
- 1
Consulta la guía Getting Started en el sitio de documentación
- 2
Lee el resumen de funciones para saber qué ofrece Lerna
Antes de usarlo
- El README indica que la gestión del proyecto pasó a Nx, por lo que su rumbo futuro está ligado a Nx.
- El README no incluye ningún comando de instalación, así que tendrás que consultar la documentación externa para encontrar las instrucciones de configuración.
Temas
Preguntas frecuentes
- ¿Qué es lerna?
- Un sistema de compilación para gestionar y publicar varios paquetes de JavaScript/TypeScript desde un único repositorio (monorepo). Lerna es un sistema de compilación para monorepos, donde varios paquetes de JavaScript o TypeScript conviven en un mismo repositorio de Git. Se encarga de coordinar las tareas propias de esta estructura, como ejecutar comandos en distintos paquetes, enlazar entre sí los paquetes locales y publicarlos en npm.
- ¿lerna es gratuito? ¿Qué licencia tiene?
- lerna es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿lerna sigue mantenido?
- Mantenimiento activo. El último commit de lerna fue el 6 nov 2026.
- ¿Para qué puedo usar lerna?
- Mantener una biblioteca de componentes compartida, dividida en varios paquetes de npm. Versionar y publicar juntos paquetes relacionados desde un único repositorio. Ejecutar scripts de compilación o pruebas en todos los paquetes de un monorepo.
- ¿Cómo se instala lerna?
- Consulta la guía Getting Started en el sitio de documentación Lee el resumen de funciones para saber qué ofrece Lerna
- ¿Dónde consigo lerna?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/lerna/lerna
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Una extensión para editores y un plugin de JetBrains que ofrece una interfaz visual para proyectos, tareas, generadores y el grafo de tareas de monorepos de Nx y Lerna.
Interfaz gráfica pensada primero para Windows que gestiona instalaciones y actualizaciones con WinGet, Scoop, Chocolatey, Homebrew, APT, pip, npm y más.
Una plataforma de compilación para monorepos de TypeScript y proyectos multilenguaje que almacena en caché el trabajo sin cambios, ejecuta solo las tareas afectadas y se integra con CI.
Gestor de paquetes rápido y eficiente en disco para Node.js, con un almacén compartido direccionable por contenido, aislamiento estricto de dependencias y soporte para monorepos.
Herramienta CLI para gestionar versiones de paquetes, changelogs y publicaciones en monorepos mediante archivos changeset que los colaboradores añaden junto con sus cambios.