Giter Club home page Giter Club logo

ora's Introduction

ora Build Status

Elegant terminal spinner

Install

$ npm install --save ora

Usage

const ora = require('ora');

const spinner = ora('Loading unicorns').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.

enabled

Type: boolean

Force enable/disable the spinner. If not specified, the spinner will be enabled if the stream is being run inside a TTY context (not spawned or piped) and/or not in a CI environment.

Instance

.start([text])

Start the spinner. Returns the instance. Set the current text if text is provided.

.stop()

Stop and clear the spinner. Returns the instance.

.succeed([text])

Stop the spinner, change it to a green and persist the current text, or text if provided. Returns the instance. See the GIF below.

.fail([text])

Stop the spinner, change it to a red and persist the current text, or text if provided. Returns the instance. See the GIF below.

.warn([text])

Stop the spinner, change it to a yellow and persist the current text, or text if provided. Returns the instance.

.info([text])

Stop the spinner, change it to a blue and persist the current text, or text if provided. Returns the instance.

.stopAndPersist([options])

Stop the spinner and change the symbol or text. Returns the instance. See the GIF below.

options

Type: Object

symbol

Type: string
Default: ' '

Symbol to replace the spinner with.

text

Type: string
Default: Current text

Text to be persisted.

.clear()

Clear the spinner. Returns the instance.

.render()

Manually render a new frame. Returns the instance.

.frame()

Get a new frame.

.text

Change the text.

.color

Change the spinner color.

.promise(action, [options|text])

Starts a spinner for a promise. The spinner is stopped with .succeed() if the promise fulfills or with .fail() if it rejects. Returns the spinner instance.

action

Type: Promise

Related

License

MIT © Sindre Sorhus

ora's People

Contributors

guybedford avatar hoducha avatar insin avatar josmardias avatar kevva avatar kiliankoe avatar linusu avatar matheuss avatar michael-ciniawsky avatar parro-it avatar ryanthomas73 avatar samverschueren avatar sindresorhus avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.