You can publish pre-release versions of an npm package.
Naming convention for pre-release versions
An npm package must use
Semantic Versioning
Show archive.org snapshot
's naming convention for its version. In Semantic Versioning, the version number and pre-release identifier (like rc1
) must be separated by a dash, like this:
1.0.0-rc1
2.3.0-alpha2
3.0.0-beta3
Publishing to a pre-release tag
npm packages have multiple "current" releases, identified by "tags". The default tag is latest
. It is expected to contain the latest stable version.
When you publish a pre-release version you want to publish to a different tag. This way users of latest
don't automatically get your half-baked alpha versions when they upgrade. They need to explictily opt into pre-release versions, as shown below.
A popular tag for pre-releases is next
. To publish to the next
tag:
npm publish --tag next
Using pre-releases
npm will only install a pre-release if you explicitly use the next
tag or name the version.
For instance, to install the latest version of foobar
within the next
tag:
"dependencies": {
"foobar": "next"
}
You may also name the pre-release version explicitly:
"dependencies": {
"foobar": "^2.0.0-rc5"
}