crysterm
Crysterm is a console/terminal toolkit for Crystal, inspired by Blessed, Blessed-contrib, and Qt.
Advanced features:








Image-rendering backends:














Image::Tek (Tektronix 4014):

Tech intro
Crysterm is supported by the event model in event_handler, color routines in term_colors, terminal handling in tput.cr, GPM mouse in gpm.cr, a terminfo library in unibilium.cr, and an animated PNG/GIF parser in pnggif.
tput.cr implements all the terminal routines, and does not use ncurses. For terminfo bindings it uses unibilium, but it also supports a built-in, standard mode which does not use terminfo at all. (A lot of modern software just hardcodes the sequences.) The other important module at Crysterm's core is event_handler. through which all app events and input are routed.
In-depth introductory doc is in USAGE.md.
Examples
git clone https://github.com/crystallabs/crysterm
cd crysterm
shards
crystal examples/hello.cr
crystal examples/hello2.cr
crystal examples/tech-demo.cr
(And other examples from directories examples/, small-tests/, test/ and test-auto/.)
Testing
Run crystal spec as usual.
Documentation
Run crystal docs as usual.
Thanks
- All the fine folks in the Crystal community.