Skip to main content

A Python library for enhanced terminal display.

Project description

cobra-color

Build PyPI version Python Versions License Pull Requests Welcome Github stars

About

A lightweight Python library for enhanced terminal display: simple text color/style conventions and image-to-terminal rendering.

  • Python: 3.9+
  • Runtime deps: Pillow (>=9,<11), NumPy (>=1.21,<2)

Features

  • :rocket: Concise color/style names for terminal text.
  • :rocket: Image rendering in multiple modes: ASCII, color, half-color, gray, half-gray.
  • :rocket: Minimal dependencies and easy integration.

Installation

Stable (once published):

pip install cobra-color

Quick Start

  • Render a text in the terminal:

    from cobra_color import ctext
    
    print(ctext("Hello World!", fg="r", styles=["bold"]))
    
  • Render an image in the terminal:

    from cobra_color.draw import fmt_image
    
    # ASCII art
    print(fmt_image("example.jpg", width=80, mode="ascii"))
    
    # Half-block color (recommended for truecolor terminals)
    print(fmt_image("example.jpg", width=80, mode="half-color"))
    
  • Render some text with fonts in the terminal:

    from cobra_color.draw import fmt_font, FontName
    
    # Borderless grayscale font
    print(fmt_font("Hello World!", font=FontName.LLDISCO,, mode="half-gray", trim_border=True))
    

Image Modes

  • ascii: monochrome ASCII using a density charset.
  • color: colorized character fill.
  • half-color: half-block characters with color (higher density, good visual quality).
  • gray: grayscale characters.
  • half-gray: half-block grayscale.

Tip: For best results, use a TrueColor-capable terminal and a monospaced font.

Requirements

  • Python >= 3.9
  • Pillow >= 9.0, < 11
  • NumPy >= 1.21, < 2.0

License

See LICENSE in the repository.

Links

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cobra_color-0.2.2.tar.gz (62.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cobra_color-0.2.2-py3-none-any.whl (62.4 kB view details)

Uploaded Python 3

File details

Details for the file cobra_color-0.2.2.tar.gz.

File metadata

  • Download URL: cobra_color-0.2.2.tar.gz
  • Upload date:
  • Size: 62.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.8.10

File hashes

Hashes for cobra_color-0.2.2.tar.gz
Algorithm Hash digest
SHA256 447bb60238bf00e34725f8ba625a765a248b0e441c9e2bf51bfa7a3db9d7920c
MD5 dcbae87a9f2766edf13e13fef7eb11f8
BLAKE2b-256 fa26913f99e2223be3d8e95d34187d200b35ca186b7f27977c8e50ca0a7690c9

See more details on using hashes here.

File details

Details for the file cobra_color-0.2.2-py3-none-any.whl.

File metadata

  • Download URL: cobra_color-0.2.2-py3-none-any.whl
  • Upload date:
  • Size: 62.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.8.10

File hashes

Hashes for cobra_color-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 66a142461942a8c15d8319f30c6fcc3e1a1a6f760a29fb4f4f5057209f93bbac
MD5 0c0de2835078b25b9de0b9066cfedc3e
BLAKE2b-256 37a3b0062ab5fe42d4c9b6b9c1a68101decce6bcbde3a5c9dd8a9d62b7c25812

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page