Volta: JavaScript Tool Manager Nedir?

Aykut Kardaş
2 min readJan 12, 2021

--

Photo by Kristopher Roller on Unsplash

Kendi sloganıyla Volta: Problemsiz JavaScript Araç Yöneticisi’dir Rust ile yazılmıştır ve bir JavaScript aracını yükleme ve kurmada çok hızlı olduğunu iddia eder.

Projenin bağımlı olduğu araçların ve sürümlerinin her ekip üyesi tarafından aynı olması konusunda endişe etmemenizi sağlar ve ona güvenmenizi ister.

İlk Release’ini 21 Aralık 2020 tarihinde v1.0.0 sürümüyle almıştır.

Bu yazıda Volta ile projelerimizde node bağımlılıklarını yönetmeyi ele alacağım. Volta ile bir node sürümü yüklemek için install komutunu çalıştırmak yeterlidir.

$ volta install node@15.0.0

Eğer bu node versiyonu bilgisayarınızda yüklü değilse önce yükler ve ardından aktif node sürümünüz olarak bu versiyona geçer.

Yüklü node sürümlerini görüntülemek için list komutunu kullanırız.

$ volta list node⚡️ Node runtimes in your toolchain:    v8.10.0
v10.23.1
v12.20.1
v14.15.4
v15.0.0 (default)
v15.5.1

Projeler arasında node sürümünü yönetmek bundan çok daha kolaydır. package.json dosyası içeren bir proje dizininde pin komutu ile kullanacağınız node versiyonunu bir kere seçmeniz yeterlidir.

$ volta pin node@15.0.0

Bu komutu çalıştırdıktan sonra belirtilen node sürümü yoksa yüklenecek ve ardından package.json dosyasına volta isimli bir alan eklenecektir.

{
"name": "project",
"version": "1.0.0",
"description": "",
...
"license": "ISC",
"volta": {
"node": "15.0.0"
}

}

Artık Volta kullanan ve projeyi geliştirecek herhangi biri proje dizinine girdiğinde versiyon geçişi otomatik olarak sağlanır. Bu sayede sizin node sürümünü bilmenize ve geçiş yapmak için manuel komutlar girmenize gerek kalmaz.

Bu sürüm sabitleme işlemlerini npm , yarn gibi diğer javascript araçları içinde yapabilirsiniz.

$ volta pin yarn@1.22.10

Daha fazla ve detaylı bilgi için Volta’nın kendi reposunu inceleyebilirsiniz.

Eğer node versiyon yönetimini nvm ile nasıl yapabileceğinizi merak ediyorsanız. “NVM Nedir?” başlıklı yazıma göz atabilirsiniz.

Happy Coding!

--

--

No responses yet