npm (Node Package Manager) merupakan package
manager untuk JavaScript. Seperti dalam PHP kita mengenal Composer, di
Ruby ada RubyGems, di Python kita mengenal pip, dll. Dengan menggunakan npm, kita
dapat mencari, mendapatkan, menggunakan dan berbagi package-package JavaScript.
Bagi kalian yang ingin membuat dan mendistribusikan module kalian
ke public yang bisa digunakan orang lain kalian bisa menggunakan npm. Banyak keuntungan
yang didapat jika kita mendistribusikan module yang kita buat salah satunya
adalah kita bisa mengelompokan fungsi fungsi yang sering digunakan, jika di
project lain butuh fungsi yang sejenis kita hanya tinggal memakan module yang
sudah didistribusikan.
Sebelum kita membuat module npm pastikan kalian sudah
menginstall node di local kalian, jika belum bisa check link berikut :Atau jika kalian memiliki brew, install menggunakan brew dengan command
$ brew install node
Jangan lupa untuk bisa mendistribusikan module yang kita
buat kita perlu daftarkan diri kita di https://www.npmjs.com/
untuk mendapatkan hak akses.
Jika sudah, masuk ke folder directory tempat kalian ingin
membuat module kalian, lalu execute command
$ npm init
Nanti akan diminta memasukan deskripsi dari module yang
kalian inginkan seperti nama, deskripsi, keyword, licence, dll, jika sudah
nanti kalian akan dibuatkan file package.json dimana file tersebut berisi
informasi yang kalian masukan.
{
"name": "myModule",
"version": "1.0.0",
"description": "module description",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "yourName <yourEmail@domain.com>",
"license": "MIT",
"dependencies": {
"http": "0.0.0",
"https": "^1.0.0"
}
}
Jika sudah, pastikan anda sudah login npm, jika
belom execute command $ npm login
Dan masukan username, email dan password, jika sudah
pastikan dengan menggunakan command npm whoami.
Jika sudah, Lets Make It!
Buat file index.js karena di secara default package.json
mengarahkan module kita ke index.js, kalian bisa mengubahnya.
Kira kira simple codenya seperti ini
class Calculator{
constructor(x,y) {
this.x = x;
this.y = y;
}
add() { return this.x + this.y };
subtract() { return this.x - this.y };
multiply() { return this.x * this.y };
divide() { return this.x / this.y };
remainder() { return this.x % this.y };
}
module.exports = Calculator;
Jika sudah, sebelum kalian ingin mendistribusikan module
kalian, alangkah baiknya kalian coba di local kalian dulu.
Jika ingin mengubungkan module yang kalian buat execute
command
$ npm link
Lalu kalian bisa mencoba module kalian dengan execute
command
$ npm link your_module
Sesuai dengan nama yang didaftarkan di package.json, setiap
ada perubahan di module kalian secara otomatis directory yang menggunakan
module kalian akan berubah. Ini cara yang efektif untuk mencoba module kalian.
Kalian bisa gunakan module yang sudah di kalian bikin dengan
cara meng-export seperti gambar dibawah ini
const Calculator = require('mead-module');
const numberA = 3;
const numberB = 4;
let calc = new Calculator(numberA,numberB);
console.log('Calculator ' + numberA + ' + ' + numberB + ' = ', calc.add());
console.log('Calculator ' + numberA + ' - ' + numberB + ' = ', calc.subtract());
console.log('Calculator ' + numberA + ' * ' + numberB + ' = ', calc.multiply());
console.log('Calculator ' + numberA + ' / ' + numberB + ' = ', calc.divide());
console.log('Calculator ' + numberA + ' % ' + numberB + ' = ', calc.remainder());
Jika kalian sudah memastikan semua fungsi berjalan dengan
lancar, kalian bisa langsung execute command
$ npm publish
Yang nantinya module kalian akan distribusikan secara public
jadi semua orang bisa menggunakan module kalian jadi gunakan nama module yang
unik.
Kalian bisa check module yang kalian buat di profile npm.
Jika sudah kalian bisa menggunakan module kalian
secara public dengan execute command $ npm install your_module
Dengan itu module kalian sudah menjadi dependency dengan
project kalian
DONE!!
Jika nantinya ada perubahan di module kalian, kalian bisa
gunakan versioning dengan beberapa command seperti berikut ini
$ npm version patch //x.x.1
$ npm version minor //x.1.x
$ npm version major //1.x.x
Command tersebut untuk merubah versi module kalian, jika
ingin mengupdate module yang sudah di-publish gunakan command
npm publish
References
No comments:
Post a Comment