Üretken ve Kolay Yaşam için JavaScript Geliştiricisi Olarak Bilinmesi Gereken 19 Node.js Paketi

Yayınlanan: 2022-09-14

JavaScript kodu oluşturmak için çok mu zaman harcıyorsunuz? Bir JavaScript geliştiricisinin hayatını verimli ve kolay hale getirebilecek çeşitli Node.js paketlerini öğrenmek için okumaya devam edin.

JavaScript, senkronize tek iş parçacıklı bir dildir. Yazılım ve uygulama geliştirme için en yaygın kullanılan programlama dilidir. Reactjs, Angularjs, Vuejs, Expressjs ve Node.js gibi birçok çerçeve, temel dilleri JavaScript ile geliştirilmiştir.

Pek çok geliştirici, JavaScript'te kodlama yaparken vaatler, olay döngüsü, geri aramalar, kaldırma, kapatmalar vb. gibi çeşitli karmaşık kavramlar nedeniyle sorunlarla karşılaşıyor.

JavaScript'te geliştirmeyi kolaylaştırmak için, hataları işlemeye, kodu biçimlendirmeye, dosyaları silmeye, kod hatalarını ayıklamaya, güvenliği sağlamaya vb. yardımcı olan birçok Node.js paketi mevcuttur. Bazıları ayrıca CPU gücünün daha iyi görsel temsilleri için etkileşimli komut satırı kullanıcı arabirimleri sağlar, işleme kapasitesi, hataların ciddiyeti vb.

Emekli.js

Retire.js, diğer Javascript Kitaplığı sürümleriyle ilişkili güvenlik açıklarının bir listesini sağlayan bir Javascript kitaplığıdır.

Bir Chrome uzantısı, Firefox uzantısı, komut satırı tarayıcısı, Grunt Eklentisi vb. Olarak kullanılabilir. Aşağıdaki komut kullanılarak yüklenebilir:

 $ npm install -g retire

Retire.js, JavaScript ve düğüm dosyalarını taramak için çeşitli komutlara sahiptir. JavaScript web sitelerini tarar ve uyarıları geliştirici konsoluna kaydeder. Retire.js, güvenlik açıkları bulduğunda çıkış kodu 13'ü oluşturur. Gulp görevi dosyaları otomatik olarak tarar ve güvenlik açıklarını bildirir.

np

Np, kod temizleme, bağımlılık yükleme, paket ve etiket yayınlama gibi çeşitli özellikler sağlayan bir JavaScript paketidir. Kodun ana şubeye gönderilmesini sağlar ve etkileşimli bir UI sağlar.

Yeni depoların güvenliğini sağlamak için iki faktörlü Kimlik Doğrulama kullanılır. Bağımlılıkları yeniden yükleyerek işin en son sürümde yapılmasını sağlar. En son sürüm npm'ye itilir. Aşağıdaki komut kullanılarak kurulabilir:

 $ npm install --global np

Çeşitli özellikleri arasında herhangi bir daldan kod yayınlama, yayınlama için alt dizinler oluşturma, kodu temizleme ve test etme vb. atlama yer alır. np'nin konfigürasyonu, np'nin np-config.js ve no -config.json.

ESLint

ESLint, JavaScript'i ayrıştıran ve ECMA/JavaScript kodundaki kalıpları tanımlayan bir JavaScript paketi aracıdır. AST kullanarak koddaki kalıpları değerlendirir. Aracın tüm kuralları eklentiler şeklinde tanımlanır ve çalışma anında dinamik olarak eklenebilir. ESLint aşağıdaki komut kullanılarak kurulabilir:

 $ npm init @eslint/config

Yukarıdaki komutu kullanarak kurduktan sonra, hata tanımları ve ilgili koşulları içeren bir dizi kural içeren bir .eslintrc dosyası oluşturulur. ESLint, tüm bağımlılıkların kullanıcının .lock dosyasında tanımlanmasına izin verir ve kendi .lock dosyasını kullanmaz. Ayrıca son derece güvenlidir.

Shellj'ler

Shelljs, UNIX komutlarının Node.js API üzerinden herhangi bir işletim sisteminde yürütülebildiği bir ortamdır. Shelljs taşınabilirdir ve üçüncü taraf eklentileri de destekler. Kullanılabilecek çeşitli komutlar, echo, exec, chmod, pushd, popd, cd, cat, vb.'dir. Shellj'leri kurmak için aşağıdaki komut kullanılabilir.

 $ npm install [-g] shelljs

Firefox, JSHint, ESLint, Zepto vb. gibi çeşitli projelerde test edilmiştir. Shelljs paketlerinin yerel ithalatı, global ithalata tercih edilir. Ayrıca sessiz, ölümcül, ayrıntılı vb. olarak da yapılandırılabilir.

Omlet

Omlet, Node ve Deno projeleri için kodun otomatik olarak tamamlanması için bir şablon sağlar. Süper kolay API kullanır ve Async API ve Tree API'yi de destekler. Omlet uygulamak için örnek bir kod parçacığı aşağıda gösterilmiştir:

 import * as omelette from 'omelette'; const firstArgument = ({ reply }) => { reply([ 'beautiful', 'cruel', 'far' ]) } const planet = ({ reply }) => { reply([ 'world', 'mars', 'pluto' ]) } omelette`hello|hi ${firstArgument} ${planet}`.init()

Omlet içe aktarıldıktan sonra bir Omelette nesnesi oluşturulmalıdır. Ardından, kodun otomatik olarak tamamlanması için, kurulum için setupShellInitFile(), temizleme için cleanupShellInitFile() gibi çeşitli işlevler, kodun otomatik olarak tamamlanması için omlet nesnesinde çağrılabilir. Ayrıca, karmaşık şablon hazır bilgi API'leri oluşturmak için Lambda işlevlerinin kullanımını da destekler.

daha güzel

Prettier, kodu biçimlendirmek için kullanılır. Sekme boşlukları vermeye yardımcı olur, bir satırdaki maksimum içeriği takip eder ve koşullu ve döngü ifadelerinde uygun girinti sağlar. Kodu düzgün ve okunabilir bir biçime dönüştürür. Örneğin:

Kod parçacığı aşağıda verilmiştir,

 foo(reallyLongArg(), omgSoManyParameters(), IShouldRefactorThis(), isThereSeriouslyAnotherOne());

Prettier uzantısı kullanıldığında aşağıdakine dönüştürülür:

 foo( reallyLongArg(), omgSoManyParameters(), IShouldRefactorThis(), isThereSeriouslyAnotherOne() );

CI ortamlarında, Entegre Geliştirme Ortamlarında (IDE'ler) vb. çalışabilir.

jscpd

jscpd teknik bir borç yönetimi hizmetidir. Çeşitli kodlar ve dijital belgeler arasında yinelenen kod parçacıklarının bulunmasına yardımcı olan bir JavaScript paketidir. Kod tekrarlarını bulmak için Rabin-Karp adlı bir dizi eşleştirme algoritması kullanır.

jscpd/core, çeşitli ortamlarda kod tekrarını algılama yeteneğine sahiptir ve program kaynak kodunu belirtmek için jspd/tokenizer kullanılır. Bunların dışında html-reporter, rozet-reporter, leveldb-store, vb. gibi birçok paket. jscpd kurulum komutu:

 $ npm install -g jscpd

jscpd GitHub Super Linter, Code-Inspector, Mega-Linter, Codacy vb. Tarafından kullanılır. Her biri jscpd'yi farklı bir amaç için kullanır. Doğal dil işleme, satır toplayıcılar, kod analizi vb. için kullanırlar.

Vtop

Vtop, komut satırı etkinliğinin grafiksel gösterimini sağlayan bir monitördür. Çalışan çeşitli iş parçacıklarını ve süreçleri analiz ederek ve bunları grafikler, ani yükselmeler vb. aracılığıyla grafiksel olarak temsil ederek CPU kullanımı hakkında bilgi verir. JavaScript, Makefile ve Shell kullanılarak geliştirilmiştir. Vtop'u yükleme komutu:

 $ npm install -g vtop

GUI'yi gereksinimlere göre daha çekici hale getirmek için çeşitli temalar ve renk kodları kullanılabilir. Güncelleme için “u”, listenin en üst sürecine gitmek için “g”, listenin sonuna gitmek için “G”, belirli bir grp'ye ait işlemleri öldürmek için “dd” gibi çeşitli klavye kısayolları. kullanılabilir.

Standardjs

Standardjs, dosya yapılandırmasını otomatikleştiren, kodu biçimlendiren ve programcıların istisna işlemesiyle ilgili sorunları hızla bulan bir JavaScript kitaplığıdır. Standardjs'yi kurma komutu aşağıda verilmiştir:

 $ npm install standard --global
Youtube videosu

Kurduktan sonra komut satırı arayüzündeki “standart” komutu kullanarak bir dosya/kod parçacığı üzerinden çalıştırabilirsiniz. Standardjs'nin tüm bağımlılıkları, package.json dosyasının bağımlılık nesnesinde “standart: “*” tanımlanarak eklenebilir.

Ayrıca Visual Studio Code, Sublime Text, Atom, Vim, Brackets vb. gibi çeşitli metin editörleri için bir eklenti olarak kurulabilir. Node.js, Expressjs, npm, Brave ve GoDaddy, iş gereksinimlerini karşılamak için Standardjs kullanır.

NodeJsScan

NodeJsScan, Node.js uygulamaları için bir Statik Güvenlik kodu Tarayıcısıdır. Etkileşimli bir kullanıcı arayüzü aracılığıyla bir uygulamanın güvenlik durumu hakkında bilgi verir. Uyarılar/bildirimler için Slack, NodeJsScan'in settings.py dosyasındaki SMTP ayarlarını yapılandırarak E-posta uyarıları, CI/CD boru hattı, vb. gibi çeşitli uygulamalarla entegre edilebilir. Ayrıca docker görüntüleri oluşturmaya da yardımcı olur.

Youtube videosu

Hataları, bilgileri ve uyarı mesajlarını günlüğe kaydeder. Hatanın oluşma nedeni, ciddiyeti, hataların oluştuğu satır numaraları, taranan dosya sayısı ve bulunan sorunlar gibi ayrıntılı bir açıklama. Daha iyi okunabilirlik ve analiz için grafikler ve tablolar da çizilir.

Çöp

Çöp Kutusu, silinen dosyaları kalıcı olarak silmek yerine çöp kutusuna taşıyan bir JavaScript kitaplığıdır. Mac, Linux ve Windows'u destekler. Çöp Kutusu'nu yüklemek için kullanılan komut:

 $ npm install trash

Çöp Kutusu, çöp() işlevi çağrıldığında girdi ve seçenekleri işlev parametreleri olarak alan bir API'dir. Giriş, bir dize veya bir dize dizisi olabilir. Seçenekler bir nesne olabilir. Çöp işlevi bir söz verir. Farklı işletim sistemlerinde farklı komutlar kullanılır. macOS çöp kutusu, MacO'larda, XDG Spec'ta Linux'ta ve geri dönüşüm kutusu Windows'ta kullanılır.

Xo

Xo, altında ESLint kullanan bir JavaScript ve TypeScript sarmalayıcıdır. Gerektiğinde koda girinti vererek, noktalı virgül, tek tırnak, virgül vb. ekleyerek okunabilir kod oluşturmaya yardımcı olur. Unicorn, import, ava, n vb. gibi birçok ESLint eklentisi Xo ile birlikte kullanılabilir. xo'yu kurmak için kullanılan komut:

 $ npm install xo --save-dev

Sorunlar, $xo –fix komutu kullanılarak otomatik olarak düzeltilebilir. Xo, package.json dosyasındaki xo özelliği kullanılarak yapılandırılabilir. Vim, Visual Studio Code, Atom, Sublime Text, Emacs vb. gibi çeşitli editörler için bir eklenti olarak kurulabilir.

diff2html

diff2html, "fark ayrıştırıcı ve güzel HTML oluşturucu" anlamına gelir. Önceki sürüme kıyasla mevcut sürümün kodundaki değişiklikleri vurgular. Geliştiricilerin hangi değişikliklerin yapıldığını kolayca tanımlamasına ve anlamasına yardımcı olur. Bunu renk kodlarını kullanarak yapar.

Bunu satır satır ve yan yana değişiklikleri vurgulayarak yapar. Kod sözdizimi değişikliklerini vurgular ve kod değişikliklerini kolayca izlemek için benzer satırları birlikte gruplandırır. diff2html yükleme komutu aşağıdaki gibidir:

 $ npm install diff2html

Ayrıca komut satırı ile entegredir. diff2html kullanan bazı projeler Jenkins, Codacy, Ungit, git-explorer, kod açıklaması vb.

Tebeşir

Chalk, kodu biçimlendirmeye ve biçimlendirmeye yardımcı olan bir Node.js modülüdür. Ayrıca metne renk temaları oluşturmaya ve eklemeye yardımcı olur. Etkileyici bir API'dir ve performansı mükemmeldir. Stilleri yuvalar ve hiçbir bağımlılığı yoktur. Tebeşir kullanımı aşağıdaki kod parçasında görülebilir:

 import chalk from 'chalk'; console.log(chalk.blue('Hello world!'));

chalk.level, her düzeyde desteklenen renkleri tanımlar. '0' tüm renklerin devre dışı bırakıldığını, '1' temel renk desteğini, '2' 256 renk desteğini ve '3' Truecolor desteğini belirtir. Tebeşir tarafından desteklenen metni biçimlendirmek için çeşitli stil değiştiriciler ters, gizli, görünür, üstü çizili, kalın, sıfırla, italik, altı çizili, üst çizgi, karartma vb.'dir.

NpKill

Npkill, eski ve ağır düğüm modülü klasörlerini kaldıran bir araçtır. Düğüm modüllerinin çok hızlı bir şekilde kaldırılmasına ve sisteminizde yer açılmasına yardımcı olur. TypeScript, JavaScript ve Go kullanılarak geliştirilmiştir. Herhangi bir bağımlılığı yoktur ve kullanımı kolaydır. Npkill'i kurmak için kullanılan komut:

 $ npm i -g npkill

Yolda npkill komutuyla belirtilen tüm düğüm modülleri silinecektir. Ancak düğüm modüllerini silerken dikkatli olunmalıdır çünkü bu geri alınamaz. Herhangi bir aktif projenin modülleri bu süreçte silinirse, dosyalar bozulur ve düğüm modüllerinin yeniden yüklenmesi gerekir.

fkill-cli

fkill-cli, Linux işlemlerini ve bağlantı noktalarını öldüren açık kaynaklı ve etkileşimli bir komut satırı aracıdır. Node.js kullanılarak geliştirilmiştir. Basit, ücretsiz, güvenli ve platformlar arası uyumludur. Windows, Linux ve macOS'ta çalışır. fkill-cli'yi kurmak için kullanılan komut:

 $ npm install --global fkill-cli

İşlemi sonlandırmak için işlem adı ve kimliği gereklidir. "-f", "-v" komutu işlem argümanlarını görüntülerken işlemi yürütmeye zorlar. fkill API, girdileri ve seçenekleri argümanları olarak alır ve bir söz nesnesi döndürür. Bazı seçenekler, zorlama, sessiz, yok saymaCase, ağaç ve forceAfterTimeout'tur.

yerel tünel

Localtunnel, sistemin DNS ve güvenlik duvarı ayarlarını değiştirmeden bir bilgisayarın yerel ortamı ile harici bir ortamdan web servislerinin paylaşılmasını sağlayan bir platformdur.

Youtube videosu

İstekler Localtunnel tarafından proxy'lenir ve genel olarak erişilebilir bir URL ile atandıktan sonra yerel olarak dağıtılan sunucuya iletilir. Localtunnel'ı kurmak için kullanılan komut aşağıdaki gibidir:

 $ npm install -g localtunnel

Güvenlidir ve HTTPS isteklerini kullanır. Bu API'ler, web kancalarını test etmek için kullanılabilir. Kullanıcı arayüzü, Localtunnel kullanılarak bulut tarayıcılarında test edilebilir.

Inquirer.js

Inquirer.js, Node.js uygulamaları için etkileşimli bir komut satırı kullanıcı arabirimidir. Hata bulma, girdiyi ayrıştırma, yanıtları doğrulama ve hiyerarşik istemleri yönetme sürecini kolaylaştırır. İşlevlerinin uygulanması için yerel ESM modüllerini kullanır. Inquirer.js'yi yüklemek için kullanılan komut:

 $ npm install --save inquirer

Kullanılan çeşitli yöntemler arasında bilgi istemi, registerPrompt, createPromptModule, vb. bulunur. İstem(), girdi olarak soru ve yanıt alan ve çağrıldığında bir söz veren bir işlevdir.

Soru, tür, mesaj, varsayılan, seçimler, filtre vb. gibi soruyla ilgili değerlerin karma bir sürümü olan bir nesnedir. Yanıt anahtarı/değer nesne çifti, istemci yanıtlarının karma sürümünü içerir. Anahtar, soru özelliğidir, değer ise onaylama, giriş, sayı, ham liste vb. içerebilir.

http sunucusu

http sunucusu, bir komut satırı statik http sunucusudur. Basittir ve herhangi bir konfigürasyon gerektirmez. 2 dosyadan oluşur: yani index.html ve 404.html. index.html, isteklerde oluşturulacak varsayılan dosyadır. 404.html, bir dosya bulunamadığında işlenir. http-server'ı kurmak için kullanılan komut aşağıda gösterildiği gibidir:

 $ npm install --global http-server

HTML ve JavaScript kullanılarak geliştirilmiştir. TLS/SSL sertifikaları ile güvenliği sağlar. Anahtar şifreleme ve şifre çözme için RSA algoritmasını kullanır. Ayrıca, güvenlik amacıyla özel bir anahtarla birlikte bir parola tanımlamasına da izin verir.

Son sözler

JavaScript, yazılım geliştirme için en yaygın kullanılan programlama dilidir. Geliştiricilerin hayatlarını kolaylaştırmak için çeşitli Node.js paketleri geliştirildi.

Retire.js, Localtunnel, Xo, Inquirer.js, Shelljs, fpkill, NodeJsScan, Prettier vb. gibi Node.js paketleri kodu biçimlendirmek, güvenliği sağlamak, kod değişikliklerini vurgulamak, ağır ve istenmeyen düğüm modüllerini silmek vb. için kullanılabilir. Bu, geliştiricilerin kodlarını verimli bir şekilde hata ayıklamasına, yazmasına ve yönetmesine yardımcı olur.

Ayrıca Windows ve macOS'ta Node.js ve NPM'nin nasıl kurulacağını da okuyabilirsiniz.