(0275) 2974 127
NPM (Node Package Manager) adalah sebuah repository online di mana penggunanya dapat membagikan modul Node.js dan aplikasi karyanya. NPM terdiri dari klien baris perintah yang berinteraksi dengan registri jarak jauh. Ini memungkinkan pengguna untuk menggunakan dan mendistribusikan modul JavaScript yang tersedia di registri.
Registri tidak memiliki proses pemeriksaan untuk pengiriman, yang berarti bahwa paket yang ditemukan di sana mungkin berkualitas rendah, tidak aman atau berbahaya. Sebaliknya, NPM mengandalkan laporan pengguna untuk menghapus paket jika melanggar kebijakan karena kualitasnya rendah, tidak aman atau jahat.
Jika ingin menggunakan sebuah modul cukup dengan mencarinya pada repository ini mengunduh, lalu menginstallnya di komputer. NPM juga merupakan command line yang digunakan untuk menginstall modul-modul tersebut beserta dependency-nya.
NPM seluruhnya ditulis dalam JavaScript dan dikembangkan oleh Isaac Z. Schlueter sebagai hasil dari “melihat pengemasan modul dilakukan dengan sangat buruk” dan dengan inspirasi dari proyek serupa lainnya seperti PEAR (PHP) dan CPAN (Perl).
left-pad
, yang secara historis digunakan sebagai contoh yang telah menjadi ketergantungan banyak paket JavaScript populer, tidak dipublikasikan sebagai akibat dari sengketa penamaan. Meskipun paket tersebut diterbitkan ulang tiga jam kemudian, hal itu menyebabkan gangguan yang meluas, menyebabkan NPM mengubah kebijakannya terkait pembatalan penerbitan untuk mencegah kejadian serupa di masa mendatang.sudo npm
di sistem Linux akan mengubah kepemilikan file sistem, merusak sistem operasi secara permanen.eslint-scope
populer disusupi sehingga menghasilkan rilis berbahaya dari eslint-scope
, versi 3.7.2. Kode berbahaya menyalin kredensial NPM dari mesin yang menjalankan eslint-scope
dan mengunggahnya ke penyerang.event-stream
paket populer. Paket berbahaya, yang disebut flatmap-stream
, berisi muatan terenkripsi yang mencuri bitcoin dari aplikasi tertentu. Administrator NPM menanggapi dengan menghapus paket yang melanggar. is-promise
mengakibatkan penghentian aplikasi dan penerapan tanpa server di seluruh dunia karena menjadi ketergantungan banyak aplikasi besar dan penting.Perlu diketahui bahwa dua role yang dikerjakan NPM untuk mendalami pengetahuan tentang apa itu NPM dan bagaimana cara kerjanya :
Untuk menggunakannya harus menginstall Node.js sebagaimana Node.js dan NPM berada dalam satu bundle.
Utilitas command line NPM dapat membuat node.js bekerja dengan baik. Untuk menggunakan packagenya, sebuah proyek harus memiliki file bernama package.json. Di dalam package tersebut akan mendapati meta data tertentu pada proyeknya.
Meta data tersebut menunjukkan beberapa aspek dari proyek dengan urutan sebagai berikut :
Meta data dapat tersebut akan mempermudah identifikasi proyek dan berlaku juga sebagai dasar untuk user dalam mendapatkan informasi proyek.
Berikut adalah contoh bagaimana dapat mengidentifikasi proyek melalui meta datanya :
{ "name": "hostinger-npm", "version": "1.0.0", "description": "npm guide for beginner", "main": "beginner-npm.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1" }, "keywords": [ "npm", "example", "basic" ], "author": "Hostinger International", "license": "MIT", "dependencies": { "express": "^4.16.4" } }
Mengunduh http://installer Node.js dari situsnya.
Jika menginginkan fitur-fitur Node.js terbaru dapat mengunduh installer versi paling kini yang ada di sebelah kanan. Namun, tidak ada salahnya untuk menggunakan installer dengan versi yang lebih lama apabila tidak memerlukan fitur terbaru.
Untuk memastikan instalasi Node.js dan NPM berjalan lancar dapat memeriksanya dengan menjalankan dua perintah berikut melalui Command Prompt :
$ node -v
v0.10.9
Untuk mengetahui apakah NPM juga telah terinstall, tuliskan npm -v. Command ini akan menunjukkan versi NPM seperti :
$ npm -v
1.2.25
Npm terkenal akan oneline installernya :
$ curl https://npmjs.org/install.sh | sh
Setelah di install dapat mengupdate NPM karena versi terbaru akan selalu diupdate secara reguler. Untuk mengupdatenya, cukup download installer dari situs node.js dan jalankan lagi. Versi terbarunya akan mengganti versi yang sebelumnya secara otomatis.
Namun juga dapat mengupdatenya dengan command ini :
$ npm update -g npm
Jika telah memiliki Node dan NPM lalu ingin membuat sebuah proyek, jalankan command npm init. Command ini akan memulai proyek.
Sebagai contoh, mari buat direktori bernama test-npm dan cd. Sekarang, jalankan command npm :
$ npm init
Command ini sebagai tool untuk membuat file package.json untuk proyek yang dijalankan. Setelah melalui langkah-langkah npm init, file package.json akan dibuat dan ditempatkan pada direktori saat ini.
Command init dari Node package manager menjelaskan tentang proses yang dijalankan command tersebut :
mymacs-MacBook-Pro: test-npm mymac$ npm init This utility will walk you through creating a package.json file. It only covers the most common items, and tries to guess sane defaults. See `npm help json` for definitive documentation on these fields and exactly what they do. Use `npm install --save` afterwards to install a package and save it as a dependency in thepackage.json file. Press ^C at any time to quit. name: (test-npm)
Respond untuk prompt npm init :
name: (test-npm)hostinger-npm version: (1.0.0)1.0.0 description: npm guide for beginner entry point: (index.js) beginner-npm.js test command: git repository: keywords: npm, example, beginner author: Hostinger Internationallicense: (ISC) MIT
Tekan “Enter” untuk menyetujuinya. Lalu, npm init akan memberi sebuah preview dari package.json yang akan dibuat.
Outputnya akan terlihat seperti ini :
{ "name": "hostinger-npm", "version": "1.0.0", "description": "npm guide for beginner", "main": "beginner-npm.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1" }, "keywords": [ "npm", "example", "basic" ], "author": "Hostinger International", "license": "MIT", "dependencies": { "express": "^4.16.4" } } Is this OK? (yes) yes mymac-MacBook-Pro: test-npm mymac$
Ketikkan “yes” dan tekan “Enter” untuk menyetujui, simpan package.json. Maka dapat menggantinya nanti, entah dengan mengedit filenya langsung atau melalui comman npm init lagi
Package pada node.js memuat semua fle yang dibutuhkan sebagai module. Module adalah library JavaScript yang dapat memasukkan ke dalam proyek.
Menginstall modul adalah hal yang paling mendasar untuk dilakukan ketika menggunakan Node package manager. Berikut adalah command untuk install modul ke direktori saat ini :
$ npm install <module>
$ npm i <module>
Pada command di atas, ganti <module> dengan nama module yang ingin di install. Dengan perintah tersebut, modul akan langsung dipasang di komputer.
Karena Node.js dan NPM sudah tersedia di komputer, sekarang mari coba membuat aplikasi sederhana bernama “Hello World”.
Untuk melakukan ini dianjurkan untuk menggunakan Windows PowerShell. Windows PowerShell dapat dicari melalui menu search di taskbar atau di dalam menu start.
c:\Users\<username>\myprogram.js
Jangan lupa untuk mengganti <username> dengan username komputer sebelum menjalankan perintah tersebut.
Intinya, perintah tadi digunakan untuk membuat file bernama myprogram.js. Ketika dijalankan, akan ada pernyataan bahwa file tersebut tidak ada. Kemudian, sistem akan menanyakan jika ingin membuat file tersebut atau tidak. Pada titik ini, klik Yes untuk mengiyakannya.
var http = require('http');
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/html'});
res.end('Hello World');
}).listen(8080);
Jika sudah, simpan dan tutup filenya.
node \users\<your_username>\myprogram.js
Perintah ini berfungsi untuk menjadikan komputer sebagai server yang menjalankan aplikasi sederhana tadi.
Windows Defender akan memperingatkan bahwa komputer dapat menerima traffic. Karena ini hanya percobaan tinggal membiarkan peringatan tersebut.
Sekarang, jika ingin mengakses http://localhost:8080 melalui web browser, teks “Hello World” akan muncul pada halaman tersebut.
Untuk mematikan aplikasi ini tinggal masuk ke PowerShell dan menekan kombinasi tombol Ctrl dan C pada keyboard.
Apakah Anda menggunakan kartu ATM atau kartu debit? Suka bertransaksi secara cashless? Sepertinya Anda perlu…
Design website toko online tidak hanya soal estetika, tapi juga UX yang bagus secara keseluruhan.…
Sebelum memulai karir Anda sebagai desainer UX, Anda harus membuat portofolio yang mencakup semua pengalaman…
Keep-Alive memungkinkan browser pengunjung Anda mendownload semua konten (JavaScript, CSS, gambar, video, dll) melalui koneksi…
Job description seorang web developer adalah membuat situs web menggunakan berbagai bahasa pemrograman. Tanggung jawab…
Secara default, WordPress tidak mendukung A/B testing. Tapi jangan khawatir. Di bawah ini, kami telah…