{"repo":"johnnovak/illwill","free":true,"listed":false,"github":"https://github.com/johnnovak/illwill","clone":"git clone https://github.com/johnnovak/illwill.git","description":"A curses inspired simple cross-platform console library for Nim","language":"Nim","stars":467,"topics":["gui","nim","nim-lang","terminal","tui"],"license":"WTFPL","category":"cli-tools","readme_excerpt":"illwill Overview illwill is a (n)curses inspired simple terminal library that aims to make writing cross-platform text mode applications easy. Having said that, it's much simpler than (n)curses and it's not as robust by far in terms of supporting different encodings, terminal types, etc. The aim was to write something small and simple in pure Nim that works for 99% of users without requiring any external dependencies or a terminfo database. For \"serious\" applications, the best is always to write different backends for nix and Windows (one of the main reasons being that the Windows Console is buffer based, not file based). But I think this library is perfect for small cross-platform programs and utilities where you need something more than the basic blocking console I/O, but you don't actually want to bother with a full-blown GUI. Main features Non-blocking keyboard input. Support for key combinations and special keys available both in the standard Windows Console ( cmd.exe ) and most common POSIX terminals. Virtual terminal buffers with double-buffering support (only display changes from the previous frame and minimise the number of attribute changes to reduce CPU usage). Simple graphics using UTF-8 box drawing symbols. Full-screen support with restoring the contents of the terminal after exit. Mouse support with modifier key reporting. No dependencies —only depends on the standard terminal module. nim-mod is an oldschool MOD player that uses illwill for its awesome text-mode","default_branch":null,"files":null,"tree":[],"storefront":"/r/johnnovak","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/johnnovak/illwill/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}