skillfed

spinners

Spinners for terminals

spinners v0.0.24 1.9M downloads/30d#3,477 on PyPI247
Permissive license MIT DORMANT released

What it is and what it does

Spinners is a Python wrapper that exposes more than 60 terminal spinner animations as an enum. Each spinner entry contains frame sequences (the individual characters to display) and an interval (the millisecond delay between frames). You import the Spinners enum and access individual spinners by name to retrieve their animation data as dictionaries.

The package is intended as a data source for building terminal loading indicators—it does not render or animate spinners itself, only provides the animation definitions. It depends on enum34 for enum support.

Use it for:

  • Retrieve spinner frame data to build a custom terminal loading indicator in your CLI tool
  • Populate a progress display with pre-defined animation sequences without hardcoding frame strings
  • Access standardized spinner definitions across multiple projects via a shared enum
  • Prototype terminal UI elements that need animated busy indicators

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Provides an enum of more than 60 pre-defined terminal spinner animations with frame data and timing, accessible as a Python enum for building loading indicators.

Yes, if you need a curated set of terminal spinner definitions for a CLI tool and want to avoid hardcoding animation frames. The low install friction and permissive MIT license make it a lightweight addition. However, maintenance is dormant (last release 2020-02-19); if you need active support or updates to spinner definitions, evaluate alternatives first.

Install

spinners on PyPI

pip

pip install spinners

uv

uv add spinners

poetry

poetry add spinners

Installing spinners

Before you install

Low install friction with a single lightweight dependency (enum34). Maintenance is dormant—last release was 2020-02-19 and no commits since 2024-07-31—but the package is stable and has 247 repository stars.

License in practice

MIT license is permissive and imposes no restrictions on use, modification, or distribution in your own projects.

Quickstart

from spinners import Spinners

print(Spinners.line.value)
# Output: {'frames': ['-', '\\', '|', '/'], 'interval': 130}

Verify before relying

  • Whether enum34 is required only for Python 2 compatibility and can be skipped on Python 3.4+
  • Whether the spinner data is current with the upstream cli-spinners library or has diverged
  • Active maintenance status and likelihood of updates to spinner definitions

Package facts

License MIT (permissive)
Python support not specified
Install friction low — pure-Python wheel
Runtime dependencies 1 — enum34
Maintenance dormant — 2,368 days since the last release
Last repo commit
First released
Downloads 1,867,368/month — #3,477 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: spinners-0.0.24-py3-none-any.whl

Keywords: cli, spinner, spinners, terminal, term, console, ascii, unicode, loading, indicator, progress, busy, wait, idle, json

Tags

terminal spinner animationscli loading indicatorsprogress spinners enumterminal loading animationascii spinner framesconsole busy indicatorterminal wait animation
cli-uiterminal-animation

More Terminals packages