Uporabite te knjižnice in pripomočke za ustvarjanje sodobnih programov CLI z vsemi dodatki, ki jih potrebujete.

Vmesnik ukazne vrstice (CLI) je način za interakcijo z računalniškim programom ali operacijskim sistemom z uporabo besedilnih ukazov. Orodje CLI je pomožni program, ki ga lahko zaženete iz ukazne vrstice. Orodja CLI običajno sprejemajo ukaze, ki temeljijo na besedilu, od uporabnika in izvajajo določene naloge, ki temeljijo na ukazih.

Visokokakovostna orodja CLI morajo podpirati široko paleto funkcionalnosti. Lahko razčlenijo argumente ukazne vrstice in ustvarijo pomoč pri uporabi, da zagotovijo vizualne povratne informacije, med drugimi funkcijami.

Obstaja več paketov Node.js, ki vam lahko pomagajo hitro zgraditi orodja CLI, ki ponujajo široko paleto funkcionalnosti in prilagodljivosti. Tukaj boste raziskali nekaj najboljših paketov Node.js za izdelavo orodij CLI in odkrili njihove ključne funkcije.

Commander je paket Node.js za gradnjo vmesnikov ukazne vrstice. Zagotavlja API za definiranje ukazov, možnosti in argumentov, kar olajša ustvarjanje orodij CLI.

instagram viewer

Commander poskrbi za razčlenjevanje argumentov v možnosti in argumente ukazne vrstice. Poleg tega prikaže napake za težave in neprepoznane možnosti ter samodejno ustvari pomoč za uporabo (dokumentacija CLI).

Če želite namestiti Commander kot odvisnost, zaženite ta ukaz:

npm namestite poveljnik

Tu je primer uporabe Commanderja v aplikaciji Node.js:

// index.js
konst {Ukaz} = zahtevati("poveljnik");

// ustvarjanje primerka ukaza
konst program = novo Ukaz();

// orodje za ustvarjanje
program
.name("Math-util")
.opis("Orodje CLI za izvajanje preprostih matematičnih funkcij")
.različica("1.0.0");

// dodajanje ukaza
program
.ukaz("dodaj")
.opis("Dodaj dve številki")
.prepir("", "prva številka")
.prepir("", "druga številka")
.dejanje((a, b) => {
konzola.log(parseInt(a) + parseInt(b));
});

program.razčleniti();

Zgornji primer je orodje CLI za izvajanje preprostih matematičnih funkcij. Zgornji blok kode je implementiral funkcijo »dodaj« za orodje CLI z uporabo metod iz commander.js.

Zgornje orodje CLI lahko uporabite tako, da v terminalu zaženete ta ukaz:

indeks vozlišča dodaj 2 2

Ogledate si lahko tudi samodejno ustvarjeno pomoč za orodje CLI, tako da zaženete ta ukaz:

vozlišče cli -h

S paketom Commander.js lahko s preprostimi ukazi zgradite popolnoma opremljena in funkcionalna orodja CLI z dokumentacijo.

Inquirer.js je paket Node.js za gradnjo interaktivnih uporabniških vmesnikov ukazne vrstice. Zagotavlja nabor komponent uporabniškega vmesnika, kot so pozivi, seznami in potrditvena polja, kar olajša izdelavo orodij CLI, ki lahko komunicirajo z uporabnikom.

Če želite namestiti Inquirer kot odvisnost, zaženite ta ukaz:

npm namestite spraševalec

Tu je primer uporabe Inquirer.js:

// index.js
uvoz spraševalec od"spraševalec";

spraševalec
.prompt([
{
vrsta: "vnos",
ime: "ime",
sporočilo: "Kako ti je ime?",
},
])
.potem((odgovori) => {
konzola.log(`Pozdravljeni ${answers.name}`);
});

Ta primer uporablja Inquirer.js za prevzem uporabniškega vnosa s terminala in beleženje sporočila, ki uporabnika pozdravlja.

Inquirer.js ne podpira CommonJS modulski sistem. Uporabiti morate sistem modulov ES6 ali spremeniti paket na različico 8.0.0.

Inquirer.js ponuja številne možnosti prilagajanja za pozive, vključno z izbirami, preverjanjem veljavnosti in privzetimi vrednostmi, zaradi česar je idealen za izdelavo interaktivnih orodij CLI, ki lahko komunicirajo z uporabnikom.

Chalk je paket Node.js, ki omogoča preprost način za dodajanje barv izhodu terminala, kar olajša ustvarjanje berljivih in privlačnih orodij CLI.

Zagotavlja veliko prilagodljivost pri določanju barv in slogov za besedilo. Vendar Chalk ne morete uporabljati ločeno za izdelavo orodij CLI; uporabljati ga morate s paketi, kot sta Commander in Inquirer.js.

Če želite Chalk namestiti kot odvisnost, zaženite ta ukaz:

npm namestite kreda

Tukaj je primer, kako uporabiti Chalk za dodajanje barv izpisu konzole:

uvoz kreda od"kreda";

konzola.log (kreda.modra("Pozdravljen, svet!"));
konzola.log(kreda.rdeča.krepko("Opozorilo"));
konzola.log(kreda.bela.ležeče("uspeh"));

konzola.log(
kreda.rumena.bgBlue("tobesediloimaarumenaospredjeinmodraozadje")
);

Kreda ponuja številne druge metode za definiranje barv in slogov, vključno z podčrtaj, prečrtano, različni odtenki barv ozadja in še veliko več.

Chalk ne podpira sistema modulov CommonJS. Uporabiti morate sistem modulov ES6 ali spremeniti paket na različico 4.0.0.

Chalk je odličen paket, ki naredi vaša orodja CLI vizualno privlačnejša in berljivejša. Poleg tega ga lahko preprosto integrirate v svojo obstoječo kodo brez zapletene konfiguracije.

Node Spinner je paket Node.js, ki omogoča preprost način za prikaz vrtljive animacije v orodjih CLI. S tem paketom lahko nakažete, da je v teku dolgotrajen proces, in uporabniku daste vizualni znak, da orodje še vedno deluje.

Če želite namestiti Node Spinner kot odvisnost, zaženite ta ukaz:

npm namestite vrtavka cli

Tukaj je primer, kako uporabiti Node Spinner za prikaz vrtljive animacije:

konst Spinner = zahtevati("cli-spinner").Spinner;

konst vrtavka = novo Spinner ("obravnavati... %s");
spinner.setSpinnerString("|/-\\\\");
vrtavka.začeti();

setTimeout(() => {
spinner.text = "Naloga opravljena.";

setTimeout(() => {
vrtavka.ustavi se();
}, 500);
}, 5000);

Ta koda uporablja knjižnico za prikaz vrtilnika, dokler se proces ne konča. Koda posnema operacijo, ki traja 5 sekund z uporabo setTimeout. Ob koncu časa spremeni prikazano besedilo iz »processing...« v »Task completed«. in ustavi vrtavko 0,5 sekunde kasneje.

Node Spinner ponuja vrsto možnosti prilagajanja, kot je spreminjanje slogov vrtilnika in besedila. Podpira tudi več vrtavk, kar vam omogoča prikaz različnih animacij za različne dele vašega orodja CLI.

Figlet je paket Node.js, ki omogoča preprost način za ustvarite ASCII art iz besedila.

Če želite namestiti figlet kot odvisnost, zaženite ta ukaz:

npm namestite figlet

Tukaj je primer, kako uporabiti figlet za ustvarjanje slike ASCII:

konst figlet = zahtevati("figlet");

figlet("Pozdravljen, svet!!", (napaka, podatki) => {
če (napaka) {
konzola.log("Oprostite, nekaj je šlo narobe");
konzola.dir (napaka);
vrnitev;
}

konzola.log (podatki);
});

Zgornji primer ustvari umetnost ASCII z nizom "Hello World!!" z uporabo Figlet in ga prijavi v konzolo.

Izvajanje tega primera bi moralo ustvariti naslednje rezultate:

Figlet ponuja številne sloge pisav, s katerimi lahko prilagodite videz svoje slike ASCII. Slog pisave lahko določite tako, da predmetu možnosti posredujete figlet funkcijo.

Na primer:

figlet("Pozdravljen, svet!!", { pisava: "Zvonec" }, (napaka, podatki) => {})

Uporaba Figleta v vašem orodju CLI doda vizualno zanimivost vašim orodjem in jih naredi bolj privlačna za vaše uporabnike.

Ko izbirate pakete za svoje orodje CLI, morate upoštevati svoje potrebe in izbrati pakete, ki zagotavljajo funkcionalnost, slog in združljivost, ki jim ustrezajo.

Ekosistem Node.js ponuja različne pakete, ki lahko razčlenijo argumente ukazne vrstice, ustvarijo uporabniški vmesnik ukazne vrstice, prikažejo stilizirano besedilo in še veliko več. Izkoriščanje pravilne mešanice vam bo omogočilo ustvarjanje orodij CLI, ki so zelo funkcionalna in uporabniku prijazna.