Cara Mengaktifkan dan Menggunakan pnpm di ServBay
pnpm
adalah alat manajemen paket Node.js yang modern dan efisien, dirancang untuk mengatasi masalah dari manajer paket tradisional seperti npm
dan yarn
dalam pengelolaan dependensi. Dengan sistem file content-addressable serta penggunaan hard link dan symbolic link, pnpm
secara signifikan mengurangi konsumsi ruang disk dan mempercepat proses instalasi. Bagi developer yang menggunakan ServBay untuk pengembangan Node.js, menguasai pnpm
dapat sangat meningkatkan efisiensi pengelolaan dependensi proyek.
Paket perangkat lunak Node.js yang disediakan oleh ServBay telah terintegrasi dengan corepack
, sebuah alat eksperimental resmi dari Node.js untuk mengelola dan menginisiasi versi manajer paket tertentu (seperti npm
, yarn
, pnpm
) untuk sebuah proyek. Setelah menginstal Node.js dari ServBay, Anda dapat mengaktifkan pnpm
melalui perintah corepack
.
Mengaktifkan pnpm
Jika Anda menemukan bahwa perintah pnpm
belum bisa langsung digunakan, biasanya karena pnpm
belum diaktifkan melalui corepack
. Silakan ikuti langkah-langkah berikut untuk mengaktifkannya:
Buka aplikasi Terminal.
Masukkan perintah berikut untuk mengaktifkan
pnpm
melaluicorepack
:bashcorepack enable pnpm
1Jika perintah berhasil dijalankan, biasanya tidak ada output apa pun. Ini berarti
corepack
telah menautkan perintahpnpm
ke sistem Anda.Pastikan
pnpm
sudah berhasil diaktifkan dan periksa nomor versinya:bashpnpm -v
1Perintah ini akan menampilkan nomor versi
pnpm
saat ini. Misalnya:bash9.1.0
1Jika terminal menampilkan nomor versi, berarti
pnpm
telah siap digunakan.
Pesan Unduh dari corepack
Saat menggunakan perintah pnpm
, jika Anda melihat pesan seperti berikut, berarti corepack
sedang mengunduh atau memperbarui versi pnpm
yang diperlukan. Ini adalah mekanisme normal dari corepack
untuk memastikan Anda menggunakan versi pnpm
yang sesuai dengan kebutuhan proyek atau versi terbaru.
bash
$ pnpm -v
! Corepack is about to download https://registry.npmjs.org/pnpm/-/pnpm-9.0.6.tgz
? Do you want to continue? [Y/n]
1
2
3
2
3
Ketik Y
dan tekan Enter untuk mengizinkan corepack
melanjutkan proses unduh dan menjalankan perintah pnpm
. Setelah unduhan selesai, perintah akan di eksekusi seperti biasa dan menampilkan nomor versi (atau hasil lain dari perintah pnpm
yang Anda jalankan).
Keunggulan Utama dan Contoh Penggunaan pnpm
pnpm
dirancang untuk mengelola dependensi secara efisien. Semua paket disimpan dalam storage global content-addressable, dan setiap versi paket hanya tersimpan satu kali. Saat sebuah proyek membutuhkan dependensi, pnpm
membuat hard link dari storage global, sedangkan direktori node_modules
proyek menggunakan symbolic link yang membangun struktur flat. Berbeda dengan masalah "ghost dependency" pada npm
, pnpm
secara ketat membatasi modul yang dapat diakses di dalam proyek—hanya modul dependensi langsung yang dapat diimpor.
Pendekatan ini memberikan beberapa keuntungan utama:
- Menghemat ruang disk: Berbagai proyek dapat berbagi file dependensi dengan versi yang sama, sehingga tidak terjadi duplikasi penyimpanan.
- Kecepatan instalasi tinggi: Dalam banyak kasus, file dependensi sudah ada di storage global dan hanya memerlukan pembuatan link, proses ini jauh lebih cepat daripada menyalin atau mengunduh ulang.
- Struktur dependensi yang ketat: Mencegah terjadinya masalah ghost dependency sehingga relasi dependensi proyek menjadi lebih jelas dan terkontrol.
Berikut adalah beberapa contoh perintah umum menggunakan pnpm
di lingkungan ServBay:
Misalkan proyek Anda berada di subdirektori dalam root situs ServBay, misalnya /Applications/ServBay/www/my-servbay-app
.
Menginstal Dependensi Proyek
Setelah masuk ke direktori proyek, gunakan perintah pnpm install
untuk menginstal seluruh dependensi yang didefinisikan dalam package.json
:
bash
cd /Applications/ServBay/www/my-servbay-app
pnpm install
1
2
2
pnpm
akan memeriksa storage global, mengunduh paket yang belum tersedia, dan membuat link di folder node_modules
proyek.
Menambahkan Paket Dependensi Baru
Untuk menambahkan dependensi baru ke proyek misalnya lodash
:
bash
pnpm add lodash
1
Perintah ini akan mengunduh lodash
(jika belum ada di storage global), membuat link, dan otomatis memperbarui file package.json
dan pnpm-lock.yaml
di proyek Anda.
Menghapus Dependensi
Untuk menghapus dependensi yang tidak lagi dibutuhkan, misalnya lodash
:
bash
pnpm remove lodash
1
Perintah ini akan menghapus lodash
dari dependensi proyek, dan memperbarui package.json
serta pnpm-lock.yaml
.
Menjalankan Script
pnpm
juga dapat digunakan untuk menjalankan script yang didefinisikan pada bagian scripts
dalam package.json
:
bash
pnpm run dev
# Atau dengan cara lebih singkat
pnpm dev
1
2
3
2
3
Menjalankan Perintah Paket (pnpx)
Mirip seperti npx
, pnpm
menyediakan pnpx
(atau bisa juga langsung dengan pnpm exec
) untuk menjalankan perintah yang sudah terinstal secara lokal di folder node_modules/.bin
proyek, tanpa perlu instalasi global:
bash
pnpm exec webpack --version
# Atau dengan cara singkat
pnpx webpack --version
1
2
3
2
3
Ringkasan
Dengan perintah corepack enable pnpm
, Anda dapat dengan mudah mengaktifkan pnpm
di lingkungan Node.js ServBay. Manfaatkan kemampuan manajemen dependensi yang efisien dari pnpm
untuk mempercepat instalasi dependensi dan meningkatkan produktivitas pengembangan Node.js Anda, sekaligus menghemat ruang disk yang berharga. Untuk pengguna ServBay yang menginginkan pengalaman pengembangan terbaik, pnpm
merupakan alat yang sangat direkomendasikan.