$npx skillfedfor your agent

asciimatics

A cross-platform package to replace curses (mouse/keyboard input & text colours/positioning) and create ASCII animations

Worth itPyPI User InterfacesReleased Oct 2023214.3K downloads / moApache 2.0Pure Python

Decision gist · record as of 2026-08-14

pure-Python wheel — asciimatics-1.15.0-py3-none-any.whl
v1.15.0 · released 2023-10-25 · Python >= 3.8 · 4 runtime deps: pyfiglet, Pillow, wcwidth, pywin32

Yes. Asciimatics is actively maintained, has no known vulnerabilities, installs with low friction, and is licensed permissively. It is the right choice if you need a single codebase for terminal UIs or ASCII graphics across Windows, Linux, and macOS. Not necessary if you are building web UIs or only targeting a single platform.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • Requires Python >= 3.8; on Windows without pip, pywin32 must be installed separately.
  • Low friction install with four runtime dependencies (pyfiglet, Pillow, wcwidth, pywin32).
  • Package is actively maintained with recent commits and stable production status; last release was in 2023.

License · maintenance · safety

Apache 2.0 (permissive) — Licensed under Apache 2.0 (permissive), allowing commercial and private use with minimal restrictions—suitable for most projects without legal concerns.

last release 2023-10-25 (1024 days) · last repo commit 2026-07-04 · 4,299 stars

0 known vulnerabilities (OSV.dev, 2026-08-14) · 214,298 downloads/mo, #9,421 on PyPI

Verify before relying

pip install asciimatics

from asciimatics.screen import Screen

def demo(screen):
    screen.print_at('Hello world!', 0, 0, colour=1)
    screen.refresh()

Screen.wrapper(demo)
  • Whether the package works reliably on modern Android/Termux environments beyond the Marshmallow era mentioned in the description.
  • Current state of PyPy2 support given that Python 2 support ended at v1.14.
Same gist for agents: .md · .json

What it is and what it does

Asciimatics is a cross-platform terminal UI and animation library that abstracts away platform-specific console handling. It provides low-level APIs for colored text, cursor positioning, keyboard and mouse input, and screen management, plus higher-level features like ASCII line-drawing, image-to-ASCII conversion, sprite animations, and widget-based form builders. The package works consistently across Windows, Linux, and macOS by wrapping curses on Unix-like systems and native Windows console APIs, eliminating the need to write platform-specific terminal code.

The library is built on four runtime dependencies: pyfiglet for ASCII art text rendering, Pillow for image processing, wcwidth for character width calculations, and pywin32 for Windows console access. It targets developers building terminal-based tools, retro-style animations, or interactive command-line interfaces where a unified codebase must run on multiple operating systems.

Use it for

  • Build cross-platform interactive forms and text-based UIs (buttons, text boxes, radio buttons) that work identically on Windows, Linux, and macOS.
  • Create ASCII animations and retro-style visual effects with sprites, particle systems, and color cycling.
  • Convert images (JPEG, GIF) to ASCII art for terminal display or artistic output.
  • Implement terminal applications requiring mouse and keyboard input without blocking or echoing.
  • Build terminal dashboards or monitoring tools with colored text, positioned elements, and real-time screen updates.

Worth the install?

AI-flagged interpretation of the facts on this page. Verify before relying on it.

Worth it

Yes.

Asciimatics is actively maintained, has no known vulnerabilities, installs with low friction, and is licensed permissively. It is the right choice if you need a single codebase for terminal UIs or ASCII graphics across Windows, Linux, and macOS. Not necessary if you are building web UIs or only targeting a single platform.

Install

asciimatics on PyPI

Before you install

Low friction install with four runtime dependencies (pyfiglet, Pillow, wcwidth, pywin32). Package is actively maintained with recent commits and stable production status; last release was in 2023.

Requires Python >= 3.8; on Windows without pip, pywin32 must be installed separately.

License in practice

Licensed under Apache 2.0 (permissive), allowing commercial and private use with minimal restrictions—suitable for most projects without legal concerns.

Quickstart

pip install asciimatics

from asciimatics.screen import Screen

def demo(screen):
    screen.print_at('Hello world!', 0, 0, colour=1)
    screen.refresh()

Screen.wrapper(demo)

Verify before relying

  • Whether the package works reliably on modern Android/Termux environments beyond the Marshmallow era mentioned in the description.
  • Current state of PyPy2 support given that Python 2 support ended at v1.14.

Package facts

LicenseApache 2.0 permissive
Python supportSupports the current Python release >= 3.8
Install frictionLow. Pure-Python wheel
Runtime dependencies
4 packages
pyfigletPillowwcwidthpywin32
MaintenanceActively maintained 1,024 days since the last release
Last repo commit
First released
Downloads214,298 / month, #9,421 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
Development Status :: 5 - Production/StableEnvironment :: ConsoleEnvironment :: Console :: CursesIntended Audience :: DevelopersLicense :: OSI Approved :: Apache Software LicenseOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.9Programming Language :: Python :: Implementation :: CPythonProgramming Language :: Python :: Implementation :: PyPyTopic :: Software Development :: User InterfacesTopic :: TerminalsTopic :: Text Processing :: General

Evidence: asciimatics-1.15.0-py3-none-any.whl

Tags

Capabilities
terminal ui libraryascii animationcross-platform consoletext-based user interfacecurses replacementterminal graphicskeyboard mouse input terminal
Topics
terminal-uicross-platformascii-art
PyPI keywords
asciiansiartcreditstitlesanimationcursesncurseswindowsxtermmousekeyboardterminalttycolorcolourcrossplatformconsole

Let your AI agent find packages like this

Example. Real query, live index.

You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.

wish › “ascii animation”

  • asciimaticsAsciimatics provides cross-platform terminal UI and ASCII animation…
  • spinnersProvides an enum of more than 60 pre-defined terminal spinner…
  • cowsayRenders ASCII art animals and custom characters that display text…

Give your agent the search over MCP, or paste the wish link into any chat.

More User Interfaces packages

tqdm Worth it
PyPI · Libraries · released Jul 2026

Wraps any iterable to display a real-time progress bar in the terminal or Jupyter notebook, showing iteration count, elapsed time, and estimated time remaining.

copyleftpure Python · 3.8+
648.6Mdownloads / mo
humanfriendly With conditions
PyPI · Software Development · released Sep 2021

Formats and parses numbers, file sizes, timespans, and other values into human-readable text; provides terminal interaction utilities including ANSI text styling and user prompts.

MITpure Pythonabandoned
54.3Mdownloads / mo
coloredlogs With conditions
PyPI · Software Development · released Jun 2021

Adds colored output to Python's standard logging module using ANSI escape sequences, with automatic fallback support for Windows terminals.

However, it is abandoned and receives no maintenance, so it will not adapt to future Python changes or platform updates.

MITpure Pythonabandoned
39.6Mdownloads / mo
rich-argparse Worth it
PyPI · User Interfaces · released May 2026

Formats argparse and optparse help output with rich styling, colors, and markup to improve CLI readability with minimal code changes.

MITpure Python · 3.9+
24.9Mdownloads / mo
progressbar2 Worth it
PyPI · Libraries · released Aug 2026

progressbar2 renders text-based progress bars in the terminal, handling custom widgets, concurrent bars, unknown-length progress, and clean output around logs and prints.

BSD-3-Clausepure Python · 3.10+
19.3Mdownloads / mo
inquirerpy With conditions
PyPI · Software Development · released Jun 2022

InquirerPy provides interactive command-line prompts (text input, confirmations, selections, checkboxes, fuzzy search) for building conversational CLI interfaces in Python.

However, the project is dormant (last release 2022-06-27), so adopt it only if you need its specific feature set (especially the fuzzy prompt) and can tolerate no…

MITpure Pythondormant
16.4Mdownloads / mo

See also pansi · tuipet · terminaltexteffects · climage · windows-curses · colored · jinxed · blessed · rich-pyfiglet · urwid