Skip to main content

StyledConsole

Python >=3.10 License: Apache 2.0 Version Tests Coverage PyPI

A multi-interface Python library for elegant terminal output — use Python code, JSON/YAML configuration, or Jinja2 templates to create beautiful CLI experiences.

pip install styledconsole              # Core library
pip install styledconsole[yaml]        # + YAML support
pip install styledconsole[jinja]       # + Jinja2 templates
pip install styledconsole[all]         # Everything

Three Ways to Style Your Terminal

Python API (Full Power)

The complete API with builders, effects, gradients, themes, and export capabilities.

from styledconsole import Console, icons, EffectSpec

console = Console()
console.frame(
    f"{icons.CHECK_MARK_BUTTON} Build successful\n{icons.ROCKET} Deployed to production",
    title="Status",
    effect=EffectSpec.gradient("green", "cyan"),
)

JSON/YAML Configuration (No Code Required)

Perfect for config-driven UIs and non-programmers. JSON Schema available for IDE autocomplete.

from styledconsole import Console

console = Console()
console.render_dict({
    "type": "frame",
    "title": "Status",
    "content": "Build successful!",
    "effect": "success"
})

Jinja2 Templates (Dynamic Content)

Generate UIs from data with loops, conditionals, and filters.

from styledconsole import Console, render_jinja

template = """
type: frame
title: Server Status
content:
  type: group
  items:
  {% for server in servers %}
    - "{{ server.status | status_icon }} {{ server.name }}: {{ server.status }}"
  {% endfor %}
"""
obj = render_jinja(template, servers=[{"name": "API", "status": "running"}])
Console().render_object(obj)

CLI Preview Tool

Explore features without writing code:

styledconsole demo              # Interactive feature showcase
styledconsole palette           # List 90 color palettes
styledconsole effects fire      # Preview effect presets
styledconsole icons rocket      # Search 200+ icons
styledconsole render config.yaml # Render a config file
styledconsole schema            # Get JSON Schema for IDE config

Key Features

Feature Description
Gradient Engine Rainbow and linear gradients on borders, text, backgrounds
Smart Icons 224 icons with automatic ASCII fallback for CI/legacy terminals
Effects System 47 presets + 90 color palettes + phase animations
Builder Pattern Fluent API for complex layouts
Environment Detection Auto-adapts for NO_COLOR, CI, TERM=dumb
Export Formats HTML, PNG, WebP, GIF with full emoji support
JSON Schema IDE autocomplete for YAML/JSON configuration files
22 Built-in Templates Ready-to-use UI patterns

Documentation

Guide Description
Getting Started Zero to dashboard in minutes — start here!
Python API Complete API reference — builders, effects, themes, export
Declarative Guide JSON/YAML configuration for config-driven UIs
Jinja2 Templates Dynamic templates with loops and filters
Visual Gallery Screenshots and animated demos
Developer Guide Architecture and contributing


Support

Platform Link
GitHub Sponsors github.com/sponsors/ksokolowski
Ko-fi ko-fi.com/styledconsole

Apache License 2.0 — Built on Rich, PyFiglet, and emoji.

Metadata

Release files for styledconsole 0.11.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for styledconsole 0.11.0
File Size Uploaded
styledconsole-0.11.0.tar.gz 720.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for styledconsole 0.11.0
File Interpreter ABI Platform
styledconsole-0.11.0-py3-none-any.whl Python 3 none any Details

Total release size: 970.6 kB

Release files / styledconsole-0.11.0.tar.gz

Download URL styledconsole-0.11.0.tar.gz
Size 720.3 kB
Tags Source
SHA-256 checksum
How to use checksums
1878bc203fa82ff6a24d11226bbf6a78cc8afdbe5289ef9348b42d0ba3b6accb
BLAKE2b-256 checksum
How to use checksums
7f03e7e1a31af36c0d267d7f49c8c79c7ff2f38bd9e77285b14c0600d30314af
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 12, 2026.

Transparency log

Release files / styledconsole-0.11.0-py3-none-any.whl

Download URL styledconsole-0.11.0-py3-none-any.whl
Size 250.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e633fcdf03093af226e707f4665adc316e143ddd9015ad2d820158c9b0d49d88
BLAKE2b-256 checksum
How to use checksums
bb44300f4ddf4d2171c284a4524900d430b99dbb124ac78ce8fdc02d2e47312e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 12, 2026.

Transparency log

Release history Release notifications | RSS feed

0.11.1

2 release files

This release

0.11.0 This release

2 release files

0.10.5

2 release files

0.10.4

2 release files

0.10.3

2 release files

0.10.2

2 release files

0.10.1

2 release files

0.10.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page