Chafa: Terminal Graphics for the 21st Century

https://news.ycombinator.com/rss Hits: 18
Summary

The future is (still) now The premier UX of the 21st century just got a little better: With chafa, you can now view very, very reasonable approximations of pictures and animations in the comfort of your favorite terminal emulator. The power of ANSI X3.64 compels you! Example You can get fair results by using only U+2580 (upper half block). Other terminal graphics packages do this, and so can Chafa with chafa --symbols vhalf. However, Chafa uses more symbols by default, greatly improving quality. Input U+2580 only Chafa default There are more examples in the gallery! Features Supports most popular image formats, including animated GIFs. Outputs to all popular terminal graphics formats: Sixels, Kitty, iTerm2, Unicode mosaics. Combines Unicode symbols from multiple selectable ranges for optimal output. Fullwidth character support, e.g. Chinese, Japanese, Korean. Glyphs can be loaded from any font file supported by Freetype (TTF, OTF, PCF, etc). Multiple color modes, including Truecolor, 256-color, 16-color and simple FG/BG. RGB and DIN99d color spaces for improved color picking. Alpha transparency support in any color mode, including in animations. Works with most modern and classic terminals and terminal emulators. Documented, stable C API. Fast & lean: SIMD optimized, multithreaded. Suitable for terminal graphics, ANSI art composition and even black & white print. Some of the features are discussed in a series of blog posts: Documentation Chafa will print a help text if run without arguments, or with chafa --help. It also comes with a man page displayable with man chafa. The gallery contains examples of how command-line options can be used to tweak the output. There is C API documentation for application developers. Erica Ferrua Edwardsd贸ttir is developing Python bindings that allow Chafa to be used in Python programs. These are documented on their own site. H茅ctor Molinero Fern谩ndez maintains JavaScript bindings that allow Chafa to be used in Node.js, web browsers, ...

First seen: 2025-12-15 19:58

Last seen: 2025-12-16 13:01