# sindresorhus/ora

Elegant terminal spinner

Repository: https://github.com/sindresorhus/ora
Canonical: https://ross.abutalabs.com/products/ora
Language: JavaScript
License: MIT
License Family: permissive
Last push: 2026-06-22T22:14:56+00:00

## Health v2 (maintenance only)
Score: 87/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 88, release rhythm 77, longevity 100
- inputs: {"age_days": 3835, "days_push": 72, "days_rel": 72, "gap_med": 76, "n_releases_24m": 8}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 9742, forks 292 (observed 2026-08-28T04:10:37.038226+00:00)

## What it is
Ora is a JavaScript library for rendering elegant animated spinners in the terminal, with customizable text, colors, and spinner styles. It is designed for Node.js CLI applications to indicate loading or busy states.

## Use cases
- show a loading spinner in a node.js cli tool
- display progress while a long task runs in the terminal
- add a busy indicator with custom text and colors to a command-line app
- animate a terminal spinner while fetching data
- replace console.log waiting messages with a spinner

## When to choose
- you are building a Node.js CLI and need a polished loading indicator
- you want configurable spinner styles, colors, and text updates
- you need graceful behavior in non-TTY or CI environments

## When to avoid
- you need a minimal dependency and can use yocto-spinner instead
- you need full progress bars rather than a spinner
- your project is not JavaScript/Node.js

## Facets
- artifact type: library
- maturity: stable
- function: terminal-ui, cli, developer-tools
- domain: developer-tools
- platform: cli, cross-platform
- tags: spinner, loading-indicator, progress, terminal-output, command-line, nodejs

## Member repositories
- sindresorhus/ora (main) score 87

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:10:37.038226+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-29T17:21:12.489467+00:00, confidence not recorded.
  - readme: https://github.com/sindresorhus/ora (fetched 2026-08-28T04:10:37.038226+00:00, sha 40c13c553424)
  - registry_npm: https://registry.npmjs.org/ora (fetched 2026-08-29T08:21:04.405625+00:00, sha 23da57177635)
- Data as of 2026-08-30T08:39:29.467469+00:00.
