StyledConsole
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 |
Quick Links
- Examples Repository — 60+ working demos
- Changelog — Version history
Support
| Platform | Link |
|---|---|
| GitHub Sponsors | github.com/sponsors/ksokolowski |
| Ko-fi | ko-fi.com/styledconsole |
Metadata
Release files for styledconsole 0.11.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| styledconsole-0.11.1.tar.gz | 726.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| styledconsole-0.11.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 978.4 kB
Release files / styledconsole-0.11.1.tar.gz
| Download URL | styledconsole-0.11.1.tar.gz |
|---|---|
| Size | 726.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
cb236744d27d1fcdf01898aa0cfb2d65a3f44a706d762686864e03c8c18439ab
|
|
BLAKE2b-256 checksum How to use checksums |
93c4d758c3973f2a3cf105d6591f69cd6b40acec2955846b6db14c6c286eb12a
|
| 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 logRelease files / styledconsole-0.11.1-py3-none-any.whl
| Download URL | styledconsole-0.11.1-py3-none-any.whl |
|---|---|
| Size | 252.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
59ef72239065ce09bf58a742e66fe7637345c352bfed3b454069faf3ac6ba932
|
|
BLAKE2b-256 checksum How to use checksums |
c05912bba763df12e44cb462174f49d7202054e4b798d07b8f13b667d8977f28
|
| 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