--- id: ascii-colors version: "0.11.26" license: Apache-2.0 license_treatment: permissive maintenance: active --- # ascii-colors — A Python library for rich terminal output with advanced logging features. License: permissive · Maintenance: active · Downloads: 298.3K/mo ## What it is and what it does ASCIIColors is a single-package replacement for managing multiple terminal UI libraries. It combines colored text output, Python's standard logging system with JSON and file-rotation support, progress bars, interactive prompts (text, password, select, checkbox), and rich UI components like panels, tables, and syntax highlighting—all without requiring external UI dependencies beyond wcwidth for emoji support. The library offers three complementary APIs: direct color methods for immediate feedback, a drop-in logging replacement compatible with Python's standard logging module, and a Rich-compatible component layer for building terminal interfaces. It targets developers building CLI tools, monitoring dashboards, and interactive applications who want styled output and structured logging without juggling separate libraries. Use it for: - Build CLI tools with colored status messages, warnings, and errors using direct color methods. - Set up production logging with JSON output, per-logger file routing, and rotation in a single configuration. - Display progress bars with custom styles and thread-safe updates during long-running operations. - Create interactive terminal menus and prompts (text input, confirmations, selections) for user-facing CLI applications. - Render structured data as tables or hierarchical trees with syntax highlighting for code snippets. - Debug applications with enhanced tracebacks that include local variable context and multicolor formatting. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Unified terminal UI library providing colored output, structured logging, progress bars, interactive prompts, and rich components (panels, tables, trees) for CLI applications. Yes. Low install friction, active maintenance, no known vulnerabilities, and a permissive license make it a solid choice. The unified API across colors, logging, and UI components reduces dependency sprawl for CLI projects. Best for developers who want a single package for terminal styling and structured logging; less suitable if you need only basic colored output or prefer composing best-of-breed libraries. ## Install pip install ascii-colors uv add ascii-colors poetry add ascii-colors ## Installing ascii-colors Before you install: Low friction: pure Python wheel with only wcwidth as a runtime dependency. Active maintenance with a release 30 days ago and recent commits. License in practice: Apache-2.0 permissive license allows commercial and private use with minimal restrictions. Quickstart: pip install ascii_colors from ascii_colors import ASCIIColors ASCIIColors.green("Success!") ASCIIColors.red("Error occurred") ASCIIColors.panel("Content", title="Title", border_style="blue") Requires Python 3.8 or later. Verify before relying: - Whether wcwidth is truly optional or required for accurate progress bar rendering in all terminal environments. - Performance characteristics when rendering large tables or trees in real-time. - Compatibility with Windows terminals and whether ANSI escape sequences work reliably on all platforms. ## Package facts - License: Apache-2.0 (permissive) - Python support: supports_current - Install friction: low - Maintenance: active - Downloads: 298.3K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags terminal colors and styling, cli logging system, progress bars for terminal, interactive prompts and menus, rich terminal ui components, ansi color output, structured logging library, cli-toolkit, logging-system, terminal-ui [View on SkillFed](https://skillfed.io/packages/ascii-colors) · [View on PyPI](https://pypi.org/project/ascii-colors/)