Skip to content

imjerrybao/ora

 
 

Repository files navigation

ora Build Status

Elegant terminal spinner

Install

$ npm install --save ora

Usage

const ora = require('ora');

const spinner = ora('Loading unicorns');

spinner.start();

setTimeout(() => {
	spinner.color = 'yellow';
	spinner.text = 'Loading rainbows';
}, 1000);

API

It will gracefully not do anything when there's no TTY or when in a CI.

ora([options|text])

If a string is provided, it is treated as a shortcut for options.text.

options

Type: object

text

Type: string

Text to display after the spinner.

spinner

Type: string object
Default: dots

Name of one of the provided spinners. See example.js in this repo if you want to test out different spinners.

Or an object like:

{
	interval: 80, // optional
	frames: ['-', '+', '-']
}
color

Type: string
Default: cyan
Values: black red green yellow blue magenta cyan white gray

Color of the spinner.

interval

Type: number
Default: Provided by the spinner or 100

Interval between each frame.

Spinners provide their own recommended interval, so you don't really need to specify this.

stream

Type: WritableStream
Default: process.stderr

Stream to write the output.

You could for example set this to process.stdout instead.

Instance

.start()

Start the spinner.

.stop()

Stop and clear the spinner.

.clear()

Clear the spinner.

.frame()

Get a new frame.

.render()

Manually render a new frame.

.text

Change the text.

.color

Change the spinner color.

Related

License

MIT © Sindre Sorhus

About

Elegant terminal spinner

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 100.0%