Volta: Cara Mengganti Versi Node.js yang Lebih Baik dari NVM

This article has been translated into English version: Volta: A Better Node.js Version Manager Than NVM

Kerumitan Versi di Node.js

Node.js adalah sebuah JavaScript runtime yang bertumbuh begitu cepat. Konsekuensinya adalah banyaknya versi Node.js yang dirilis hingga saat ini. Jika kita melihat release schedule dari Node.js, kita akan mengetahui bahwa Node.js punya banyak sekali versi. Tidak seperti bahasa pemrograman lain yang cenderung stabil dan jarak rilis antar versi barunya bisa sangat lama sekali. Sejak dirilis pada tahun 2009, Node.js sekarang sudah punya 22 versi mayor dengan rilisan baru setiap 6 bulan sekali.

Release schedule dari Node.js per September 2024
Release schedule dari Node.js per September 2024

NVM vs Volta

Maka dari itu, NVM (Node Version Manager) telah dipakai oleh para developer Node.js sejak lama untuk mengelola berbagai versi Node.js. Kemampuannya untuk beralih dengan cepat antara versi Node yang berbeda menjadikannya pilihan utama, terutama ketika proyek berbeda membutuhkan versi Node.js yang berbeda.

Repository NVM di GitHub (Sumber: https://github.com/nvm-sh/nvm)
Repository NVM di GitHub (Sumber: https://github.com/nvm-sh/nvm)

Meskipun NVM menjadi tools yang paling sering dipakai saat ini, tapi mungkin banyak yang belum tahu bahwa ada tools lain yang bisa dijadikan sebagai alternatif yang lebih cepat dan lebih efisien. Dan tools ini sekarang juga menjadi pilihan saya untuk mengelola berbagai versi Node.js, utamanya di localhost saya sendiri. Nama tools tersebut adalah Volta.

Volta - The Hassle-Free JavaScript Tool Manager (Sumber: https://volta.sh)
Volta - The Hassle-Free JavaScript Tool Manager (Sumber: https://volta.sh)

Keunggulan utama Volta dari NVM yang menjadi highlight saat ini yaitu kemampuan Volta untuk mengganti versi Node.js secara otomatis per projek, beda dengan NVM yang masih harus melakukan beberapa command meskipun versi Node.js di projek tersebut sudah di-setting menggunakan .nvmrc. Selain itu, beberapa keunggulan lainnya dari Volta dibandingkan dengan NVM yaitu:

  • Kecepatan switching antar versi Node.js.
  • Pengelolaan package manager secara global seperti NPM, Yarn, PNPM dan lain-lain.
  • Kompatibel dengan berbagai OS platform seperti Windows, Linux, macOS, dan lain-lain.
  • Pergantian versi Node.js yang seamless antar projek, cukup dengan melakukan konfigurasi di package.json masing-masing projek.

Instalasi Volta

Untuk Windows, proses instalasi Volta yang direkomendasikan adalah dengan menggunakan winget.

bash

winget install Volta.Volta

Untuk Linux dan OS lainnya yang berbasis Unix, Volta bisa diinstal menggunakan curl.

bash

curl https://get.volta.sh | bash

Untuk macOS, Volta bisa diinstal dengan menggunakan Homebrew.

bash

brew install volta

Panduan untuk meng-install Volta bisa dicek lebih lengkap di website resmi mereka yaitu .

Setup Versi Node.js dengan Volta

Penggunaan versi Node.js di Volta dibagi menjadi dua, yaitu secara global dan per projek. Masing-masing bisa diatur secara terpisah dan tidak saling mengganggu satu sama lain.

Untuk mengubah versi Node.js secara global, kita bisa melakukan perintah sebagai berikut.

bash

volta install node@22.5.1

Maka volta akan menetapkan Node.js dengan versi 22.5.1 sebagai default version di komputer kita. Volta akan selalu menggunakan default version ini kecuali jika posisi terminal berada di direktori projek dengan konfigurasi Volta untuk menggunakan versi Node.js yang berbeda.

Versi Node.js pada volta install juga bisa ditulis secara umum, bahkan bisa menggunakan opsi latest untuk penggunaan versi Node.js terbaru atau opsi lts untuk penggunaan versi Node.js terbaru dengan mode LTS (Long Term Support).

bash

volta install node@22
volta install node@latest
volta install node@lts

Untuk menggunakan versi Node.js yang berbeda per masing-masing projek, kita bisa melakukannya dengan perintah volta pin sebagai berikut.

bash

volta pin node@20.16
volta pin yarn@1.19

Atau bisa dilakukan secara manual dengan menambahkan properti volta di package.json yang ada di projek tersebut. Ini memungkinkan kita untuk menyimpan versi Node.js secara spesifik dan meng-commit konfigurasi tersebut ke version control yang ada seperti Git dan semacamnya.

package.json

"volta": {
  "node": "20.16.0",
  "yarn": "1.19.2"
}

Dengan cara ini, kita tidak perlu lagi melakukan perubahan versi Node.js ketika masuk ke dalam projek melalui terminal. Volta akan otomatis menyesuaikan versi Node.js berdasarkan konfigurasi yang telah disimpan di package.json.

bash

node --version # 20.16.0
yarn --version # 1.19.2

Panduan lebih lengkap mengenai hal ini bisa dicek di .

Penutup

Meskipun NVM saat ini merupakan solusi untuk mengganti versi Node.js yang populer, namun tidak ada salahnya bagi para developer saat ini untuk mencari alternatif lain dengan menggunakan Volta. Apalagi dengan keunggulan utamanya yang membuat kita tidak perlu lagi mengganti versi Node.js di projek yang berbeda-beda. Bagaimana menurutmu? Silakan tuliskan pendapat kalian di kolom komentar, terima kasih.


Sumber

Konten Terkait