1.
Create a dir/folder to contain your packages code.
mkdir firstnpmpackage
2.
change path to dir/folder you just created.
cd firstnpmpackage
3.
Now run ..
npm init
or simply(if you use this command instead npm will not ask you for the details of package and will generate it with defaults)
npm init -y
and fill the required details.
4.
Now create an index.js file in this folder, your folder should look like this
-
firstnpmpackage
- index.js
- package.json
5.
write some code in index.js
#!/usr/bin/env node
function randomNoGenerator(min, max) {
if(typeof(max) !== 'number' && typeof(min) !== 'number') {
min = 0; max = 1;
}
console.log(Math.random() * (max-min)) + min;
}
randomNoGenerator(5,10);
6.
Now let's modify our package.json a bit to make it work using cli.
"bin":{
"demoproject" : "index.js"
},
just add this thing in your package.json
demoproject is the command you will use to execute your package through cli.
index.js is the file that will be first triggered.
7.
We are all ready to go ,
but wait wait you will really want to test your package locally before publishing it.
Let's do it first :
run
sudo npm install -g ./
Our package is installed in our local machine now,
Let run it type this in your cli and see the result.
demoproject
8.
So, now we are done with testing ..
Let's publish it now ,
To make it published you first need to signup on npmjs.com
once you are done signing up!
Run :
npm adduser
Give your login credentials..
9.
Now we are ready to go ..
open terminal in your root directory..
and Run :
npm publish
Done.....
NOTE : if it gives any error goto package.json and change name of your project any package with same name might be published before...
my github: Deep1144
my npm account: deep1144
Follow me for more..
Top comments (2)
Hint: IF you dont need details (or you use defaults) try
npm init -y
- it will not ask you about anything.Ie.
Also,
sudo npm install -g ./
- I wouldnt recommend this. npm link was implemented to do this ;)Yes definitely true i will add this points in post ❤