3 Topp Node.js-pakkeforvaltere for Linux


Node.js er et av de mest populære programmeringsspråkene som rocker programvareutviklingsindustrien i verden. Mens de utvikler og bruker Node.js-applikasjoner, er en vanlig programvare som utviklere og generelle brukere alltid vil stole på, en pakkebehandling.

En Node.js-pakkebehandling samhandler med online pakkelager (som inneholder Node.js-biblioteker, applikasjoner og relaterte pakker) og hjelper på mange måter, inkludert pakkeinstallasjon og avhengighetsbehandling. Noen pakkeledere har også prosjektledelseskomponenter.

Hvis du for eksempel skriver en nettapplikasjon og innser at et gratis eksternt bibliotek som implementerer en gitt funksjonalitet i applikasjonen din allerede eksisterer i et offentlig depot, kan du bruke en pakkebehandling til å installere det på systemet i applikasjonskatalogen og integrere det med søknaden din.

Pakkebehandlingen hjelper også med å spesifisere biblioteket som en avhengighet for applikasjonen din, slik at ethvert system der applikasjonen er installert, vil biblioteket også bli installert for at applikasjonen skal fungere skikkelig.

I denne artikkelen vil vi gjennomgå de beste Node.js-pakkebehandlerne som du kan installere på et Linux-system.

1. NPM – Node.js Package Manager

npm trenger ingen introduksjon i Node.js-økosystemet. Men hva er npm? npm er en kombinasjon av mange ting egentlig - det er en Node-pakkebehandling, npm Registry og npm kommandolinjeklient.

For det første er npm en Node.js-pakkebehandler på tvers av plattformer som ble utviklet for å hjelpe JavaScript-utviklere til enkelt å dele koden sin i form av pakker. For å installere og publisere pakker bruker utviklere en kommandolinjeklient kalt npm, som også brukes til versjonsadministrasjon og avhengighetsbehandling. Den kjører på Linux og andre UNIX-lignende systemer, Windows og macOS.

I tillegg er npm også et trygt online depot for publisering av åpen kildekode Node.js-prosjekter som biblioteker og applikasjoner. Det er et av de mest populære og største programvareregistrene for åpen kildekode på nettet. Du kan bruke det gratis, et alternativ som lar deg lage offentlige pakker, publisere oppdateringer, revidere avhengighetene dine og gjøre mer.

Alternativt kan du registrere deg for npm Pro for å nyte en førsteklasses utviklingsopplevelse som kommer med mange fordeler, for eksempel private repositories. Store utviklingsteam som jobber med forretningskritiske prosjekter kan velge npm Enterprise som lar dem utvikle pakker internt som ikke deles offentlig.

npm-kommandolinjeklienten distribueres med Node.js-pakken, dette betyr at når du installerer Node.js på Linux-systemet ditt, vil du også automatisk få installert npm. Interessant nok brukes npm til å installere alle de andre Node.js-pakkebehandlerne beskrevet nedenfor.

npm støtter også JavaScript-sikkerhet, og integrerer npm med tredjepartsverktøy, for eksempel CI/CD (Continuous Integration/Continuous Delivery)-systemer og mye mer.

For å installere den nyeste versjonen av Node.js og NPM på Linux-systemer, følg kommandoene på din respektive Linux-distribusjon.

$ curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash -
$ sudo apt-get install -y nodejs
# curl -sL https://rpm.nodesource.com/setup_14.x | bash -
# yum -y install nodejs
Or
# dnf -y install nodejs

2. Garn – Node.js Package Manager

Ikke bare er Yarn en rask, sikker, pålitelig og åpen kildekode-pakkeleder, men den er også en prosjektleder for stabile og reproduserbare prosjekter. Garn fungerer overalt: på Linux, Windows og macOS, og andre UNIX-lignende operativsystemer som støtter Node.js.

Som pakkebehandler lar den deg dele koden din gjennom en pakke med andre utviklere over hele verden. På samme måte kan du også bruke kode fra andre utviklere i applikasjonen din.

Yarn støtter arbeidsområder for små, mellomstore til store monorepo-prosjekter ved å gjøre det mulig for deg å dele opp prosjektet ditt i underkomponenter lagret i ett enkelt depot. En annen nøkkelfunksjon i Yarn er offline-cachen som lar den fungere fint selv når nettverket er nede.

Garn leveres også med en modulær API som kan utvides gjennom plugins. Du kan bruke offisielle plugins eller skrive dine egne. Plugins kan brukes til å legge til nye funksjoner, nye resolvere, nye linkere, nye kommandoer, registrere til enkelte hendelser, og kan integreres med hverandre. I tillegg har den en Plug'n'Play (PnP) API som lar deg introspektere avhengighetstreet under kjøring.

Videre er Yarn også godt dokumentert, og noen av funksjonene er fortsatt i inkubasjon som begrensninger, utgivelsesarbeidsflyt og «nullinstallasjon» som er mer en filosofi enn en funksjon.

For å installere den nyeste versjonen av Yarn på Linux-systemer, må du først installere Node.js på systemet, og deretter installere Yarn ved å bruke følgende kommandoer på din respektive Linux-distribusjon.

$ curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
$ echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
$ sudo apt update
$ sudo apt install yarn
# curl --silent --location https://dl.yarnpkg.com/rpm/yarn.repo | sudo tee /etc/yum.repos.d/yarn.repo
# rpm --import https://dl.yarnpkg.com/rpm/pubkey.gpg
# yum install yarn
OR
# dnf install yarn

3. Pnpm – Node.js Package Manager

pnpm er en rask, diskplasseffektiv og åpen kildekode-pakkebehandling. Det er på tvers av plattformer, det fungerer på Linux, Windows og macOS. I motsetning til npm og garn som lager flat node_modules-katalog, fungerer pnpm litt annerledes: den lager et ikke-flat node_modules-oppsett som bruker symbolske lenker for å lage en nestet struktur av avhengigheter.

Filene i node_modules er koblet fra enkelt innholdsadresserbar lagring. Denne tilnærmingen er effektiv at den lar deg spare gigabyte diskplass.

Den ikke-flate node_modules-tilnærmingen gjør også pnpm streng når det kommer til avhengighetsstyring, den lar en pakke kun få tilgang til avhengigheter spesifisert i filen package.json. Den har også innebygd støtte for arbeidsområder, noe som betyr at du kan lage et arbeidsområde for å forene flere prosjekter i et enkelt depot.

Viktigere er at pnpm enkelt kan brukes i forskjellige CI-applikasjoner som Travis, Semaphore, AppVeypr og Sail CI. Og du kan konfigurere prosjektet ditt slik at andre brukere bare kan bruke pnpm, men ikke de andre Node.js-pakkebehandlerne ovenfor, for eksempel når noen prøver å kjøre \npm install eller \yarn install.

pnpm støtter også aliaser som lar deg installere pakker med egendefinerte navn, kommandolinjefanefullføring og bruker en låsefil kalt pnpm-lock.yaml.

Den enkleste måten å installere pnpm på er ved å bruke npm-pakkebehandling som vist.

$ sudo npm install -g pnpm
# npm install -g pnpm

I denne artikkelen har vi gjennomgått de beste Node.js-pakkebehandlerne du kan installere i Linux. Vi vil gjerne vite tankene dine om denne artikkelen, del dem med oss via tilbakemeldingsskjemaet nedenfor.