Package category
CLI tools and terminal utilities
Build command-line programs: argument parsing, prompts, colours, spinners.
1,738 packages19 comparisons
Packages compared
1,738 packages
| Package | Weekly downloads | 12-month change | 52 weeks | Gzip | Last release | Module | Types | Categories |
|---|---|---|---|---|---|---|---|---|
| ansi-styles ANSI escape codes for styling strings in the terminal | 536.6m | +36% | - | 1 month ago 7.0.0 | ESM only | Bundled | CLI tools and terminal utilities, Logging | |
| supports-color Detect whether a terminal supports color | 425m | +39% | - | 1 month ago 11.0.0 | ESM only | Bundled | CLI tools and terminal utilities | |
| chalk Terminal string styling done right | 411.5m | +34% | - | 1 month ago 6.0.0 | ESM only | Bundled | CLI tools and terminal utilities, Logging | |
| strip-ansi Strip ANSI escape codes from a string | 397m | +51% | - | 6 months ago 7.2.0 | ESM only | Bundled | CLI tools and terminal utilities, Logging | |
| ansi-regex Regular expression for matching ANSI escape codes | 377.3m | +49% | - | 1 month ago 6.3.0 | ESM only | Bundled | CLI tools and terminal utilities | |
| commander the complete solution for node.js command-line programs | 375.2m | +94% | - | 3 months ago 15.0.0 | ESM only | Bundled | CLI tools and terminal utilities | |
| string-width Get the visual width of a string - the number of columns required to display it | 374.9m | +63% | - | today 8.3.0 | ESM only | Bundled | CLI tools and terminal utilities | |
| wrap-ansi Wordwrap a string with ANSI escape codes | 316.8m | +62% | - | 4 days ago 10.0.2 | ESM only | Bundled | CLI tools and terminal utilities, Logging | |
| color-convert Plain color conversion functions | 287.1m | +42% | - | 10 months ago 3.1.3 | ESM only | Bundled | CLI tools and terminal utilities | |
| has-flag Check if argv has a specific flag | 274.9m | +25% | - | 5 years ago 5.0.1 | ESM only | None | CLI tools and terminal utilities | |
| argparse CLI arguments parser. Native port of python's argparse. | 197.9m | +78% | - | 14 days ago 3.0.2 | CommonJS | Bundled | CLI tools and terminal utilities | |
| yargs yargs the modern, pirate-themed, successor to optimist. | 194.7m | +78% | - | 4 days ago 18.2.0 | ESM only | Bundled | CLI tools and terminal utilities | |
| yargs-parser the mighty option parser used by yargs | 193.6m | +64% | - | 1 year ago 22.0.0 | ESM only | None | CLI tools and terminal utilities | |
| cliui easily create complex multi-column command-line-interfaces | 179.7m | +79% | - | 1 year ago 9.0.1 | ESM only | None | CLI tools and terminal utilities | |
| picocolors The tiniest and the fastest library for terminal output formatting with ANSI colors | 179.4m | +116% | - | 1 year ago 1.1.1 | CommonJS | Bundled | CLI tools and terminal utilities | |
| rimraf A deep deletion module for node (like `rm -rf`) | 124.6m | +38% | - | 7 months ago 6.1.3 | ESM + CommonJS | Bundled | CLI tools and terminal utilities, Files and file systems | |
| optionator option parsing and help generation | 115.5m | +87% | - | 2 years ago 0.9.4 | CommonJS | None | CLI tools and terminal utilities | |
| npm-run-path Get your PATH prepended with locally installed binaries | 113.1m | +53% | - | 2 years ago 6.0.0 | ESM only | Bundled | CLI tools and terminal utilities | |
| word-wrap Wrap words to a specified length. | 103.4m | +124% | - | 3 years ago 1.2.5 | CommonJS | Bundled | CLI tools and terminal utilities | |
| is-wsl Check if the process is running inside Windows Subsystem for Linux (Bash on Windows) | 101.3m | +100% | - | 7 months ago 3.1.1 | ESM only | Bundled | CLI tools and terminal utilities | |
| ansi-escapes ANSI escape codes for manipulating the terminal | 95m | +45% | - | 7 months ago 7.3.0 | ESM only | Bundled | CLI tools and terminal utilities, Logging | |
| cli-cursor Toggle the CLI cursor | 89.7m | +72% | - | 2 years ago 5.0.0 | ESM only | Bundled | CLI tools and terminal utilities | |
| restore-cursor Gracefully restore the CLI cursor on exit | 89.7m | +72% | - | 2 years ago 5.1.0 | ESM only | Bundled | CLI tools and terminal utilities | |
| slice-ansi Slice a string with ANSI escape codes | 84.5m | +55% | - | 6 days ago 9.0.1 | ESM only | Bundled | CLI tools and terminal utilities, Logging | |
| is-unicode-supported Detect whether the terminal supports Unicode | 81.7m | +77% | - | 2 years ago 2.1.0 | ESM only | Bundled | CLI tools and terminal utilities | |
| jackspeak A very strict and proper argument parser. | 81.1m | +48% | - | 7 months ago 4.2.3 | ESM + CommonJS | Bundled | CLI tools and terminal utilities | |
| kleur The fastest Node.js library for formatting terminal text with ANSI colors~! | 76.6m | +107% | - | 4 years ago 4.1.5 | ESM + CommonJS | Bundled | CLI tools and terminal utilities | |
| log-symbols Colored symbols for various log levels. Example: `✔︎ Success` | 76.2m | +78% | - | 1 year ago 7.0.1 | ESM only | Bundled | Logging, CLI tools and terminal utilities | |
| arg Unopinionated, no-frills CLI argument parser | 75.4m | +68% | - | 4 years ago 5.0.2 | CommonJS | Bundled | CLI tools and terminal utilities | |
| @isaacs/cliui easily create complex multi-column command-line-interfaces | 73.2m | +89% | - | 7 months ago 9.0.0 | ESM + CommonJS | Bundled | CLI tools and terminal utilities | |
| ora Elegant terminal spinner | 65.1m | +89% | - | 3 months ago 9.4.1 | ESM only | Bundled | CLI tools and terminal utilities | |
| tsx TypeScript Execute (tsx): Node.js enhanced with esbuild to run TypeScript & ESM files | 63.8m | +417% | - | 5 days ago 4.23.15 | ESM + CommonJS | Bundled | TypeScript tooling, CLI tools and terminal utilities | |
| figures Unicode symbols with fallbacks for older terminals | 59.9m | +52% | - | 2 years ago 6.1.0 | ESM only | Bundled | CLI tools and terminal utilities | |
| colorette 🌈Easily set your terminal text color & styles. | 57.7m | +47% | - | 3 years ago 2.0.20 | ESM + CommonJS | Bundled | CLI tools and terminal utilities | |
| fast-xml-parser Validate XML, Parse XML, Build XML without C/C++ based libraries | 56.7m | +56% | - | 29 days ago 5.11.1 | ESM + CommonJS | Bundled | CLI tools and terminal utilities | |
| cli-spinners Spinners for use in the terminal | 56.3m | +77% | - | 8 months ago 3.4.0 | ESM only | Bundled | CLI tools and terminal utilities | |
| sisteransi ANSI escape codes for some terminal swag | 53.1m | +81% | - | 2 months ago 2.0.0 | ESM only | Bundled | CLI tools and terminal utilities | |
| is-interactive Check if stdout or stderr is interactive | 49.5m | +90% | - | 5 years ago 2.0.0 | ESM only | None | CLI tools and terminal utilities | |
| @inquirer/core Core Inquirer prompt API | 46.7m | +212% | - | 17 days ago 12.0.3 | ESM only | Bundled | CLI tools and terminal utilities | |
| prompts Lightweight, beautiful and user-friendly prompts | 46.2m | +70% | - | 4 years ago 2.4.2 | CommonJS | None | CLI tools and terminal utilities | |
| ansi-colors Easily add ANSI colors to your text and symbols in the terminal. A faster drop-in replacement for chalk, kleur and turbocolor (without the dependencies and rendering bugs). | 45.7m | +39% | - | 4 years ago 4.1.3 | CommonJS | Bundled | CLI tools and terminal utilities, Logging | |
| @colors/colors get colors in your node.js console | 44.3m | +74% | - | 18 days ago 1.6.1 | CommonJS | None | CLI tools and terminal utilities | |
| @inquirer/type Inquirer core TS types | 43.6m | +176% | - | 22 days ago 4.1.1 | ESM only | Bundled | CLI tools and terminal utilities, TypeScript tooling | |
| consola Elegant Console Wrapper | 41.8m | +156% | - | 1 year ago 3.4.2 | ESM + CommonJS | Bundled | CLI tools and terminal utilities | |
| progress Flexible ascii progress bar | 41.5m | +90% | - | 7 years ago 2.0.3 | CommonJS | None | CLI tools and terminal utilities | |
| string-length Get the real length of a string - by correctly counting astral symbols and ignoring ansi escape codes | 41.3m | +24% | - | 8 months ago 7.0.1 | ESM only | Bundled | CLI tools and terminal utilities, Strings and text | |
| set-blocking set blocking stdio and stderr ensuring that terminal output does not truncate | 39.7m | +59% | - | 10 years ago 2.0.0 | CommonJS | None | CLI tools and terminal utilities | |
| import-local Let a globally installed package use a locally installed version of itself if available | 38.5m | +14% | - | 2 years ago 3.2.0 | - | Bundled | CLI tools and terminal utilities | |
| cli-truncate Truncate a string to a specific width in the terminal | 38.4m | +50% | - | 2 months ago 6.1.1 | ESM only | Bundled | CLI tools and terminal utilities | |
| @inquirer/figures Vendored version of figures, for CJS compatibility | 37.9m | +216% | - | 22 days ago 2.0.9 | ESM only | Bundled | CLI tools and terminal utilities, TypeScript tooling |
12-month change compares the average of the last 4 weeks of downloads with the first 4 weeks of the 52-week series. Gzip size is for the whole package, as measured by Bundlephobia. "-" means the value has not been fetched.
- ansi-stylesANSI escape codes for styling strings in the terminal
- supports-colorDetect whether a terminal supports color
- chalkTerminal string styling done right
- strip-ansiStrip ANSI escape codes from a string
- ansi-regexRegular expression for matching ANSI escape codes
- commanderthe complete solution for node.js command-line programs
- string-widthGet the visual width of a string - the number of columns required to display it
- wrap-ansiWordwrap a string with ANSI escape codes
- color-convertPlain color conversion functions
- has-flagCheck if argv has a specific flag
- argparseCLI arguments parser. Native port of python's argparse.
- yargsyargs the modern, pirate-themed, successor to optimist.
- yargs-parserthe mighty option parser used by yargs
- cliuieasily create complex multi-column command-line-interfaces
- picocolorsThe tiniest and the fastest library for terminal output formatting with ANSI colors
- rimrafA deep deletion module for node (like `rm -rf`)
- optionatoroption parsing and help generation
- npm-run-pathGet your PATH prepended with locally installed binaries
- word-wrapWrap words to a specified length.
- is-wslCheck if the process is running inside Windows Subsystem for Linux (Bash on Windows)
- ansi-escapesANSI escape codes for manipulating the terminal
- cli-cursorToggle the CLI cursor
- restore-cursorGracefully restore the CLI cursor on exit
- slice-ansiSlice a string with ANSI escape codes
- is-unicode-supportedDetect whether the terminal supports Unicode
- jackspeakA very strict and proper argument parser.
- kleurThe fastest Node.js library for formatting terminal text with ANSI colors~!
- log-symbolsColored symbols for various log levels. Example: `✔︎ Success`
- argUnopinionated, no-frills CLI argument parser
- @isaacs/cliuieasily create complex multi-column command-line-interfaces
- oraElegant terminal spinner
- tsxTypeScript Execute (tsx): Node.js enhanced with esbuild to run TypeScript & ESM files
- figuresUnicode symbols with fallbacks for older terminals
- colorette🌈Easily set your terminal text color & styles.
- fast-xml-parserValidate XML, Parse XML, Build XML without C/C++ based libraries
- cli-spinnersSpinners for use in the terminal
- sisteransiANSI escape codes for some terminal swag
- is-interactiveCheck if stdout or stderr is interactive
- @inquirer/coreCore Inquirer prompt API
- promptsLightweight, beautiful and user-friendly prompts
- ansi-colorsEasily add ANSI colors to your text and symbols in the terminal. A faster drop-in replacement for chalk, kleur and turbocolor (without the dependencies and rendering bugs).
- @colors/colorsget colors in your node.js console
- @inquirer/typeInquirer core TS types
- consolaElegant Console Wrapper
- progressFlexible ascii progress bar
- string-lengthGet the real length of a string - by correctly counting astral symbols and ignoring ansi escape codes
- set-blockingset blocking stdio and stderr ensuring that terminal output does not truncate
- import-localLet a globally installed package use a locally installed version of itself if available
- cli-truncateTruncate a string to a specific width in the terminal
- @inquirer/figuresVendored version of figures, for CJS compatibility
- chalk vs yoctocolors
- yargs vs clipanion
- cli-color vs chalk
- chalk vs ansi-escapes
- yargs-parser vs clipanion
- nanocolors vs kleur
- tsx vs effect
- standard-version vs commit-and-tag-version
- yoctocolors vs chalk-animation
- markdownlint-cli2 vs markdownlint-cli
- @inquirer/core vs enquirer
- prompts vs @clack/prompts
- defuddle vs md-to-pdf
- log-update vs chalk-animation
- replace-in-file vs cpx
- yoctocolors vs cli-color
- tsx vs typed-scss-modules
- clipanion vs cleye
- effect vs typed-scss-modules