Proiectul Node Package Manager este, pe lângă utilitarul care descarcă și rezolvă calea către pachetele unui proiect Javascript, și registrul care găzduiește aceste pachete. Și deși avem câteva alternative viabile la npm ca și dependency manager, cum ar fi yarn1, pnmp, deno sau bun2, la capitolul registru de pachete NPM nu are competitor. Desigur, faptul că npm vine ca în bundle-ul de instalare nodejs, și devreme ce npm folosește npmjs implicit ca și registru, această strânsă legătură între cele două proiecte le-a făcut aproape inseparabile. Din păcate din lipsa competiției, ducem lipsa și de inovație pe acest front - ultimul update seminificativ pe care l-a primit a fost suportul pentru provenineță de acum 7 luni3.
Din fericire asta e pe cale să se schimbe, și, cel puțin până acum avem anunțați doi competitori la registrul de pachete:
JSR
Creat de echipa din spatele proiectului Deno și totodată de Ryan Dahl, creatorul nodejs, acest ecosistem (package manager și registry), își propune să rezolve multe dintre dificultățile de a publica pachete Typescript cu npm. Așadar oferă suport nativ pentru acest limbaj: va genera automat documentații și definițiile de tipuri - fișierele d.ts și desigur pote fi folosit cu pachete în Javascript în locul NPM.
Din păcate pentru unii dar din fericire pentru alții care nu depind de librării cu CommonJS sau versiuni vechi de Node
, JSR va suporta doar module standard EcmaScript (ESM), care sunt deja standard4.
O altă notă importantă este generarea definițiilor pentru tipuri, care este un proces ce consumă resurse. JSR va genera definiții doar pentru acele tipuri definite explicit. ”Slow types” vor fi înlocuite cu any iar documentația generată s-ar putea să le omită5.
VLT (Volt)
Despre acest proiect avem mai puține detalii, dar unul important de menționat este că a fost anunțat de către creatorul NPM - Isaac Z. Schlueter6. Iar unul dintre articolele pe care le-am găsit pe blogul proiectului descrie bug-ul numit manifest confusion, pe care dacă ești pasionat sau responsabil de securitate ți-l recomand: The massive bug at the heart of the npm ecosystem.
Așadar se pare că acest proiect va pune un accent mai mare pe securitatea pachetelor și ecosistemului ceea ce este un lucru bun.