BAB 7 – Node Package Manager (NPM): Mengelola Library dan Proyek Node.js dengan Benar

BAB 7 – Node Package Manager (NPM): Mengelola Library dan Proyek Node.js dengan Benar

NPM (Node Package Manager) adalah alat bawaan Node.js yang digunakan untuk mengelola library atau package pihak ketiga. Hampir semua proyek Node.js modern bergantung pada NPM, baik secara langsung maupun tidak langsung.

Dengan NPM, kita bisa:

  • memasang library dengan cepat
  • mengelola dependensi proyek
  • menjalankan perintah melalui script

Tanpa NPM, pengembangan Node.js akan jauh lebih lambat dan tidak praktis.


Mengenal package.json sebagai Pusat Proyek

File package.json adalah jantung dari proyek Node.js. Semua informasi penting proyek disimpan di sini.

Contoh package.json sederhana:

{
  "name": "node-project",
  "version": "1.0.0",
  "type": "module",
  "scripts": {
    "start": "node index.js"
  }
}

File ini berfungsi untuk:

  • mencatat dependensi
  • menentukan cara menjalankan aplikasi
  • menyimpan informasi proyek

Membuat package.json dengan NPM

Untuk membuat package.json, gunakan perintah:

npm init -y

Perintah ini akan membuat file package.json secara otomatis tanpa harus menjawab pertanyaan satu per satu.


Menginstall Package Menggunakan NPM

Untuk memasang library:

npm install express

Perintah ini akan:

  • mengunduh package
  • menyimpannya di folder node_modules
  • mencatatnya di package.json

NPM juga akan membuat file package-lock.json untuk mengunci versi dependensi.


Perbedaan Dependencies dan DevDependencies

Tidak semua package dibutuhkan saat aplikasi dijalankan di server.

Install untuk Production

npm install express

Install untuk Development

npm install nodemon --save-dev
  • dependencies → dibutuhkan saat aplikasi berjalan
  • devDependencies → hanya dibutuhkan saat pengembangan

Pemisahan ini membuat aplikasi lebih ringan dan rapi.


Menjalankan Aplikasi dengan NPM Script

NPM bukan hanya untuk install package, tapi juga menjalankan perintah.

Contoh di package.json:

"scripts": {
  "dev": "nodemon index.js",
  "start": "node index.js"
}

Menjalankan script:

npm run dev
npm start

Dengan script, cara menjalankan aplikasi menjadi konsisten di berbagai lingkungan.


package-lock.json dan Kenapa Tidak Boleh Dihapus

File package-lock.json menyimpan versi pasti dari semua dependensi.

Manfaatnya:

  • instalasi lebih konsisten
  • menghindari perbedaan versi
  • mempermudah deployment

Menghapus file ini bisa menyebabkan aplikasi berjalan berbeda di mesin lain.


Update dan Hapus Package

Update Package

npm update

Hapus Package

npm uninstall express

NPM akan otomatis memperbarui package.json dan package-lock.json.


Menggunakan NPM di Proyek Nyata

Contoh alur kerja sederhana:

npm init -y
npm install express
npm install nodemon --save-dev

Struktur proyek:

node-project/
├── index.js
├── node_modules/
├── package.json
└── package-lock.json

Dengan struktur ini, proyek sudah siap dikembangkan lebih lanjut.


Kesalahan Umum Saat Menggunakan NPM

Beberapa kesalahan yang sering terjadi:

  • menginstall package secara global tanpa alasan
  • menghapus node_modules tanpa reinstall
  • tidak menggunakan package-lock.json

Gunakan NPM secara disiplin agar proyek tetap stabil.


Kesimpulan

NPM adalah alat penting dalam ekosistem Node.js. Dengan memahami cara kerjanya, kita bisa:

  • mengelola dependensi dengan rapi
  • mempercepat pengembangan
  • menjaga konsistensi proyek

Tanpa pengelolaan NPM yang baik, proyek Node.js akan cepat menjadi sulit dirawat.