Saltar al contenido
Totalmente local

Conversor npm ⇄ yarn ⇄ pnpm

Convierte comandos npm, yarn, pnpm, bun o deno a su equivalente en otro gestor de paquetes.

Entrada

Conversor npm ⇄ yarn ⇄ pnpm

Pega un comando de gestor de paquetes y esta herramienta lo reescribe para npm, Yarn clásico, Yarn berry, pnpm, Bun o Deno. Cambiar un proyecto, seguir un README escrito para una herramienta diferente, o simplemente escribir por reflex muscular desde el gestor equivocado — el comando que tienes no es el que necesitas, y esto lo convierte al instante en lugar de obligarte a buscar el equivalente de cada bandera a mano.

El gestor de origen puede detectarse automáticamente desde el comando mismo o establecerse explícitamente (útil si quieres que las líneas de otros gestores se marquen en lugar de omitirse silenciosamente). El gestor de destino es uno de npm, Yarn clásico, Yarn berry, pnpm, Bun o Deno. Los comandos de instalación, adición y eliminación llevan sus banderas correctamente — --save-dev de npm se convierte en --dev de Yarn, --save-exact de pnpm o --dev de Bun, y un npm ci simple se convierte en una instalación con --frozen-lockfile, o --immutable para Yarn berry. Los comandos de ejecución de scripts y sus argumentos finales después de -- también se preservan. Activa «preservar banderas sin equivalente» para mantener una bandera no reconocida tal cual en la salida en lugar de descartarla, y «advertir sobre banderas sin equivalente» para obtener una línea de comentario # indicando exactamente qué bandera o comando no tiene una coincidencia directa — la eliminación de Yarn berry de global add es un caso así.

Por defecto solo se convierte el primer comando de la entrada; activa modo lote para convertir cada línea a la vez, lo cual es útil para traducir un script de instalación completo. Las líneas que no parecen comandos de gestor de paquetes se pasan sin cambios en modo lote (con una advertencia si está habilitada), o producen un error en modo de comando único. Los finales de línea de Windows y Unix se manejan ambos.

Todo se ejecuta localmente en tu navegador — ningún comando o nombre de paquete se envía nunca a ningún lugar. Copia el resultado, descárgalo como archivo .txt, o envíalo de vuelta a la entrada para convertir nuevamente para un tercer gestor.

Preguntas frecuentes

¿Qué comandos se soportan?
Instalación de todas las dependencias (incluidos npm ci e instalaciones con lockfile congelado), adición de paquetes (con banderas --save-dev/--dev, --save-exact/--exact e globales), eliminación de paquetes, y ejecución de scripts de package.json con argumentos extras después de --. Deno está cubierto en ambos sentidos: un paquete pasa a ser npm:chalk, una instalación global pasa a ser deno install --global y un script pasa a ser deno task.
¿Qué sucede con una bandera sin equivalente en el gestor de destino?
Con «preservar banderas» activado se mantiene verbatim al final de la línea de salida; con «advertir sobre banderas» activado también obtienes una línea de comentario # indicando exactamente qué bandera no tiene coincidencia, como la eliminación de Yarn berry del add global.
¿Detecta de qué gestor es el comando de entrada?
Sí, por defecto. También puedes elegir un gestor de origen explícitamente, en cuyo caso una línea escrita para un gestor diferente se marca en lugar de convertirse.
¿Puedo convertir un script de instalación completo de una vez?
Activa modo lote para convertir cada línea de la entrada independientemente; sin él solo se convierte el primer comando.
¿Se sube mi comando o lista de paquetes a algún lugar?
No. La conversión se ejecuta completamente en tu navegador — nada de lo que pegas aquí se envía a un servidor.