发布开源 npm 包需三步:准备代码和元信息、登录账号、执行发布;关键点包括镜像源切换至 https://registry.npmjs.org/、包名唯一性验证、版本号符合 semver 且首次为 1.0.0、邮箱必须完成官方验证。

发布自己的开源 npm 包到公共仓库,核心就三步:准备代码和元信息、登录账号、执行发布。整个过程不复杂,但几个关键点容易出错,比如镜像源、包名唯一性、版本号更新和邮箱验证。
确保环境和账号就绪
先确认 Node.js 和 npm 已安装:node -v 和 npm -v 应返回有效版本。
去 npm 官网注册账号,注册后必须点击邮箱里的验证链接激活账户(未验证无法发布)。
检查并切换到官方 registry(国内用户常因使用淘宝镜像导致发布失败):npm config get registry —— 应为 https://registry.npmjs.org/
如果不是,运行:npm config set registry https://registry.npmjs.org/
同时清空代理(如有):npm config delete proxynpm config delete https-proxy
初始化项目并编写可用代码
新建文件夹,进入后运行:npm init -y(快速生成 package.json)
编辑 package.json,重点核对以下字段:
- "name":全小写、短横线分隔、不能与现有包重名(在 npmjs.com 搜索确认)
- "version":首次发布建议从 "1.0.0" 开始(符合 SemVer)
- "main":入口文件路径,如 "index.js" 或 "dist/index.js"
- "description" 和 "keywords":提升可发现性
- 删除 "private": true(如果存在,否则会跳过发布)
编写实际功能代码,例如 index.js:module.exports = (name) => `Hello, ${name}!`;
建议配套写一个 README.md,包含安装、使用、示例等说明——这是用户第一眼看到的内容。
登录并发布
在项目根目录下执行:npm login
按提示输入用户名、密码、**已验证的邮箱**(注意:不是注册时填的备用邮箱)。
验证是否登录成功:npm whoami —— 应输出你的用户名
执行发布:npm publish
发布成功后:
- 稍等片刻,即可在 https://www.php.cn/link/37e43572006d4d3deec54812aa12e872package/你的包名 查看页面
- 本地测试:新建空文件夹,运行 npm install 你的包名,再用 require 或 import 调用验证
后续更新要改版本号
每次修改代码后重新发布,必须先升级版本号,否则会报错“version already exists”:npm version patch → 小修(如 1.0.0 → 1.0.1)npm version minor → 新增兼容功能(1.0.0 → 1.1.0)npm version major → 不兼容变更(1.0.0 → 2.0.0)
执行后会自动更新 package.json 并提交 git tag(如有 git 仓库)











