Npm Nedir? Npm ile Paket Kurulumu Nasıl Yapılır?

Bu yazımda Npm nedir? Npm ile paket kurulumu nasıl yapılır? Global ve Yerel paketler nasıl kurulur? Kurulan bir paket nasıl silinir? sorularına cevap vermeye çalışacağım.

Npm Nedir?

Son zamanlarda Node.js’in bu kadar popüler olmasının nedenlerinden biri de Node.js kurulumu ile birlikte gelen Npm (Node Package Manager) paketidir.

Npm sayesinde projelerimizi geliştirirken terminal ekranından çok basit komutlarla istediğimiz kütüphaneleri (React, Angular, Bootstrap, jQuery, Chart vb.) saniyeler içerisinde projelerimize dahil edebiliyoruz.

Şuan Npm ile projelerimize dahil edebileceğimiz 1 milyondan fazla Css ve JavaScript paketi bulunuyor. Hatta sizde bir Css veya JavaScript kütüphanesi yazıp dünyadaki tüm yazılım geliştiricilerin hizmetine sunabilirsiniz. Varolan Npm paketlerini incelemek için Npm’in resmi internet sitesini ziyaret edebilirsiniz.

Npm’i kullanabilmek için öncelikle bilgisayarınıza Node.js’i kurmanız gerekiyor. Çünkü Node.js kurulumu ile Npm paketi de otomatik olarak kurulmuş oluyor. Node.js kurulumu için Node.js Nedir? Node.js Kurulumu Nasıl Yapılır? yazımı okuyabilirsiniz.

İlgili yazımı takip ederek Node.js’i kurup tekrar bu yazımda kaldığınız yerden devam edebilirsiniz. Artık Npm’in bilgisayarınızda kurulu olduğunu varsayarak kaldığım yerden devam ediyorum.

Şimdi projelerimize Npm ile nasıl paket yükleyebileceğimize bakalım. Npm paketlerini yükleyebilmek için öncelikle proje dosyamızda package.json dosyasını oluşturmamız gerekiyor.

İlk olarak masaüstünde Node.js isminde bir klasör oluşturuyorum. Siz istediğiniz yere istediğiniz isimde bir klasör oluşturabilirsiniz.

Bu klasörü Visual Studio Code ile açıyorum.

Sonra Visual Studio Code da yeni bir terminal penceresi açıyorum. Terminale şu komutu yazıyorum:

npm-package-json-olusturma-0

Bu komutu yazıp çalıştırdığımızda sırasıyla şu soruları soruyor. Burada şuan için cevaplamak istemediğiniz soruları Enter’a basarak geçebilirsiniz.

package name: Paketin ismini yazıp Enter’a basarak bir sonraki soruya geçiyoruz.

version: Paketin versiyonunu yazıp Enter’a basarak bir sonraki soruya geçiyoruz.

description: Paketin açıklamasını yazıp Enter’a basarak bir sonraki soruya geçiyoruz.

entry point: Uygulamanın giriş noktasını yazıp Enter’a basarak bir sonraki soruya geçiyoruz.

keywords: İstediğimiz anahtar kelimeleri yazıp Enter’a basarak bir sonraki soruya geçiyoruz.

author: Yazar bilgisini yazıp Enter’a basarak bir sonraki soruya geçiyoruz.

license: Lisans bilgisini yazıp Enter’a basıyoruz.

Sonrasında bu bilgileri onaylayıp onaylamağımızı soruyor. 

“y” yazıp Enter’a basıyoruz.

package-json-olusturma-1

Artık proje klasörü içerisinde package.json dosyasının oluştuğunu görebiliriz.

npm-package-json-nedir-2

Dikkat ederseniz biraz önce girmiş olduğumuz bilgiler package.json dosyasının içerisine eklendi.

Yani aslında package.json dosyası bizim uygulama bilgilerini ve paket bilgilerini yönetebileceğimiz bir dosyadır.

 ⇒  Eğer package.json dosyasını oluştururken tüm soruların tek tek sorulmasını istemiyorsanız şu komutu kullanabilirsiniz:

Böylece tüm sorular varsayılan cevapları ile package.json dosyasına eklenir.

Şimdi Npm komutları ile Bootstrap kütüphanesini projemize ekleyelim.

Npm’in sitesindeki arama kutusuna istediğiniz paketin adını yazarak ilgili sayfaya gidebilirsiniz. Bootstrap’ın sayfasına gittiğinizde ilgili paket ile ilgili detaylı bilgileri bulabilirsiniz. Örneğin bootstrap ile ilgili bazı bilgiler şu şekilde:

  • Toplam 35 Versiyon
  • Son versiyon 4.5.2
  • Haftalık 2.678.103 indirme
  • Toplam 153 dosya
  • Paket boyutu 4.49 MB
  • MIT Lisans vb.

npm-ile-paket-kurulumu-3

Paketi indirmek için terminalde şu kodu yazıyoruz:

Kodu çalıştırdığımızda proje dosyamızın içerisinde node_modules isminde bir klasör oluşuyor. Bu klasörün içerisinde de indirmiş olduğumuz bootstrap dosyaları bulunuyor.

npm-ile-bootstrap-kurulumu-4

Artık Npm ile indirmiş olduğumuz bootstrap dosyalarını istediğimiz yerde kullanabiliriz.

npm-bootstrap-kurulumu-5

Kurulum sonrası tekrar package.json dosyasını açtığımızda dependencies isminde yeni bir alan eklendiğini görüyoruz. İçerisinde de indirmiş olduğumuz paketin ismi bulunuyor. Bunun anlamı şudur:

Bu proje şu paketlere bağımlıdır demek istiyor. Güzel yanı ise şu:

Projeniz büyüdükçe node_modules içerisindeki paketlerin sayısı bir hayli artacaktır. Siz projenizi github‘a atmak istediğinizde veya başka bir yere taşımak istediğinizde node_modules klasörünü taşımanıza gerek kalmıyor.

Örneğin node_modules klasörünü sildiğimizi varsayalım. Zaten projenin bağımlı olduğu tüm paketler package.json dosyası içerisindeki dependencies alanında yazılı olacağı için tüm paketleri tek satır komut ile tekrar kurabiliriz.

Peki bu tek satırlık komut nedir?

Evet, terminalde bu kodu çalıştırdığımızda node_modules klasörü olmasa bile dependencies kısmında yazılı olan tüm paketler tekrar indirilecektir.

 ⇒  Eğer bir paketin özellikle belirli bir versiyonunu kurmak istiyorsanız bunu şu şekilde belirtebilirsiniz:

Yani paket isminden sonra @ karakterini yazıp sonrasında istediğimiz versiyon numarasını yazıyoruz.

Yerel paketler hangi proje içerisine kurulmuşsa sadece o projede kullanılabilir. Global paketler ise tek bir projede değil de tüm projelerimizde kullanabileceğimiz paketlerdir.

Yerel paketleri 2’ye ayırabiliriz:

Birincisi projenin her aşamasında bağımlı olduğu paketler. Örneğin bootstrap paketini kurmak istiyorsak şu kodu yazmamız gerekiyor.

İkincisi ise projenin sadece geliştirme aşamasında bağımlı olduğu paketler. Bu defa webpack paketi üzerinden örnek verelim.

Şimdi 2 farklı yerel paketin kurulum sonrası package.json dosyasındaki durumuna bakalım.

npm-global-ve-local-paketler-6

Gördüğünüz gibi ilk paket dependencies kısmına yazılmışken ikinci paket devDependencies kısmına yazılmış.

 ⇒  Şimdi de webpack paketini global olarak kurmak istediğimizi varsayalım. O zaman yazmamız gereken kod şu şekilde olacak:

Bu kurulumu yaptıktan sonra artık tüm projelerimizde tekrar bir kurulum yapma ihtiyacı olmadan webpack paketini kullanabiliriz.

 ⇒  Bilgisayarınıza kurulu tüm global paketleri listelemek için şu kodu kullanabilirsiniz:

 ⇒  Son olarak kurulu bir paketi silmek istediğimizde yazmamız gereken koda bakalım. Örneğin kurmuş olduğumuz bootstrap paketini kaldırmak için şu kodu yazmamız gerekiyor.

Umarım “Npm Nedir? Npm ile Paket Kurulumu Nasıl Yapılır?” başlıklı yazım sizin için faydalı olmuştur.

Şu yazılar da ilginizi çekebilir.

BOOTSTRAP NEDİR? BOOTSTRAP NASIL KULLANILIR?

Npm ile ilgili daha detaylı bilgi almak istiyorsanız resmi sitesini inceleyebilirsiniz.

npmjs.com

Yeni bir yazımda görüşmek üzere.

Yorum Yazın