El futuro de Lodash
Escrito por Ulises Gascón
Oct 14, 2025 — 7 min readHace solo unos minutos acabamos de anunciar que empieza un nuevo capítulo en la historia de Lodash. Un capítulo lleno de esperanza, ilusión y mucho trabajo, donde dejamos atrás años de mantenimiento solitario para abrir paso a un modelo colaborativo y sostenible, en un momento en que el ecosistema JavaScript necesita más que nunca estabilidad y coordinación.
Una realidad innegable
Lodash es una librería de utilidades con una larga historia. Aunque JavaScript ha evolucionado mucho desde 2012, hoy en día:
- 9.3 millones de sitios web la usan.
- Un tercio de los 10 000 sitios más populares también lo hacen.
- En npm, alcanzamos los 2.4 mil millones de descargas semanales (sumando todas las variantes de Lodash).
Directa o indirectamente, muchos dependemos de Lodash cada vez que hacemos npm i
en cualquier proyecto.
Incluso con campañas como “You don’t need Lodash”, decenas de tutoriales explorando alternativas y migraciones… el tiempo pasa y no terminamos de movernos hacia otras librerías o soluciones más acordes a 2025, simplemente porque es muy difícil conseguir el tiempo y los recursos para hacer ese trabajo. Es un esfuerzo que rara vez se traduce en valor de negocio tangible dentro de los sprints o KPIs.
Muchas veces es más fácil mantener algo que ya funciona que reinventar la rueda. Reescribir para tener un stack más moderno que, con el tiempo, volverá a correr la misma suerte.
Es una verdad incómoda que cuesta digerir, igual que nos cuesta asumir que muchos proyectos de software tienen una pequeña época en la que podemos innovar antes de convertirse en “legacy” y pasar a formar parte de las grandes flotas de software que siguen haciendo que el mundo gire.
John-David Dalton (JDD) ha realizado un trabajo increíble todos estos años manteniendo la librería y luchando por mantener el barco a flote. No es sencillo sostener una librería tan popular siendo una sola persona.
El plan
El futuro de Lodash se centrará en hacer que el proyecto sea sostenible, partiendo de la idea de asumir que está feature-complete (ref).
Nuestra filosofía:
- Simplificar el mantenimiento
- Ofrecer un futuro claro a los usuarios
- Mejorar la postura de seguridad
Estos principios podrán evolucionar a medida que avancemos y descubramos los unknown unknowns (problemas que aún no sabemos que existen), pero en líneas generales podemos esperar lo siguiente:
Simplificar el mantenimiento
Para que Lodash pueda sostenerse en el tiempo, necesitamos repartir la carga de decisión y mantenimiento. El primer paso será constituir un gobierno técnico, pasando de un modelo Benevolent Dictator for Life (BDFL) con John-David a un modelo más plural con un Technical Steering Committee (TSC) que reparta la carga de trabajo y decida sobre el proyecto buscando consenso. Este será un cambio cultural profundo.
Uno de los mayores retos actuales en Lodash es la dificultad técnica de mantener tantas versiones de la librería (lodash-amd, lodash._reinterpolate, lodash._getnative, lodash._basecopy...). Seguramente la decisión sea deprecar muchas de estas en favor de la librería principal.
Una de las primeras cosas que necesitamos restaurar es el sistema de integración continua, para poder aterrizar cambios pendientes y garantizar que no rompemos compatibilidad. Esto permitirá publicar releases centralizadas en una única librería con todas las utilidades, sin versiones troceadas. A día de hoy existen muchas librerías que permiten instalar o incluir en nuestros bundles solo las utilidades específicas que queremos, sin necesidad de arrastrar toda la librería.
Mejorar la postura de seguridad
La seguridad ha sido históricamente un punto delicado en Lodash, que ha sufrido incidentes como prototype pollution o ReDoS. Esto ha generado un aluvión de reportes de seguridad inválidos, drenando buena parte del tiempo de JDD. Para evitarlo, en el futuro esta carga de trabajo de triage (clasificación y priorización de reportes de seguridad) será realizada en equipo, como ya ocurre en otros proyectos de la OpenJS Foundation como Node o Express.
Con la inclusión de un Threat Model, podremos simplificar bastante el triage, concretar mejor nuestra política de seguridad y ayudar a quienes reportan vulnerabilidades a entender qué consideramos válido o inválido (What is a Vulnerability and What’s Not? Making Sense of Node.js and Express Threat Models).
Además, adoptaremos formalmente el CNA de la fundación (ref) para escalar incidentes y solicitar CVEs. También mejoraremos las vías de reporte adoptando GitHub Advisory, y documentaremos el proceso para hacer security releases dentro de un Incident Response Plan (IRP), como ya hacen otros proyectos.
Finalmente, una vez que el proyecto se estabilice y definamos cómo la próxima major version gestionará los breaking changes, es posible que realicemos una auditoría externa para mejorar la documentación y revisar posibles vulnerabilidades.
Ofrecer un futuro claro
JavaScript es un lenguaje dinámico que evoluciona sin romper retrocompatibilidad. Esto nos lleva a plantear una reescritura progresiva de la librería para usar funciones nativas bajo las interfaces existentes. Así, aunque sigas usando Lodash en tu proyecto legacy, este podrá beneficiarse de las optimizaciones del motor V8 sin penalizar el rendimiento.
Probablemente, nuestra siguiente major version limitará la compatibilidad a versiones modernas de Node.js y navegadores, permitiendo usar sintaxis actual. Será una versión semver major, pero la migración no debería ser dolorosa para los usuarios.
Lo que está claro es que no planteamos el desarrollo de nuevas funcionalidades como prioridad, porque la prioridad ahora es ofrecer estabilidad, claridad y confianza a largo plazo.
Lecciones aprendidas con Express
En enero de 2024 lanzamos un plan ambicioso para llevar a Express al siguiente punto de su historia como framework (ref).
Lo que aprendimos con Express fue que la sostenibilidad no llega por inercia: hace falta una comunidad activa, un gobierno claro y un apoyo real — tanto técnico como económico. Cambiar el modelo de gobierno, repartir responsabilidades y contar con apoyo de la Sovereign Tech Agency fueron pasos clave para revitalizar el proyecto.
Express 5.0 salió adelante (¡tras una década de espera!) y muchas de las cosas que teníamos en mente se materializaron. Puedes leer el reporte completo.
Estamos aplicando ahora una estrategia, filosofía y prioridades muy similares en Lodash a las que usamos en su día en Express, porque sabemos que funciona y que es mucho más sostenible.
El futuro
La realidad es que, aunque estos planes tengan éxito y logremos que nuestro ecosistema sea más seguro, la sostenibilidad sigue siendo una deuda pendiente. Tan irónico como este meme:
Imagen de xkcd 2347 - Dependency
Sí, en 2025 seguimos igual. Poco ha cambiado en la realidad de muchos maintainers.
Cuando una librería que lleva años pasándolo mal es rescatada por otros, solemos celebrarlo. Pero el problema de fondo sigue siendo el mismo: no somos sostenibles. Y aunque no lo creas, Node.js no tiene empleados, como tampoco los tiene Express. La mayoría de tus maintainers favoritos —las personas que crean y mantienen las librerías que todos usamos para que el mundo siga girando— siguen sin cobrar en la inmensa mayoría de los casos.
Como dice Robin Ginn, “el código abierto no puede depender de montones mágicos de dinero”.
Lodash y Express tienen la suerte de estar bajo el paraguas de la OpenJS Foundation, donde contamos con mecanismos como el Cross Project Council para arrancar iniciativas y compartir preocupaciones que acaban cambiando la historia de los proyectos. Pero son muchos los proyectos de los que todos dependemos que no tienen esa suerte.
Faltan más iniciativas como Alpha Omega o Sovereign Tech Agency que sigan ayudando a los proyectos a llevar iniciativas complejas adelante. No podemos seguir ignorando que el open source necesita una financiación real para ser sostenible. El open source es un bien de la humanidad, y es responsabilidad de todos cuidarlo y hacerlo prosperar.
Y sí, también busco patrocinadores — especialmente empresas — que quieran ayudar a mantener el stack que muchos de vosotros usáis cada día. Porque sostener el software libre es una responsabilidad compartida.
Lodash sigue moviendo la web, y con este nuevo modelo queremos que también inspire a una nueva generación de mantenedores. Si trabajas con JavaScript, si tu empresa depende de librerías open source o si simplemente te importa el futuro del software libre, este es el momento de involucrarte.