ny:按锁文件选择包管理器的JavaScript代理工具
Rust编写的JavaScript包管理代理,根据lockfile自动选用npm/yarn/pnpm/bun及对应运行时。
ny 是一个用 Rust 编写的 JavaScript 包管理代理工具,根据项目锁文件自动选择合适的包管理器与运行时,覆盖 npm、yarn、pnpm、bun。基本命令:ny install(别名 ny)安装全部依赖;ny add package 添加新依赖,支持 --dev、--workspace-root 等参数,并在 TypeScript 项目中自动补装缺失的 @types 类型包;ny run task(别名 ny task)运行指定脚本,或解析 node_modules/bin 中的 JS 文件,默认用 Node.js 执行,存在 bun 锁文件时改用 bun。README 称其运行脚本时因避免为解析 package.json 而启动 node 进程,比直接调用包管理器更快。项目受 antfu/ni 与 egoist/dum 启发,采用 MIT 许可。