Everything you need to build a full terminal application — not just a menu screen.
A complete component system for building interactive TUIs.
Position widgets without pixel math. Let the layout engine handle it.
Full terminal color support — 16-color, 256-color, and true color RGB.
Render data visualizations in the terminal. No external charting libs.
25+ animated backgrounds and transition effects. Because terminals deserve to be alive.
Render full-color ANSI art files — splash screens, logos, background art. One part of the toolkit, not the whole story.
A component model that feels like Swing, not like ncurses.
jterm uses a proper component hierarchy — containers, layout managers, event listeners, focus management. Build complex multi-panel UIs the way you'd build a desktop app, not by manually positioning characters on a grid.
Terminal applications don't have to be static. 25+ animated backgrounds and transition effects ship in the box.
Add the dependency, write a few lines, run it. That's it.
Add jterm to your pom.xml. The artifact will be published to Maven Central once the v0.1.0 alpha is released. For now, build from source.
jterm powers real applications — not just demos.
A full-featured SSH/Telnet BBS with message boards, real-time chat, door games, file archives, and mesh networking over LoRa radio. 775+ Java files built on jterm's widget, animation, and screen systems.
The Java ecosystem deserves a terminal UI framework — not just an ANSI escape code wrapper.
No JNI. No native binaries. No platform-specific builds. One JAR works everywhere Java does.
Built for JDK 26. Uses records, sealed interfaces, pattern matching, and var throughout. No legacy cruft.
162 tests. Screen buffers are inspectable. Widgets render to off-screen buffers you can assert against. No terminal required to test.
Screen buffers, text graphics, layout managers, focus management, event listeners, component hierarchy, theming. Everything Swing has — for the terminal.
Zero runtime dependencies. Drop the JAR in and go. Works in standalone apps, server daemons, or embedded devices.