CHARVA is a Java library that allows an
application to display a GUI on a traditional
text terminal (e.g., VT100). It uses GNU ncurses
to handle the I/O to the terminal, and
communicates with ncurses using a Java Native
Interface (JNI) library. It works with any
terminal which is supported by ncurses. CHARVA
emulates the API of the Java AWT and Swing
packages, so that a programmer who is familiar
with Swing will find CHARVA easy to use.