nnrm – 一个极简的 npm/yarn registry 切换管理器
nnrm 是什么
一个简单的 npm/yarn registry (镜像源)切换工具
Github: https://github.com/YunYouJun/nnrm
Why new nrm – nnrm?
npm 用户常常因为国内环境需要在 npm 的官方镜像与国内加速镜像间切换。譬如,(没有代理的情况下)本地安装一些依赖包可以使用淘宝镜像,而发布包的时候则要切换至 npm 。
nrm 使得切换更加方便,我们可以简单地使用 nrm use taobao
的方式切换镜像。但是在切换镜像前,安装 nrm 本身也是一件很慢的事情,nrm 依赖了已 deprecated 的且包体较大的 request,以及 npm 包,以及一些其他依赖。
而我自身至今使用过的实际只有 nrm ls
与 nrm use
命令而已。(偶尔可能尝试一下 nrm test
进行测速)。
Features
nnrm 相比 nrm 的改进之处,极小的依赖。以及支持 yarn 。( yarn 与 npm 的 registry 是互相独立的。)
- 使用 node-fetch(289B) 替代 request(184.8KB) 进行测速 node-fetch vs axios vs request | npmtrends
- 使用 execa(8.4KB) 替代 npm(455.4KB) 通过终端而非 node API 实现切换 execa vs npm | npmtrends
- 使用 cac ( 3.6KB ) 替代 commander ( 6.8KB )实现简单的终端 cac vs commander | npmtrends
- 异步地显示源测速结果
安装
yarn global add nnrm # npm install -g nnrm
使用
切换源
nnrm 同时绑定了四个命令 nnrm
nrm
nyrm
yrm
。
npm 可以使用 nnrm
或 nrm
切换。
yarn 可以使用 nyrm
或 yrm
切换。
nnrm use taobao # nrm use taobao
# 测速 nnrm test
# 显示所有源 nnrm ls