etechblog

19 balíčků Node.js, které musíte znát jako vývojář JavaScriptu pro produktivní a snadný život

Trávíte příliš mnoho času vytvářením kódu JavaScript? Čtěte dále a dozvíte se o různých balíčcích Node.js, které mohou vývojářům JavaScriptu usnadnit a zefektivnit jejich život.

JavaScript je synchronní jednovláknový jazyk. Je to nejrozšířenější programovací jazyk pro vývoj softwaru a aplikací. Mnoho frameworků jako Reactjs, Angularjs, Vuejs, Expressjs a Node.js bylo vyvinuto s jejich základním jazykem JavaScript.

Mnoho vývojářů čelí problémům při kódování v JavaScriptu kvůli různým komplexním konceptům, jako jsou sliby, smyčka událostí, zpětná volání, zvedání, uzavření atd.

Pro usnadnění vývoje v JavaScriptu je k dispozici mnoho balíčků Node.js, které pomáhají při zpracování chyb, formátování kódu, mazání souborů, ladění kódu, zajištění bezpečnosti atd. Některé také poskytují interaktivní uživatelská rozhraní příkazového řádku pro lepší vizuální reprezentaci výkonu CPU, kapacita zpracování, závažnost chyb atd.

Retire.js

Retire.js je Javascriptová knihovna, která poskytuje seznam zranitelností spojených s jinými verzemi Javascript Library.

Lze jej použít jako rozšíření pro Chrome, rozšíření pro Firefox, skener příkazového řádku, Grunt Plugin atd. Lze jej nainstalovat pomocí následujícího příkazu:

$ npm install -g retire

Retire.js má různé příkazy pro skenování souborů JavaScript a uzlů. Prohledává JavaScriptové webové stránky a zaznamenává varování do vývojářské konzole. Retire.js generuje kód ukončení 13, když najde zranitelnosti. Gulp task automaticky skenuje soubory a hlásí zranitelnosti.

Np

Np je balíček JavaScriptu, který poskytuje různé funkce, jako je čištění kódu, instalace závislostí, publikování balíčků a značek atd. Zajišťuje, aby byl kód přenesen do hlavní větve, a poskytuje interaktivní uživatelské rozhraní.

K zajištění bezpečnosti nových úložišť se používá dvoufaktorová autentizace. Přeinstalováním závislostí zajišťuje, že se pracuje na nejnovější verzi. Nejnovější verze je posunuta do npm. Lze jej nainstalovat pomocí následujícího příkazu:

$ npm install --global np

Mezi jeho různé funkce patří publikování kódu z libovolné větve, vytváření podadresářů pro publikování, přeskakování čištění kódu a testování atd. Konfigurace np může být provedena globálně a lokálně pomocí příznaků CLI v konfiguračních souborech np, jako je np-config.js a ne -config.json.

ESLint

ESLint je nástroj pro balíčky JavaScript, který analyzuje JavaScript a identifikuje vzory v kódu ECMA/JavaScript. Vyhodnocuje vzory v kódu pomocí AST. Všechna pravidla nástroje jsou definována ve formě pluginů a lze je přidávat dynamicky za běhu. ESLint lze nainstalovat pomocí níže uvedeného příkazu:

$ npm init @eslint/config

Po instalaci pomocí výše uvedeného příkazu se vygeneruje soubor .eslintrc se sadou pravidel s definicemi chyb a jejich příslušnými podmínkami. ESLint umožňuje definovat všechny závislosti v souboru .lock uživatele a nepoužívá vlastní soubor .lock. Je také vysoce bezpečný.

Shelljs

Shelljs je prostředí, kde lze UNIXové příkazy spouštět na jakémkoli operačním systému přes Node.js API. Shelljs je přenosný a podporuje také pluginy třetích stran. Různé příkazy, které lze použít, jsou echo, exec, chmod, pushd, popd, cd, cat atd. Následující příkaz lze použít k instalaci Shelljs.

$ npm install [-g] shelljs

Byl testován v různých projektech jako Firefox, JSHint, ESLint, Zepto atd. Místní import balíčků Shelljs je preferován před globálním importem. Může být také nakonfigurován jako tichý, fatální, upovídaný atd.

  Mohou orgány činné v trestním řízení skutečně sledovat někoho s IP adresou?

vaječná omeleta

Omeleta poskytuje šablonu pro automatické dokončování kódu pro projekty Node a Deno. Používá super snadné API a podporuje také Async API a Tree API. Ukázkový fragment kódu pro implementaci omelety je uveden níže:

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()

Po importu Omeleta je třeba vytvořit objekt Omeleta. Poté lze na objektu omeleta pro automatické dokončení kódu zavolat různé funkce pro automatické dokončování kódu, jako je setupShellInitFile() pro nastavení, cleanupShellInitFile() pro vyčištění. Podporuje také použití funkcí Lambda pro vytváření komplexních šablon API.

Hezčí

Prettier se používá pro formátování kódu. Pomáhá při vytváření mezer na tabulátoru, sleduje maximální obsah na jednom řádku a zajišťuje správné odsazení v podmíněných a smyčkových příkazech. Převádí kód do čistého a čitelného formátu. Například:

Fragment kódu je uveden níže,

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

při použití rozšíření Prettier se převede na níže uvedené:

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

Může běžet v prostředí CI, integrovaných vývojových prostředích (IDE) atd.

jscpd

jscpd je technická služba správy dluhu. Jedná se o balíček JavaScript, který pomáhá najít duplicitní úryvky kódu v různých kódech a digitálních dokumentech. K nalezení duplikací kódu používá algoritmus pro porovnávání řetězců nazvaný Rabin-Karp.

jscpd/core má schopnost detekovat duplikaci kódu v různých prostředích a jspd/tokenizer se používá pro tokenizaci zdrojového kódu programu. Kromě nich existuje mnoho dalších balíčků jako html-reporter, badge-reporter, leveldb-store atd. Příkaz pro instalaci jscpd je:

$ npm install -g jscpd

jscpd používají GitHub Super Linter, Code-Inspector, Mega-Linter, Codacy atd. Každý z nich používá jscpd k jinému účelu. Používají jej pro zpracování přirozeného jazyka, řádkové agregátory, analýzu kódu atd.

Vtop

Vtop je monitor, který poskytuje grafické znázornění činnosti příkazového řádku. Poskytuje informace o využití CPU analýzou různých běžících vláken a procesů a jejich grafickým znázorněním prostřednictvím grafů, špiček atd. Byl vyvinut pomocí JavaScriptu, Makefile a Shell. Příkaz pro instalaci Vtop je:

$ npm install -g vtop

Různá témata a barevné kódy lze použít k zatraktivnění GUI podle požadavků. Různé klávesové zkratky jako „u“ pro aktualizaci, „g“ pro přechod na začátek procesu seznamu, „G“ pro přesun na konec seznamu, „dd“ pro ukončení procesů patřících do konkrétní skupiny atd. může být použito.

Standardjs

Standardjs je JavaScriptová knihovna, která automatizuje konfiguraci souborů, formátuje kód a rychle nachází problémy se zpracováním výjimek programátorů. Příkaz k instalaci Standardjs je uveden níže:

$ npm install standard --global

Po instalaci jej můžete spustit přes soubor/úryvek kódu pomocí příkazu „standard“ v rozhraní příkazového řádku. Všechny závislosti Standardjs lze přidat definováním „standard: „*“ v objektu závislosti souboru package.json.

Lze jej také nainstalovat jako plugin pro různé textové editory, jako je Visual Studio Code, Sublime Text, Atom, Vim, Brackets atd. Node.js, Expressjs, npm, Brave a GoDaddy používají Standardjs k uspokojení svých obchodních požadavků.

  Jak používat výukové nástroje aplikace Microsoft Word

NodeJsScan

NodeJsScan je skener statického bezpečnostního kódu pro aplikace Node.js. Informuje o stavu zabezpečení aplikace prostřednictvím interaktivního uživatelského rozhraní. Může být integrován s různými aplikacemi, jako je Slack pro výstrahy/oznámení, e-mailová upozornění konfigurací nastavení SMTP v souboru settings.py NodeJsScan, potrubí CI/CD atd. Pomáhá také při vytváření obrazů dockerů.

Zaznamenává chyby, informace a varovné zprávy. Podrobný popis chyby, jako je důvod jejího výskytu, její závažnost, čísla řádků, kde se chyby vyskytly, počet zkontrolovaných souborů a nalezených problémů atd. Pro lepší čitelnost a analýzu jsou také vykreslovány grafy a tabulky.

Odpadky

Koš je knihovna JavaScriptu, která přesune smazané soubory do koše namísto jejich trvalého odstranění. Podporuje Mac, Linux a Windows. Příkaz použitý k instalaci koše je:

$ npm install trash

Koš je rozhraní API, které při vyvolání funkce trash() přebírá vstup a možnosti jako parametry funkce. Vstupem může být řetězec nebo pole řetězců. Možnosti mohou být objekt. Funkce koše vrátí slib. V různých operačních systémech se používají různé příkazy. macOS-trash se používá v MacO, XDG Spec v Linuxu a koš ve Windows.

Xo

Xo je JavaScript a TypeScript wrapper, který používá ESLint pod ním. Pomáhá vytvářet čitelný kód tím, že kód odsazuje, přidává středníky, jednoduché uvozovky, čárky atd., kdykoli je to potřeba. Mnoho pluginů ESLint jako unicorn, import, ava, n atd. lze použít s Xo. Příkaz použitý k instalaci xo je:

$ npm install xo --save-dev

Problémy lze opravit automaticky pomocí příkazu $xo –fix. Xo lze nakonfigurovat pomocí vlastnosti xo v souboru package.json. Lze jej nainstalovat jako plugin pro různé editory, jako je Vim, Visual Studio Code, Atom, Sublime Text, Emacs atd.

diff2html

diff2html je zkratka pro „analyzátor rozdílů a pěkný generátor HTML“. Zvýrazňuje změny v kódu aktuální verze ve srovnání s předchozí verzí. Pomáhá vývojářům snadno identifikovat a pochopit, jaké změny byly provedeny. Dělá to pomocí barevných kódů.

Dělá to zvýrazněním změn po řádcích a vedle sebe. Zvýrazňuje změny syntaxe kódu a seskupuje podobné řádky, aby bylo možné snadno sledovat změny kódu. Příkaz k instalaci diff2html je následující:

$ npm install diff2html

Je také integrován s příkazovým řádkem. Některé projekty používající diff2html jsou Jenkins, Codacy, Ungit, git-explorer, code-anotace atd.

Křída

Chalk je modul Node.js, který pomáhá při formátování a stylování kódu. Pomáhá také při vytváření a přidávání barevných motivů do textu. Je to expresivní API a jeho výkon je vynikající. Vnořuje styly a nemá žádné závislosti. Použití Chalk lze vidět ve fragmentu kódu níže:

import chalk from 'chalk';

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

chalk.level definuje barvy, které jsou podporovány na každé úrovni. „0“ znamená, že všechny barvy jsou zakázány, „1“ znamená základní podporu barev, „2“ znamená podporu 256 barev a „3“ znamená podporu Truecolor. Různé modifikátory stylu pro formátování textu podporované křídou jsou inverzní, skrytý, viditelný, přeškrtnutý, tučný, resetovaný, kurzíva, podtržení, překrytí, ztlumení atd.

NpKill

Npkill je nástroj, který odstraňuje staré a těžké složky modulu uzlů. Pomáhá velmi rychle odebírat moduly uzlů a uvolnit místo ve vašem systému. Byl vyvinut pomocí TypeScript, JavaScript a Go. Nemá žádné závislosti a snadno se používá. Příkaz použitý k instalaci Npkill je:

$ npm i -g npkill

Všechny moduly uzlů zadané v cestě příkazem npkill budou odstraněny. Při odstraňování modulů uzlů je však třeba být opatrný, protože je nevratné. Pokud jsou moduly jakéhokoli aktivního projektu během procesu odstraněny, soubory se poškodí a moduly uzlů se musí nainstalovat znovu.

  Jak udělat téměř každý hloupý spotřebič chytrý

fkill-cli

fkill-cli je open-source a interaktivní nástroj příkazového řádku, který zabíjí linuxové procesy a porty. Byl vyvinut pomocí Node.js. Je jednoduchý, bezplatný, bezpečný a kompatibilní s různými platformami. Funguje na Windows, Linux a macOS. Příkaz použitý k instalaci fkill-cli je:

$ npm install --global fkill-cli

K ukončení procesu je vyžadováno jméno a ID procesu. „-f“ vynutí provedení operace, zatímco příkaz „-v“ zobrazí argumenty procesu. Rozhraní fkill API bere vstupy a možnosti jako své argumenty a vrací objekt slíbení. Některé možnosti jsou force, silent, ignoreCase, tree a forceAfterTimeout.

Localtunel

Localtunnel je platforma, která umožňuje sdílení webových služeb z externího prostředí s místním prostředím počítače bez změny nastavení DNS a firewallu systému.

Požadavky jsou proxy serverem Localtunnel a jsou předány lokálně nasazenému serveru poté, co mu přiřadíte veřejně přístupnou adresu URL. Příkaz použitý k instalaci Localtunnel je následující:

$ npm install -g localtunnel

Je bezpečný a používá požadavky HTTPS. Tato rozhraní API lze použít k testování webhooků. Uživatelské rozhraní lze testovat v cloudových prohlížečích pomocí Localtunnel.

Inquirer.js

Inquirer.js je interaktivní uživatelské rozhraní příkazového řádku pro aplikace Node.js. Usnadňuje proces hledání chyb, analýzu vstupu, ověřování odpovědí a správu hierarchických výzev. Pro implementaci svých funkcionalit využívá nativní moduly ESM. Příkaz použitý k instalaci Inquirer.js je:

$ npm install --save inquirer

Mezi různé používané metody patří prompt, registerPrompt, createPromptModule atd. prompt() je funkce, která přijímá otázku a odpověď jako vstup a při vyvolání vrací příslib.

Otázka je objekt, který je hašovanou verzí hodnot souvisejících s otázkou, jako je typ, zpráva, výchozí nastavení, volby, filtr atd. Dvojice objektů klíč–hodnota odpovědi obsahuje hašovanou verzi klientských odpovědí. Klíčem je vlastnost question, zatímco hodnota může obsahovat potvrzení, vstup, číslo, rawlist atd.

http-server

http-server je statický http-server příkazového řádku. Je to jednoduché a nevyžaduje žádnou konfiguraci. Skládá se ze 2 souborů: jmenovitě index.html a 404.html. index.html je výchozí soubor, který by se vykresloval na požadavky. 404.html se vykreslí, když soubor není nalezen. Příkaz použitý k instalaci http-serveru je uveden níže:

$ npm install --global http-server

Byl vyvinut pomocí HTML a JavaScriptu. Zajišťuje bezpečnost pomocí TLS/SSL certifikátů. Pro šifrování a dešifrování klíčů používá algoritmus RSA. Umožňuje také definovat přístupovou frázi spolu se soukromým klíčem pro účely zabezpečení.

Závěrečná slova

JavaScript je nejrozšířenějším programovacím jazykem pro vývoj softwaru. Aby se vývojářům usnadnil život, byly vyvinuty různé balíčky Node.js.

Balíčky Node.js jako Retire.js, Localtunnel, Xo, Inquirer.js, Shelljs, fpkill, NodeJsScan, Prettier atd. lze použít pro formátování kódu, zajištění bezpečnosti, zvýraznění změn kódu, odstranění těžkých a nechtěných modulů uzlů atd. To pomáhá vývojářům efektivně ladit, psát a spravovat jejich kód.

Můžete si také přečíst o tom, jak nainstalovat Node.js a NPM na Windows a macOS.