nrm -- npm registry manager

NPM 注册表管理器,在不同注册表之间快速切换:NPM、CNPM、NJ、淘宝。「NPM registry manager, fast switch between different registries: npm, cnpm, nj, taobao」

Github星跟踪图

nrm -- npm registry manager

nrm can help you switch different npm registries easily and quickly. It supports
npm, cnpm, taobao, yarn, tencent, npmMirror and huawei.

Install

# npm
npm install -g nrm

# yarn 
yarn global add nrm

# pnpm
pnpm add -g nrm

Example

$ nrm ls

* npm ---------- https://registry.npmjs.org/
  yarn --------- https://registry.yarnpkg.com/
  tencent ------ https://mirrors.tencent.com/npm/
  cnpm --------- https://r.cnpmjs.org/
  taobao ------- https://registry.npmmirror.com/
  npmMirror ---- https://skimdb.npmjs.com/registry/
  huawei ------- https://repo.huaweicloud.com/repository/npm/

$ nrm use taobao

SUCCESS The registry has been changed to 'taobao'.

Usage

[!TIP]
The lowest node version is 18 from v1.4.0.

Usage: nrm [options] [command]

  Commands:

    ls                                    List all the registries
    current                               Show current registry name
      -u  --show-url                        Show the registry URL instead of the name
    use [registry]                        Change registry to registry
      -l  --local                           Switch local registry
    add <registry> <url> [home]           Add one custom registry
    login <registry> [value]              Set authorize information for a registry with a base64 encoded string or username and password
      -a  --always-auth                     Set is always auth
      -u  --username <username>             Your user name for this registry
      -p  --password <password>             Your password for this registry
      -e  --email <email>                   Your email for this registry
    set-hosted-repo <registry> <value>    Set hosted npm repository for a custom registry to publish packages
    set-scope <scopeName> <value>         Associating a scope with a registry
    del-scope <scopeName>                 Remove a scope
    set <registryName>                    Set custom registry attribute
      -a  --attr <attr>                    Set custom registry attribute
      -v  --value <value>                  Set custom registry value
    del [registry]                        Delete one custom registry
    rename <registryName> <newName>       Set custom registry name
    home <registry> [browser]             Open the homepage of registry with optional browser
    publish [<tarball>|<folder>]          Publish package to current registry if current registry is a custom registry. The field 'repository' of current custom registry is required running this command. If you're not using custom registry, this command will run npm publish directly
      -t  --tag [tag]                        Add tag
      -a  --access <public|restricted>       Set access
      -o  --otp [otpcode]                    Set otpcode
      -dr --dry-run                          Set is dry run
    test [registry]                       Show the response time for one or all registries
    help [command]                        Display help for command

  Options:

    -h  --help     output usage information
    -V  --version  output the version number

Registries

How to configure yarn to use private registry ?

just add .yarnrc in your project’s directory and write there:
registry "http://your.registry"

Or you can configure it in your HOME directory's .yarnrc

TODO

  1. Add more registries: github, sonatype

Notice

When you are using preset registries the publish command will proxy to the npm official registry.

When you are using a custom registry you will need to run the set-hosted-repo to set a url to publish packages to your hosted registry.

Maintainer is wanted

If you find nrm is useful and are an experienced node.js developer, then you can help maintain nrm.

If you have the interest, you can reach me through email: pana.wang@outlook.com

Contributors

LICENSE

MIT

主要指标

概览
名称与所有者Pana/nrm
主编程语言TypeScript
编程语言JavaScript (语言数: 2)
平台
许可证MIT License
所有者活动
创建于2014-02-28 06:41:32
推送于2025-07-13 02:08:58
最后一次提交2025-07-13 10:08:58
发布数10
最新版本名称v2.1.0 (发布于 2025-07-12 05:54:58)
第一版名称0.1 (发布于 2014-03-08 22:58:01)
用户参与
星数3k
关注者数41
派生数252
提交数329
已启用问题?
问题数110
打开的问题数26
拉请求数73
打开的拉请求数5
关闭的拉请求数38
项目设置
已启用Wiki?
已存档?
是复刻?
已锁定?
是镜像?
是私有?