Today, we are going to learn how you can easily publish a new JS package to the NPM directory ๐ช
1. GitHub account (optional; highly recommended) ๐ช
The first step, it to have a GitHub account (you probably have one already). This is where you will store your code (in a repository) and where your README file and the git repo links will be synced with your npmjs.com package page.
2. An NPMJs.com account ๐
You will need to create an account on npmjs.com.
3. Version your package ๐ฆ
Note: You can skip this section if you are releasing your very first version.
Make sure your code is ready to be published. Make sure you correctly mention the files you don't want to be included thanks to gitignore
or .npmignore
(following the .gitignore pattern rules).
Make sure your package.json
file is properly formatted and contains all necessary information.
If so, you can commit everything with git and proceed to the release.
You can also add a repository
section containing the GitHub link to your repo as show below:
"repository": {
"type": "git",
"url": "https://github.com/USERNAME/REPO_NAME.git"
}
If so, let's create a stable version first thanks to npm version [ major | minor | patch ]
In my case, it will be npm version major
, which will bump the version in your package.json
to the major number (e.g., if your version was 1.0.0, it will now be 2.0.0).
The command will also create a new git tag.
4. Publish to NPM ๐
In the terminal, type npm login
Login as the user name you previously created. Confirm your password and mention your email address you used when creating your npmjs.com account.
Then, in the root directory of your project, enter
npm publish
.
This will literally publish your package to the public NPMJS registry.
5. Let's check your package ๐ค
Once that's done, go to npmjs.com/settings{username}/packages
You should see your new package in there ๐ค The name of your package with be the same as the name you mentioned in your package.json
, "name" field.
You will also receive an email from npm confirming that your package has been published.
Congrats! ๐ฅณ
Yaaay! ๐ You are now all set! And your package is ready to be used by anyone ๐
Remove your package (or version) from NPM registry ๐
In case you wish to delete your package from the public registry, you can run a npm unpublish
through the terminal with the name of your package.