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 |
|---|---|---|---|---|---|---|---|---|
| npm-run-all A CLI tool to run multiple npm-scripts in parallel or sequential. | 3.7m | +5% | - | 7 years ago 4.1.5 | CommonJS | None | CLI tools and terminal utilities | |
| clipanion Type-safe CLI library / framework with no runtime dependencies | 3.6m | +53% | - | 2 years ago 4.0.0-rc.4 | ESM + CommonJS | Bundled | CLI tools and terminal utilities, TypeScript tooling | |
| piccolore A tiny, zero-dependency library for styling terminal text | 3.5m | - | - | 10 months ago 0.1.3 | ESM only | None | CLI tools and terminal utilities | |
| optimist Light-weight option parsing with an argv hash. No optstrings attached. | 3.5m | -9% | - | 12 years ago 0.6.1 | CommonJS | None | CLI tools and terminal utilities | |
| @listr2/prompt-adapter-inquirer Listr2 prompt adapter for inquirer. | 3.5m | +61% | - | 23 days ago 4.2.7 | ESM + CommonJS | Bundled | CLI tools and terminal utilities | |
| cli-table Pretty unicode tables for the CLI | 3.5m | +25% | - | 4 years ago 0.3.11 | CommonJS | None | CLI tools and terminal utilities | |
| node-pty Fork pseudoterminals in Node.JS | 3.5m | +739% | - | 9 months ago 1.1.0 | CommonJS | Bundled | CLI tools and terminal utilities | |
| getopts Parse CLI arguments. | 3.5m | +78% | - | 5 years ago 2.3.0 | ESM + CommonJS | Bundled | CLI tools and terminal utilities | |
| @xterm/xterm Full xterm terminal, in your browser | 3.4m | +637% | - | 9 months ago 6.0.0 | ESM + CommonJS | Bundled | CLI tools and terminal utilities, 3D, WebGL and game engines | |
| @angular/build Official build system for Angular | 3.3m | +52% | - | 1 day ago 22.2.0 | CommonJS | Bundled | Angular, Build tools | |
| webpack-log A logger for the Webpack ecosystem | 3.2m | -27% | - | 5 years ago 3.0.2 | CommonJS | None | Logging, Bundlers | |
| readline-sync Synchronous Readline for interactively running to have a conversation with the user via a console(TTY). | 3.2m | +73% | - | 7 years ago 1.4.10 | CommonJS | None | CLI tools and terminal utilities | |
| html-minifier Highly configurable, well-tested, JavaScript-based HTML minifier. | 3m | -9% | - | 7 years ago 4.0.0 | CommonJS | None | CLI tools and terminal utilities | |
| @ngtools/webpack Webpack plugin that AoT compiles your Angular components and modules. | 3m | -2% | - | 1 day ago 22.2.0 | CommonJS | Bundled | Angular, CLI tools and terminal utilities | |
| hyperlinker Write hyperlinks in the terminal. | 3m | +59% | - | 8 years ago 1.0.0 | CommonJS | None | CLI tools and terminal utilities | |
| liftoff Launch your command line tool with ease. | 3m | +13% | - | 1 year ago 5.0.1 | CommonJS | None | CLI tools and terminal utilities | |
| bin-version-check Check whether a binary version satisfies a semver range | 3m | +7% | - | 2 years ago 6.0.0 | ESM only | None | CLI tools and terminal utilities | |
| @angular-devkit/build-angular Angular Webpack Build Facade | 2.9m | -3% | - | 1 day ago 22.2.0 | CommonJS | Bundled | Angular, CLI tools and terminal utilities | |
| bin-version Get the version of a binary in semver format | 2.9m | +7% | - | 2 years ago 7.0.0 | ESM only | Bundled | CLI tools and terminal utilities | |
| serve Static file serving and directory listing | 2.9m | +57% | - | 6 months ago 14.2.6 | ESM only | None | Cloud SDKs, CLI tools and terminal utilities | |
| vercel The command-line interface for Vercel | 2.9m | +207% | - | today 60.0.1 | ESM only | None | CLI tools and terminal utilities, Cloud SDKs | |
| @angular-devkit/build-webpack Webpack Builder for Architect | 2.9m | -3% | - | 1 day ago 0.2202.0 | CommonJS | Bundled | Angular, CLI tools and terminal utilities | |
| terminal-size Reliably get the terminal window size (columns & rows) | 2.8m | +2682% | - | 7 months ago 4.0.1 | ESM only | Bundled | CLI tools and terminal utilities | |
| @vercel/detect-agent Detect if code is running in an AI agent or automated development environment | 2.8m | +414% | - | 1 month ago 1.2.5 | ESM + CommonJS | Bundled | CLI tools and terminal utilities | |
| password-prompt cross-platform masked or hidden prompt | 2.8m | +37% | - | 3 years ago 1.1.3 | CommonJS | None | CLI tools and terminal utilities | |
| treeify converts a JS object into a nice and readable tree structure for the console | 2.8m | +69% | - | 8 years ago 1.1.0 | CommonJS | None | CLI tools and terminal utilities | |
| sandbox-cli-detector Detect whether a CLI is running inside a sandboxed environment | 2.8m | - | - | 2 months ago 0.2.0 | ESM + CommonJS | Bundled | CLI tools and terminal utilities | |
| native-run A CLI for running apps on iOS/Android devices and simulators/emulators | 2.8m | +393% | - | 8 months ago 2.0.3 | CommonJS | None | CLI tools and terminal utilities | |
| @xterm/addon-fit An addon for [xterm.js](https://github.com/xtermjs/xterm.js) that enables fitting the terminal's dimensions to a containing element. This addon requires xterm.js v4+. | 2.7m | +808% | - | 9 months ago 0.11.0 | ESM + CommonJS | Bundled | CLI tools and terminal utilities | |
| pm2 Production process manager for Node.JS applications with a built-in load balancer. | 2.6m | +24% | - | 1 month ago 7.0.4 | CommonJS | Bundled | Monitoring and error tracking, CLI tools and terminal utilities | |
| jscpd Copy/paste detector for programming source code. Finds duplicated code in 224 languages, reports as HTML/JSON/SARIF/Markdown, fails CI over a duplication threshold. Rust engine, self-contained binary. | 2.5m | +2647% | - | 2 days ago 5.3.2 | - | None | CLI tools and terminal utilities, Linting and formatting | |
| time-stamp Get a formatted timestamp. | 2.5m | -1% | - | 7 years ago 2.2.0 | CommonJS | Bundled | Date and time, CLI tools and terminal utilities | |
| cli-color Colors, formatting and other tools for the console | 2.5m | +1% | - | 2 years ago 2.0.4 | - | None | CLI tools and terminal utilities, Logging | |
| signale 👋 Hackable console logger | 2.4m | +23% | - | 7 years ago 1.4.0 | - | None | CLI tools and terminal utilities | |
| printable-characters A little helper for handling strings containing zero width control characters, ANSI styling, whitespaces, newlines, 💩, etc. | 2.4m | +100% | - | 8 years ago 1.0.42 | CommonJS | None | CLI tools and terminal utilities | |
| argue-cli A thin and strongly typed CLI arguments parser for Node.js. | 2.4m | +1290% | - | 24 days ago 3.2.0 | ESM only | Bundled | CLI tools and terminal utilities | |
| @lydell/node-pty Smaller distribution of node-pty. | 2.4m | +616% | - | 1 month ago 1.2.0-beta.15 | CommonJS | Bundled | CLI tools and terminal utilities | |
| as-table A simple function that print objects / arrays as ASCII tables. Handles ANSI styling and weird 💩 Unicode emoji symbols – they won't break the layout. | 2.4m | +100% | - | 7 years ago 1.0.55 | CommonJS | Bundled | CLI tools and terminal utilities | |
| find-process find process info by port/pid/name etc. | 2.4m | +24% | - | 6 months ago 2.1.1 | ESM + CommonJS | Bundled | CLI tools and terminal utilities | |
| conventional-changelog Generate a changelog from git metadata. | 2.2m | +46% | - | 1 month ago 8.1.3 | ESM only | Bundled | Documentation tooling, CLI tools and terminal utilities | |
| which-command Find the absolute path to a command's executable, like the Unix `which` command | 2.2m | - | - | 2 months ago 0.1.0 | ESM only | Bundled | CLI tools and terminal utilities | |
| sandbox Command line interface for Vercel Sandbox | 2.2m | +223324% | - | 2 days ago 4.5.0 | CommonJS | None | CLI tools and terminal utilities | |
| firebase-tools Command-Line Interface for Firebase | 2.1m | +193% | - | 1 day ago 15.31.0 | CommonJS | None | Cloud SDKs, CLI tools and terminal utilities | |
| logkitty Display pretty Android and iOS logs without Android Studio or Console.app, with intuitive Command Line Interface. | 2.1m | +60% | - | 6 years ago 0.7.1 | CommonJS | None | CLI tools and terminal utilities | |
| ansi-fragments A tiny library with builders to help making logs/CLI pretty with a nice DX. | 2.1m | +51% | - | 7 years ago 0.2.1 | CommonJS | None | CLI tools and terminal utilities | |
| nanospinner The simplest and tiniest terminal spinner for Node.js | 2.1m | +259% | - | 1 year ago 1.2.2 | CommonJS | Bundled | CLI tools and terminal utilities | |
| elegant-spinner Elegant spinner for interactive CLI apps | 2.1m | +18% | - | 5 years ago 3.0.0 | ESM only | None | CLI tools and terminal utilities, Logging | |
| @earendil-works/pi-coding-agent Coding agent CLI with read, bash, edit, write tools and session management | 1.8m | - | - | 2 days ago 0.87.1 | ESM only | Bundled | CLI tools and terminal utilities | |
| update-notifier-cjs Update notifications for your CLI app, maintained in CommonJS (CJS) | 1.8m | +154% | - | 1 year ago 5.1.7 | - | None | CLI tools and terminal utilities | |
| svelte-check Svelte Code Checker Terminal Interface | 1.8m | +198% | - | 1 month ago 4.7.6 | CommonJS | None | CLI tools and terminal utilities, Svelte |
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.
- npm-run-allA CLI tool to run multiple npm-scripts in parallel or sequential.
- clipanionType-safe CLI library / framework with no runtime dependencies
- piccoloreA tiny, zero-dependency library for styling terminal text
- optimistLight-weight option parsing with an argv hash. No optstrings attached.
- @listr2/prompt-adapter-inquirerListr2 prompt adapter for inquirer.
- cli-tablePretty unicode tables for the CLI
- node-ptyFork pseudoterminals in Node.JS
- getoptsParse CLI arguments.
- @xterm/xtermFull xterm terminal, in your browser
- @angular/buildOfficial build system for Angular
- webpack-logA logger for the Webpack ecosystem
- readline-syncSynchronous Readline for interactively running to have a conversation with the user via a console(TTY).
- html-minifierHighly configurable, well-tested, JavaScript-based HTML minifier.
- @ngtools/webpackWebpack plugin that AoT compiles your Angular components and modules.
- hyperlinkerWrite hyperlinks in the terminal.
- liftoffLaunch your command line tool with ease.
- bin-version-checkCheck whether a binary version satisfies a semver range
- @angular-devkit/build-angularAngular Webpack Build Facade
- bin-versionGet the version of a binary in semver format
- serveStatic file serving and directory listing
- vercelThe command-line interface for Vercel
- @angular-devkit/build-webpackWebpack Builder for Architect
- terminal-sizeReliably get the terminal window size (columns & rows)
- @vercel/detect-agentDetect if code is running in an AI agent or automated development environment
- password-promptcross-platform masked or hidden prompt
- treeifyconverts a JS object into a nice and readable tree structure for the console
- sandbox-cli-detectorDetect whether a CLI is running inside a sandboxed environment
- native-runA CLI for running apps on iOS/Android devices and simulators/emulators
- @xterm/addon-fitAn addon for [xterm.js](https://github.com/xtermjs/xterm.js) that enables fitting the terminal's dimensions to a containing element. This addon requires xterm.js v4+.
- pm2Production process manager for Node.JS applications with a built-in load balancer.
- jscpdCopy/paste detector for programming source code. Finds duplicated code in 224 languages, reports as HTML/JSON/SARIF/Markdown, fails CI over a duplication threshold. Rust engine, self-contained binary.
- time-stampGet a formatted timestamp.
- cli-colorColors, formatting and other tools for the console
- signale👋 Hackable console logger
- printable-charactersA little helper for handling strings containing zero width control characters, ANSI styling, whitespaces, newlines, 💩, etc.
- argue-cliA thin and strongly typed CLI arguments parser for Node.js.
- @lydell/node-ptySmaller distribution of node-pty.
- as-tableA simple function that print objects / arrays as ASCII tables. Handles ANSI styling and weird 💩 Unicode emoji symbols – they won't break the layout.
- find-processfind process info by port/pid/name etc.
- conventional-changelogGenerate a changelog from git metadata.
- which-commandFind the absolute path to a command's executable, like the Unix `which` command
- sandboxCommand line interface for Vercel Sandbox
- firebase-toolsCommand-Line Interface for Firebase
- logkittyDisplay pretty Android and iOS logs without Android Studio or Console.app, with intuitive Command Line Interface.
- ansi-fragmentsA tiny library with builders to help making logs/CLI pretty with a nice DX.
- nanospinnerThe simplest and tiniest terminal spinner for Node.js
- elegant-spinnerElegant spinner for interactive CLI apps
- @earendil-works/pi-coding-agentCoding agent CLI with read, bash, edit, write tools and session management
- update-notifier-cjsUpdate notifications for your CLI app, maintained in CommonJS (CJS)
- svelte-checkSvelte Code Checker Terminal Interface
- 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