NodeJS NPM

Fajar Setiawan Siagian
4 min readJul 18, 2022
Photo by Nate Grant on Unsplash

Ketika kita membuat aplikasi, biasanya dalam satu project atau satu folder. Sederhanannya project adalah directory/folder yang bersikikan kode program atau dependency(library) yang kita butuhkan. Ada masalah ketika program kita semakin membesar dan semakin banyak library yang kita pakai apabila terjadi update pada masing2 library, akan sangat susah untuk di update secara manual. Solusinya NodeJS menyediakan NPM (Node Package Manager) yang bisa kita gunakan untuk management project NodeJs kita.

Keguanaan NPM:

  1. Digunakan untuk management project NodeJS
  2. Untuk melakukan dependency management yang kita butuhkan dalam project yang kita buat
  3. digunakan untuk mendownload dependency, update dan upgrade decependency secara otomatis, tanpa harus melakukan secara manual dengan cara mendownload depencency secara manual.

Saat membuat project nodejs, maka kita akan menemukan satu file bernama package.json . Didalam file inilah semua konfigurasi project nodejs disimpan, file ini terdiri dari konfigurasi project dan dependency project nodejs. Untuk membuat file package.json dapat dibuat secara manual atau secara otomatis menggunakan auto generate npm.

Saat kita melakukan management dependency, maka secara otomatis NPM akan melakukan pencarian dan mendownload dependency secara otomatis dari https://www.npmjs.com/ . Untuk dependency yang lainnya, juga dapat kita cari di webisite npmjs.

Bagaimana cara menginstall NPM

Ketika kita sudah menginstall nodejs, maka secara otomatis NPM sudah terinstall di komputer kita. Untuk mengecek versi npm pada sistem komputer kita, dapat menggunakan perintah

npm --version 
npm -v

Membuat project nodejs:

  1. Buatlah sebuah folder baru
  2. masuk ke folder yang sudah kita buat menggunakan command line/terminal favorit kalian
  3. buat project npm dengan perintah
npm init

package.json merupakan inti dari konfigurasi project berbasis nodejs. file ini berformat json yang berisi konfigurasi aplikasi nodejs.

Untuk menjalankan project pada NPM Nodejs itu sama seperti menjalan project nodejs. Kita dapat menggunakan node filesript. Yang membakan adalah NodeJs sebelum menjalankan filenya, dia akan membaca konfigurasi dari package.json terlebih dahulu.

Secara default saat kita membuat project nodejs, maka type projectnya adalah commonjs. Oleh karena itu, ketika kita ingin menggunakan javascript modules, maka kita harus mengubah ekstensinya menjadi file.mjs. Namun, kita juga dapat mengubah konfigurasi defaultnya dari commonjs menjadi modules, dengan cara mengubah type di package.json. Sangat direkomendasikan saat ini menggunakan js modules dibanding commonjs, karena modules sudah menjadi standar di javascript.

NPM memiliki fitur yang bernama script, dimana kita bisa menyediakan perintah script yang nanti bisa digunakan untuk menjalankan perintah lainnya. Penggunaan script biasanya untuk mempermudah ketika kita menjalankan perintah yang panjang. Untuk menambahkan script dapat dilakukan di file package.json.

"scripts": {"test": "echo \"Error: no test specified\" && exit 1","dev": "node index.js"},

Terdapat beberapa script spesial di package.json . Script tersebut tidak perlu dijalankan menggunakan ‘’npm run script nama-script’’, tapi bisa langsung menggunakn npm namascript. Contoh spesial script yaitu: start, stop, test, restart, uninstall, version, dan lain-lain. Selain itu, terdapat script spesial untuk script diatas. Kita bisa gunakan prefix pre sebagai script yang akan dijalankan sebelumnya dan prefix post sebagai script yang akan dijalankan setelahnya. Misal ketika kita menggunakan perintah npm start, maka akan menjalankan script prestart, start, dan poststart.

Sampai saat ini, kita tidak pernah membahas attribut main di package.json. Attribute main adalah entry point yang akan di load ketika kita meload nodejs project/package. Pada kasus ketika kita membuat aplikasi, mungkin tidak terlalu berguna. tapi pada kasus ketika kita membuat library yang akan digunakan dibanyak project, baru attribute main ini akan terlihat kegunaannya. Terdapat masalah ketika kita menggunakan attribut main yaitu kita cuman bisa mengeksport satu file saja, oleh karena itu penggunaan attribute main sudah tidak direkomendasikan lagi. Sebagai penggantinya, terdapat attribute export yang bisa digunakan sebagai konfigurasi untuk mengekspos file JS. Yang menarik dari fitur export ini adalah, kita dapat membuat alias ketika mengekspos file js, sehingga tidak perlu menggunakan nama file js nya lagi.

"exports": {".": "./index.js","./write": "./write.js"}

Salah satu fitur yang sangat berguna di NPM adalah Dependency Management. Saat kita membuat aplikasi, sering sekali kita akan membutuhkan dependency ke library atau package pihak lain. Misal package open source atau package yang kita buat sendiri. NPM mendukung dependency management, sehingga kita tidak perlu mendownload package yang kita butuhkan secara manual, termasuk tidak perlu update dependency package secara manual ketika terdapat update terbaru.

Secara default, NPM akan mendownload dependency dari package https://npmjs.com/ . Kita bisa mencari open source package atau membuat open source package di npmjs.com . Untuk menginstall dependency, kita bisa gunakan perintah :

npm install nama-dependency@version

atau bisa langsung tulis di dependency di package.json,, untuk download dependency kita cukup gunakan perintah :

npm install

maka secara otomatis NPM akan mendownload package yang ada didalam dependency ke dalam folder ‘’node_modules’’. Selain itu, NPM juga akan membuat file package-lock.json yang berisikan informasi versi package yang didownload, Ini untuk mempermudah ketika kita melakukan download ulang library di komputer lain.

sumber youtube channel programmer zaman now

https://www.youtube.com/watch?v=7t7CJwQlmGc

--

--

Fajar Setiawan Siagian

A Full Stack Web Developer. all my stories in Indonesia. Hope you find a solution in my stories