ExTermbox
Low-level termbox bindings and a high-level, functional terminal UI kit for Elixir.
The low-level bindings can already be used; the high-level APIs are still under active development and subject to change.
For the API Reference, see: https://hexdocs.pm/ex_termbox.
Getting Started
TODO - Add examples & screenshots here.
Installation
From Hex
Add ExTermbox as a dependency in your project's mix.exs:
def deps do
[
{:ex_termbox, "~> 0.1.0"}
]
end
The Hex package bundles a compatible version of termbox. There are some compile
hooks to automatically build and link a local copy of ltermbox for your
application. This should happen the first time you build ExTermbox (e.g., via
mix deps.compile).
So far the build has been tested on macOS and a few Linux distros. Please add an issue if you encounter any issues.
From Source
To try out the master branch, first clone the repo:
git clone --recurse-submodules git@github.com:ndreynolds/ex_termbox.git
cd ex_termbox
The --recurse-submodules flag (--recursive before Git 2.13) is necessary in
order to additionally clone the termbox source code, which is required to
build this project.
Next, fetch the deps:
mix deps.get
Finally, try out one of the included examples/:
mix run examples/rendering.exs > debug.log
If you see lots of things drawn on your terminal screen, you're good to go. Use "q" to quit in the examples.