It just so happens that I’ve built one already: TUI4J (Terminal User Interface for Java).
https://github.com/WilliamAGH/tui4j
It combines a port of BubbleTea from Go, and Textual and other inspired rewrites of other functionality.
It’s a fork of someone’s earlier work that I sought to expand/stabilize.
I built a beautifully simple LLM chat interface with full dialog windows, animations, and full support for keyboard and mouse interactivity parity, showing what this Java library is capable of.
Example chat app: https://github.com/WilliamAGH/brief
Would love to see others build similar things with it!
I had no idea what brief was until I read the env var api key docs in the subdirectory. I think you should not lead with "it's a tui4j app!" and "it's terminal chat!". It's a terminal OpenAI ChatGPT interface. Screenshot wouldn't hurt either, given it's an advertisement for the presentation library.
Great ideas for both :)
I wasn’t expecting the main topic of what I’ve been building to appear on the cover of hacker news today, so I was caught a bit unprepared, but they were definitely on the todo list next!
cool - you've hidden that well as I spent a lot of time searching for these.
Will definitely check it out.
...where is the jar for brief? :)
I made some tweaks to the Github releases config, you should be able to do this now as well:
curl -L -o brief.zip https://github.com/WilliamAGH/brief/releases/latest/download... unzip brief.zip cd brief-*/ ./bin/brief
Cool - but I really was hoping for a maven coordinate or a .jar since then I could run it directly with jbang :)
ah - tui4j is continuation of latte. Cool - now I grok why it looked similar. cool!
Hope you enjoy tui4j and brief!