Skip to main content

A hybrid CLI tool for ASCII art generation with terminal and web preview modes.

Project description

Asciify Term

PyPI - Version PyPI - Python Version PyPI - License PyPI - Downloads

Asciify Term is a modern, cross-platform CLI utility that renders high-resolution images as ASCII art directly in your terminal.

Originally built as a creative toy, it has evolved into a powerful DevOps utility for verifying image assets in headless environments (SSH, Docker, WSL) where GUI viewers are unavailable. It supports local files, remote URLs, and TrueColor rendering.

🚀 Features

  • Terminal-First Workflow: Instantly render images to stdout with zero configuration.
  • Headless Support: Perfect for verifying plot.png or asset files on remote servers via SSH.
  • URL Support: Fetch and render images directly from the web (http://...) without manual downloading.
  • TrueColor Support: Renders images in full 24-bit ANSI color.
  • Smart Resizing: Automatically fits the output to your current terminal window dimensions.
  • Export Options: Save outputs as plain text .txt or color-preserving .html.
  • Legacy Interactive Mode: A guided menu system for creative exploration.

Installation

Install directly from PyPI:

pip install asciify-term

Usage

1. The Quick Scan (Default)

The primary use case is to quickly view an image in your terminal. The output automatically scales to fit your window.

# Local File
asciify -i image.jpg

# Remote URL
asciify -i https://example.com/logo.png

2. Color Mode

To view the image with its original colors (using ANSI escape codes):

asciify -i image.jpg --color

3. Saving Output

You can save the generated art to a file instead of (or in addition to) printing it.

Save to current directory (Auto-named):

asciify -i image.jpg -s
# Creates: ascii_image_TIMESTAMP.txt

Save with custom name/location:

# Save as specific filename (no extension needed)
asciify -i image.jpg --output-file-name my_art

# Save to a specific folder
asciify -i image.jpg --output-folder ./art_gallery

Save as HTML (Preserves Color):

asciify -i image.jpg --color --html

4. Customizing Dimensions

By default, asciify fits the image to your terminal. You can override this:

# Force specific width (Height auto-calculated)
asciify -i image.jpg --width 100

# Force specific width AND aspect ratio
asciify -i image.jpg --width 100 --aspect-ratio 2.0

# Downsize by a factor of 4
asciify -i image.jpg --downsize 4

5. Managing Charsets

You can change the characters used for rendering (e.g., standard ASCII, blocks, braille).

List available charsets:

asciify --show-charsets

Use a specific charset for one run:

asciify -i image.jpg -c blocks

Set a new default charset (Persistent):

asciify --set-charset blocks
# All future runs will now use 'blocks' by default

Advanced: Interactive Mode

For a more guided, "creative" experience with animations and previews, use the --full flag. This launches the legacy interactive menu.

asciify --full

Configuration Reference

Flag Description
-i, --input-file Path to local image OR URL (http://...).
--color Enable TrueColor ANSI output.
-s, --save Save output to current directory.
--output-folder Specify folder for saved output.
--output-file-name Specify filename (without extension).
--html Save as .html file.
--width Set target width.
--height Set target height.
--aspect-ratio Force specific aspect ratio.
--downsize Downsize image by factor n.
-c, --charset Use specific charset string.
--show-charsets List all built-in charsets.
--set-charset Set default charset preference.
--full Launch legacy interactive mode.

License

Distributed under the MIT License. See LICENSE for more information.

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

asciify_term-0.3.0.tar.gz (17.0 kB view details)

Uploaded Source

Built Distribution

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

asciify_term-0.3.0-py3-none-any.whl (19.3 kB view details)

Uploaded Python 3

File details

Details for the file asciify_term-0.3.0.tar.gz.

File metadata

  • Download URL: asciify_term-0.3.0.tar.gz
  • Upload date:
  • Size: 17.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for asciify_term-0.3.0.tar.gz
Algorithm Hash digest
SHA256 7b7cdb5ba93b0593b60a3495ac78599dc73142bef4089040020f93c8a6c296f4
MD5 2275ef3848bf18fc30da1c803f589d88
BLAKE2b-256 648c094a639e20a2e6ab55995fd14572773f9cd4d885db65ad77c222aef27cbd

See more details on using hashes here.

File details

Details for the file asciify_term-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: asciify_term-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 19.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for asciify_term-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a23f3b09721d1c452930b73888567e97544bd2c78e2f375f6b81b18df88c958c
MD5 3def305366377ca42b20e6c2a4efd859
BLAKE2b-256 8c2555b1e9a099ff2668346d01b869dcf477052f669b47732517ccb0788ce860

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