Marriage of ffmpeg and terminal TUIs, notcurses 1.1.0

1 points by dankamongmen ↗ HN
I just cut 1.1.0 of my new(ish) TUI library, notcurses. I started work on it back in November, and it's now IMHO pretty fit for general use.

1.1.0 demo: https://www.youtube.com/watch?v=-H1WkopWJNM

github: https://github.com/dankamongmen/notcurses

wiki: https://nick-black.com/dankwiki/index.php/Notcurses

notcurses is an obvious intellectual descendant of NCURSES, which Thomas E. Dickey has masterfully developed and maintained for decades. notcurses breaks away from the prelapsarian X/Open Curses API, but its interface will be quite familiar to experienced NCURSES programmers. For new TUI developers, I hope that notcurses has fewer gotchas than NCURSES. notcurses supports 24-bit DirectColor RGB as its primary color specification (though palette indexed color is also supported, for its bandwidth benefits).

Almost anything you can do in NCURSES can be done in notcurses, though a few things (most especially menus) must currently be handrolled. In addition, there's rich support for various types of transparency/color blending, image rendering, fades, giant virtual planes, z-axis depths of thousands of planes, and other good stuff.

Experimental Python wrappers are included in this release. I hope to cut C++ and Rust wrappers soon.

Please take a look, and give the demo a local run if you've the time. Feedback and/or bug reports would both be invaluable.

If you'd like to see a real app using notcurses, my growlight tool has been adapted to it:

https://github.com/dankamongmen/growlight

This was several thousand lines of NCURSES UI code. Switching it to notcurses was a generally painless procedure of a few hours.

0 comments

[ 2.2 ms ] story [ 13.3 ms ] thread

No comments yet.