Pega un lockfile o un fragmento para listar los paquetes y versiones resueltas que se reconocen. Consulta el informe para encontrar paquetes registrados con varias versiones.
Se ejecuta localmente en tu navegadorEsta página lee package-lock.json, pnpm-lock.yaml o yarn.lock en el navegador e informa de lo que fija el lockfile: cuántas entradas resuelve, cuántos nombres distintos contiene y qué nombres quedan fijados a más de una versión. No se instala nada ni se contacta con ningún registro.
Pega el archivo o una sección y pulsa Analizar en local. El informe muestra el formato detectado, el número de entradas resueltas y los nombres duplicados; la tabla imprime nombre, versión y origen de cada entrada, y Copiar lleva el informe JSON al portapapeles.
Un lockfile de npm se reconoce por sus campos lockfileVersion, packages o dependencies. Los archivos de versión 2 y 3 se leen del mapa packages: cada clave que contiene node_modules/ se convierte en una entrada, así que la entrada del proyecto raíz ("") no se cuenta y una ruta anidada como node_modules/foo/node_modules/bar aparece como bar. Los archivos de versión 1 se leen del mapa dependencies.
Un lockfile de pnpm se reconoce por su lockfileVersion o su sección packages, y cada clave /nombre@versión se convierte en una entrada, incluidos nombres con ámbito como /@babel/core@7.24.0. Un lockfile de Yarn clásico se reconoce por sus bloques de selectores: la línea version se empareja con cada selector de la clave, así que una línea que asigna dos rangos a una versión produce dos entradas, y los selectores con comillas como "@scope/pkg@^0.4.0" se despojan de ellas antes de tomar el nombre.
Una entrada es una resolución, no un paquete distinto: en npm es una ruta del árbol y en Yarn un selector, así que una dependencia instalada en dos niveles aparece dos veces. El recuento de duplicados trabaja por nombre entre versiones: se avisa de un nombre fijado a dos versiones distintas, pero no de la misma versión alcanzada por dos selectores.
El informe JSON contiene format, resolvedPackages, uniqueNames y namesWithMultipleVersions, de modo que puede compararse entre dos ramas. La tabla imprime como máximo 500 filas y lo indica cuando el lockfile es mayor; las métricas y el informe siempre cuentan todas las entradas.
No se descarga nada: la página no contacta con npm, el registro de pnpm ni Yarn, así que no puede verificar que una versión exista, que un hash de integridad coincida o que un paquete esté obsoleto o afectado por un aviso de seguridad. Una entrada sin campo version se imprime como sin resolver, lo que suele indicar que el lockfile se editó a mano o lo escribió otra herramienta.
Un JSON mal formado detiene el análisis con una pista y la posición donde falló el análisis; un YAML que no sea un lockfile de pnpm y un JSON sin sección de paquetes reconocida responden con el mismo mensaje en lugar de una tabla vacía. Copiar antes de analizar devuelve una pista en vez de un portapapeles vacío.