Registry / devops / cli-step

cli-step

JSON →
library1.0.2jsnpmunverified

A Node.js module to create animated CLI step indicators similar to Yarn's output. Version 1.0.2 is the latest stable release; it has no recent updates and appears to be in maintenance mode. Key differentiators: supports emoji step indicators, records execution time, and provides a simple API for start/success/error states. It is a UI-only layer, not a task runner.

npm install cli-step
INSTALL
IMPORT
SIG · CLI-STEP
C
cli-step
devopsjavascriptv1.0.2
Install
Import
Disk
Pass rate
0/ 6
Env Coverage0 / 6
glibc
1822
musl
1822
Install & Compatibility
Where this runs
tested against v? · npm install
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
musl
node 18226 runs
build_error
glibc
node 18226 runs
build_error
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

Steps
const Steps = require('cli-step')
import Steps from 'cli-step' // ESM not supported
CJS only. Not an ES module.
Steps (ESM bundler)
import Steps from 'cli-step'
const Steps = require('cli-step').default // incorrect for this package
No default export in ESM; bundlers may shim require().
Step instance methods
const steps = new Steps(5); const step = steps.advance('text', 'emoji').start()
Steps.advance() // static method does not exist
advance() is an instance method on a Steps object.

Creates three animated CLI steps with emoji, completing each after a timeout.

const Steps = require('cli-step'); const steps = new Steps(3); const step1 = steps.advance('Resolving packages', 'mag').start(); setTimeout(() => { step1.success('Resolved', 'white_check_mark'); }, 200); const step2 = steps.advance('Fetching', 'truck').start(); setTimeout(() => { step2.success('Fetched', 'white_check_mark'); }, 400); const step3 = steps.advance('Linking', 'link').start(); setTimeout(() => { step3.success('Linked', 'white_check_mark'); }, 600);
Debug
Known issues
gotchaEmitted steps count must match Steps(totalSteps) constructor argument; if you call advance more or fewer times, no validation is performed.
fix
Ensure the total passed to Steps matches the number of advance() calls.
affects: all
deprecatedPackage last published in 2017 with no updates; modern Node.js versions may have compatibility issues.
fix
Consider using oclif/listr or other actively maintained CLI step libraries.
affects: all
gotchaEmoji names must match node-emoji's list exactly; unknown names throw no error but display as undefined.
fix
Use known emoji names from the node-emoji library.
affects: all
gotchaThe step animation uses process.stdout.write directly; it may conflict with other output libraries or piping.
fix
Avoid using with other direct stdout writing libraries simultaneously.
affects: all
gotchastartRecording/stopRecording measure wall-clock time, not CPU time; high system load may skew results.
fix
Use process.hrtime.bigint for more accurate measurements if needed.
affects: all
Errors
Common errors & fixes
ReferenceError: Steps is not defined
Missing require('cli-step')
fix
Add const Steps = require('cli-step') at the top of your file.
TypeError: Steps is not a constructor
Using import incorrectly or shadowing variable name
fix
Ensure you use const Steps = require('cli-step') and do not reassign Steps.
TypeError: step1.success is not a function
Calling success() before start()
fix
Call step.start() before step.success() or step.error().
Cannot find module 'node-emoji'
Missing dependency node-emoji
fix
Run npm install node-emoji in your project.
Upgrade
Version history
1.0.2latest on npm
Audit
Dependencies
node-emojirequiredProvides emoji lookup by string name
Agent activity
6 hits · last 30 days
node
6
Resources
cli-step — npm install cli-step · libregistry