03/29/2024

19 pachete Node.js pe care trebuie să le cunoașteți în calitate de dezvoltator JavaScript pentru o viață productivă și ușoară

Petreci prea mult timp încercând să creezi cod JavaScript? Citiți mai departe pentru a afla diferitele pachete Node.js care ar putea face viața unui dezvoltator JavaScript productivă și ușoară.

JavaScript este un limbaj sincron cu un singur thread. Este cel mai utilizat limbaj de programare pentru dezvoltarea de software și aplicații. Multe cadre precum Reactjs, Angularjs, Vuejs, Expressjs și Node.js au fost dezvoltate cu limbajul lor de bază, JavaScript.

Mulți dezvoltatori se confruntă cu probleme în timpul codificării în JavaScript din cauza diferitelor concepte complexe, cum ar fi promisiuni, bucle de evenimente, apeluri inverse, ridicare, închideri etc.

Pentru a ușura dezvoltarea în JavaScript, sunt disponibile multe pachete Node.js care ajută la tratarea erorilor, formatarea codului, ștergerea fișierelor, codul de depanare, asigurarea securității etc. Unele oferă, de asemenea, interfețe de utilizator interactive pentru linia de comandă pentru reprezentări vizuale mai bune ale puterii CPU, capacitatea de procesare, gravitatea erorilor etc.

Retire.js

Retire.js este o bibliotecă Javascript care oferă o listă de vulnerabilități asociate cu alte versiuni ale bibliotecii Javascript.

Poate fi folosit ca extensie Chrome, extensie Firefox, scaner de linie de comandă, Plugin Grunt etc. Poate fi instalat folosind următoarea comandă:

$ npm install -g retire

Retire.js are diverse comenzi pentru a scana fișiere JavaScript și nod. Scanează site-urile web JavaScript și înregistrează avertismentele în consola dezvoltatorului. Retire.js generează codul de ieșire 13 când găsește vulnerabilități. Sarcina Gulp scanează automat fișierele și raportează vulnerabilitățile.

Np

Np este un pachet JavaScript care oferă diverse caracteristici, cum ar fi curățarea codului, instalarea dependențelor, publicarea pachetelor și a etichetelor etc. Se asigură că codul este împins în ramura principală și oferă o interfață interactivă.

Autentificarea cu doi factori este utilizată pentru a asigura securitatea noilor depozite. Se asigură că se lucrează la cea mai recentă versiune prin reinstalarea dependențelor. Cea mai recentă versiune este împinsă la npm. Poate fi instalat folosind următoarea comandă:

$ npm install --global np

Diferitele sale caracteristici includ publicarea codului din orice ramură, crearea de subdirectoare pentru publicare, omiterea curățării codului și a testării, etc. Configurarea np poate fi făcută global și local prin steaguri CLI în fișierele de configurare ale np, cum ar fi np-config.js și nu -config.json.

ESLint

ESLint este un instrument de pachet JavaScript care analizează JavaScript și identifică modele în codul ECMA/JavaScript. Evaluează modelele din cod folosind AST. Toate regulile instrumentului sunt definite sub formă de pluginuri și pot fi adăugate dinamic în timpul rulării. ESLint poate fi instalat folosind comanda de mai jos:

$ npm init @eslint/config

După instalarea acestuia folosind comanda de mai sus, se generează un fișier .eslintrc cu un set de reguli cu definiții de eroare și condițiile respective. ESLint permite ca toate dependențele să fie definite în fișierul .lock al utilizatorului și nu folosește un fișier .lock propriu. De asemenea, este foarte sigur.

Shelljs

Shelljs este un mediu în care comenzile UNIX pot fi executate pe orice sistem de operare prin API-ul Node.js. Shelljs este portabil și acceptă și pluginuri terțe. Diferitele comenzi care pot fi folosite sunt echo, exec, chmod, pushd, popd, cd, cat, etc. Următoarea comandă poate fi folosită pentru a instala Shelljs.

$ npm install [-g] shelljs

A fost testat în diverse proiecte precum Firefox, JSHint, ESLint, Zepto etc. Importul local al pachetelor Shelljs este preferat în detrimentul importurilor globale. De asemenea, poate fi configurat ca silentios, fatal, verbose etc.

  Cum se instalează suita de securitate Bro pe Ubuntu Server

Omletă

Omelette oferă un șablon pentru completarea automată a codului pentru proiectele Node și Deno. Folosește API-ul super ușor și acceptă și API-ul Async și API-ul Tree. Un fragment de cod exemplu pentru implementarea Omelette este prezentat mai jos:

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

După importarea Omelette, trebuie creat un obiect Omelette. Apoi, diferite funcții pentru completarea automată a codului, cum ar fi setupShellInitFile() pentru configurare, cleanupShellInitFile() pentru curățare pot fi apelate pe obiectul omletă pentru completarea automată a codului. De asemenea, acceptă utilizarea funcțiilor Lambda pentru crearea de API-uri literale de șablon complexe.

Mai frumos

Prettier este folosit pentru formatarea codului. Ajută la oferirea de spații de file, ține evidența conținutului maxim într-o singură linie și asigură indentarea corespunzătoare în instrucțiunile condiționale și bucle. Convertește codul într-un format clar și ușor de citit. De exemplu:

Fragmentul de cod este dat mai jos,

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

este convertit în cel de mai jos atunci când este utilizată extensia Prettier:

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

Poate rula în medii CI, medii de dezvoltare integrate (IDE) etc.

jscpd

jscpd este un serviciu tehnic de gestionare a datoriilor. Este un pachet JavaScript care ajută la găsirea fragmentelor de cod duplicate în diferite coduri și documente digitale. Folosește un algoritm de potrivire a șirurilor numit Rabin-Karp pentru a găsi duplicarea codurilor.

jscpd/core are capacitatea de a detecta duplicarea codului în diferite medii, iar jspd/tokenizer este folosit pentru tokenizarea codului sursă al programului. În afară de acestea, multe alte pachete precum html-reporter, badge-reporter, leveldb-store etc. Comanda pentru instalarea jscpd este:

$ npm install -g jscpd

jscpd este folosit de GitHub Super Linter, Code-Inspector, Mega-Linter, Codacy etc. Fiecare dintre ele utilizează jscpd pentru un scop diferit. Îl folosesc pentru procesarea limbajului natural, agregatoare de linii, analiza codului etc.

Vtop

Vtop este un monitor care oferă o reprezentare grafică a activității liniei de comandă. Oferă informații despre utilizarea CPU prin analizarea diferitelor fire și procese care rulează și reprezentându-le grafic prin diagrame, vârfuri etc. A fost dezvoltat folosind JavaScript, Makefile și Shell. Comanda pentru instalarea Vtop este:

$ npm install -g vtop

Pot fi utilizate diverse teme și coduri de culoare pentru a face GUI mai atractivă conform cerințelor. Diverse comenzi rapide de la tastatură, cum ar fi „u” pentru o actualizare, „g” pentru a merge la procesul de sus a listei, „G” pentru a trece la sfârșitul listei, „dd” pentru a elimina procesele aparținând unui anumit grup etc. poate fi folosit.

Standardjs

Standardjs este o bibliotecă JavaScript care automatizează configurarea fișierelor, formatează codul și găsește rapid probleme cu gestionarea excepțiilor de către programatori. Comanda de instalare a Standardjs este dată mai jos:

$ npm install standard --global

După instalarea acestuia, îl puteți rula peste un fragment de fișier/cod folosind comanda „standard” din interfața de linie de comandă. Toate dependențele Standardjs pot fi adăugate prin definirea „standard: „*” în obiectul de dependență al fișierului package.json.

De asemenea, poate fi instalat ca un plugin pentru diverse editoare de text precum Visual Studio Code, Sublime Text, Atom, Vim, Brackets etc. Node.js, Expressjs, npm, Brave și GoDaddy folosesc Standardjs pentru a-și satisface cerințele de afaceri.

  15 cel mai bun software de arhivare a e-mailurilor de stocat pentru audituri/preluări viitoare

NodeJsScan

NodeJsScan este un scaner de cod de securitate static pentru aplicațiile Node.js. Acesta informează despre starea de securitate a unei aplicații printr-o interfață de utilizare interactivă. Poate fi integrat cu diverse aplicații precum Slack pentru alerte/notificări, alerte prin e-mail prin configurarea setărilor SMTP în fișierul settings.py al NodeJsScan, pipeline CI/CD etc. De asemenea, ajută la construirea imaginilor docker.

Înregistrează erori, informații și mesaje de avertizare. O descriere detaliată a erorii, cum ar fi motivul apariției acesteia, gravitatea acesteia, numerele de rând în care au apărut erorile, numărul de fișiere scanate și problemele găsite, etc. Graficele și diagramele sunt, de asemenea, reprezentate pentru o mai bună lizibilitate și analiză.

Gunoi

Coșul de gunoi este o bibliotecă JavaScript care mută fișierele șterse în coșul de gunoi în loc să le ștergă definitiv. Acceptă Mac, Linux și Windows. Comanda folosită pentru a instala Trash este:

$ npm install trash

Trash este un API care preia intrarea și opțiunile ca parametri ai funcției atunci când funcția trash() este invocată. Intrarea poate fi un șir sau o matrice de șiruri. Opțiunile ar putea fi un obiect. Funcția trash returnează o promisiune. Diferite comenzi sunt utilizate în diferite sisteme de operare. macOS-trash este folosit în MacOs, XDG Spec în Linux și coșul de reciclare în Windows.

Xo

Xo este un wrapper JavaScript și TypeScript care utilizează ESLint dedesubt. Ajută la crearea unui cod care poate fi citit, dând indentare codului, adăugând punct și virgulă, ghilimele simple, virgule etc., oriunde este necesar. Multe plugin-uri ESLint precum unicorn, import, ava, n etc. pot fi folosite cu Xo. Comanda folosită pentru a instala xo este:

$ npm install xo --save-dev

Problemele pot fi rezolvate automat folosind comanda $xo –fix. Xo poate fi configurat folosind proprietatea xo din fișierul package.json. Poate fi instalat ca plugin pentru diverse editori precum Vim, Visual Studio Code, Atom, Sublime Text, Emacs etc.

diff2html

diff2html înseamnă „diff parser and pretty HTML generator”. Evidențiază modificările în codul versiunii curente în comparație cu versiunea anterioară. Ajută dezvoltatorii să identifice și să înțeleagă cu ușurință ce modificări au fost făcute. Face acest lucru folosind coduri de culoare.

Face acest lucru prin evidențierea modificărilor rând cu linie și unul lângă altul. Evidențiază modificările sintaxei codului și grupează linii similare împreună pentru a urmări cu ușurință modificările codului. Comanda de instalare a diff2html este următoarea:

$ npm install diff2html

De asemenea, este integrat cu linia de comandă. Unele proiecte care folosesc diff2html sunt Jenkins, Codacy, Ungit, git-explorer, adnotare de cod etc.

Cretă

Chalk este un modul Node.js care ajută la formatarea și stilizarea codului. De asemenea, ajută la crearea și adăugarea de teme de culoare în text. Este un API expresiv, iar performanța sa este excelentă. Se cuibărește stiluri și nu are dependențe. Utilizarea Chalk poate fi văzută în fragmentul de cod de mai jos:

import chalk from 'chalk';

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

chalk.level definește culorile care sunt suportate la fiecare nivel. „0” indică faptul că toate culorile sunt dezactivate, „1” indică suportul de bază al culorilor, „2” indică suportul pentru 256 de culori, iar „3” indică suportul Truecolor. Diferiții modificatori de stil pentru formatarea textului acceptați de cretă sunt invers, ascuns, vizibil, barat, aldin, resetat, cursiv, subliniat, supraliniat, estompat etc.

NpKill

Npkill este un instrument care elimină folderele vechi și grele ale modulelor nod. Ajută la eliminarea modulelor de noduri foarte rapid și la eliberarea spațiului din sistemul dumneavoastră. A fost dezvoltat folosind TypeScript, JavaScript și Go. Nu are dependențe și este ușor de utilizat. Comanda folosită pentru a instala Npkill este:

$ npm i -g npkill

Toate modulele nod specificate în calea cu comanda npkill vor fi șterse. Cu toate acestea, trebuie să fiți atenți când ștergeți modulele nodului, deoarece este ireversibil. Dacă modulele oricărui proiect activ sunt șterse în acest proces, fișierele sunt corupte, iar modulele nodului trebuie instalate din nou.

  De ce e-mail-ul meu afișează în coadă?

fkill-cli

fkill-cli este un instrument de linie de comandă interactiv și cu sursă deschisă, care distruge procesele și porturile Linux. A fost dezvoltat folosind Node.js. Este simplu, gratuit, sigur și compatibil cu mai multe platforme. Funcționează pe Windows, Linux și macOS. Comanda folosită pentru a instala fkill-cli este:

$ npm install --global fkill-cli

Numele și ID-ul procesului sunt necesare pentru a opri procesul. „-f” forțează operația să se execute în timp ce comanda „-v” afișează argumentele procesului. API-ul fkill ia intrări și opțiuni ca argumente și returnează un obiect promis. Unele opțiuni sunt forțare, silențioasă, ignoreCase, arbore și forțareAfterTimeout.

Localtunel

Localtunnel este o platformă care permite partajarea serviciilor web dintr-un mediu extern cu mediul local al unui computer fără a modifica setările DNS și firewall ale sistemului.

Solicitările sunt trimise prin proxy de Localtunnel și sunt transmise serverului implementat local după ce i-au fost atribuite o adresă URL accesibilă public. Comanda folosită pentru a instala Localtunnel este următoarea:

$ npm install -g localtunnel

Este sigur și folosește solicitări HTTPS. Aceste API-uri pot fi folosite pentru a testa webhook-uri. Interfața de utilizare poate fi testată în browserele cloud folosind Localtunnel.

Inquirer.js

Inquirer.js este o interfață de utilizator interactivă în linie de comandă pentru aplicațiile Node.js. Ușurează procesul de găsire a erorilor, analizarea intrărilor, validarea răspunsurilor și gestionarea solicitărilor ierarhice. Folosește module ESM native pentru implementarea funcționalităților sale. Comanda folosită pentru a instala Inquirer.js este:

$ npm install --save inquirer

Diverse metode utilizate includ prompt, registerPrompt, createPromptModule etc. prompt() este o funcție care ia întrebări și răspuns ca intrări și returnează o promisiune atunci când este invocată.

Întrebarea este un obiect care este o versiune hashing a valorilor legate de întrebare, cum ar fi tipul, mesajul, implicit, opțiunile, filtrul etc. Perechea de obiecte cheie-valoare răspuns conține versiunea hashing a răspunsurilor clientului. Cheia este proprietatea întrebării, în timp ce valoarea poate conține confirmare, introducere, număr, listă brută etc.

serverul http

http-server este un server http static în linie de comandă. Este simplu și nu necesită configurații. Este format din 2 fișiere: și anume, index.html și 404.html. index.html este fișierul implicit care ar fi redat la solicitări. 404.html este redat atunci când un fișier nu este găsit. Comanda folosită pentru a instala http-server este așa cum se arată mai jos:

$ npm install --global http-server

A fost dezvoltat folosind HTML și JavaScript. Asigura securitatea prin certificate TLS/SSL. Utilizează algoritmul RSA pentru criptarea și decriptarea cheilor. De asemenea, permite definirea unei fraze de acces împreună cu o cheie privată din motive de securitate.

Cuvinte finale

JavaScript este cel mai utilizat limbaj de programare pentru dezvoltarea de software. Pentru a ușura viața dezvoltatorilor, au fost dezvoltate diverse pachete Node.js.

Pachetele Node.js precum Retire.js, Localtunnel, Xo, Inquirer.js, Shelljs, fpkill, NodeJsScan, Prettier etc. pot fi folosite pentru formatarea codului, asigurarea securității, evidențierea modificărilor codului, ștergerea modulelor nod grele și nedorite etc. Acest lucru îi ajută pe dezvoltatori să depaneze, să scrie și să își gestioneze codul în mod eficient.

De asemenea, puteți citi despre cum să instalați Node.js și NPM pe Windows și macOS.