Npx Nedir, Neden Kullanılır, Npm Install’dan Farkı Nedir?

Npx nedir; npm, geliştiriciler tarafından sıklıkla kullanılan paket yönetim aracıdır. vue, angular, react gibi çok fazla library veya framework’leri kullanan kişilerin içli dışlı olduğu bir araçtır.

Npx Nedir, Neden Kullanılır, Npm Install’dan Farkı Nedir?

Npx Nedir, Neden Kullanılır, Npm Install'dan Farkı Nedir?

Npm paketlerini bir projeye paket olarak kurabileceğiniz gibi global olarak kurup kullanabileceğiniz çok fazla cli aracı mevcuttur ve neredeyse her developer’ın cihazında en az bir global paket vardır diye düşünüyorum.

Örnek olarak, npx kullanmadan önce alttaki gibi bir kod kullanarak react uygulaması oluşturmak için global olarak bir react cli aracı kurmamız gerekiyordu.

npm i -g create-react-app

Şimdi ise bir global paket kurmaya ihtiyaç kalmadan npx komutu ile doğrudan ihtiyacı giderebiliyoruz. Altta gördüğünüz npx kodu, üstteki kod çalıştırıldıktan ve paket kurulduktan sonra yapılacak işlem olan yeni bir react projesi oluşturma işleminin dahil edilmiş hali olarak düşünebilirsiniz. Yani özetlersek npx komutu ile react-react-app adlı cli aracı yok ise öncelikle araç indirilir ardından yeni bir react projesi oluşturulur.

npx create-react-app my-example-app

Yukarıda kullandığımız create-react-app adlı paketin özel bir versiyonunu çalıştırmak isterseniz alttaki gibi bir syntax kullanabilirsiniz.

npx create-react-app@version my-example-app

Peki “neden npx’e ihtiyaç duyuldu” ya da farklı bir soru “npm i -g ile ne sorun yaşıyordukta” böyle bir alternatif kullanım çıkarıldı.

  • Global paketleri çok sık kullanıyorsanız ve global olarak yükleyip kullandığınız çok fazla araç varsa sistemde gereksiz alan kaplamaktadırlar.
  • Çoğu şirket bilgisayarında yaşanan sorun ya da şirket bilgisayarı olmadan da farklı izin sorunları dolayısıyla global paket kurmada yaşanan izin sorunları.
  • Farklı projelerde aynı global paketin farklı versiyonları ile çalışılması gerekebiliyor.

📚 Benzer Makaleler


✍ Lütfen olumlu-olumsuz tüm görüşlerinizi bana yorum yada mail yolu ile iletmeyi ihmal etmeyin.

🔗 Sosyal medya kanallarından makaleyi paylaşarak destek olursanız çok sevinirim.

👋 Bir sonraki makalede görüşmek dileğiyle.