O ecossistema Java ganhou em 26 de maio de 2026 uma biblioteca moderna pra construir TUIs — terminal user interfaces, aquelas interfaces ricas que rodam direto no terminal sem precisar de navegador ou janela grafica. Chama-se TamboUI, esta na versao 0.3.0 e ja foi adotada por Maven e Spring. Inspiracao explicita no Ratatui, lib do ecossistema Rust que virou referencia.
Por que TUI voltou a importar
TUI parecia coisa do passado, ate o CLI do Claude Code e ferramentas similares mostrarem que builder moderno passa tempo no terminal de novo. Codex, Gemini CLI, Kiro, todos sao agentes que apresentam menu, lista de arquivos modificada, diff, status de jobs paralelos. Tudo no terminal. E tudo construido em Rust, em Go, em Node — Java tinha ficado fora dessa onda.
A conversa publica que disparou o projeto, segundo o anuncio, foi no Bluesky sobre a CLI do Claude Code. Alguem perguntou por que Java nao tinha equivalente, outro alguem respondeu que iria construir, e tres meses depois saiu a 0.3.0.
O que a TamboUI traz
A biblioteca expoe APIs em camadas, e essa e a heranca direta do Ratatui:
- Camada baixa: drawing direto no terminal, controle de caracter por caracter, cursor positioning, cores ANSI. Util pra quem quer construir abstracao propria.
- Camada media: componentes prontos como listas, tabelas, splits, modais. Suficiente pra montar a maioria das UIs sem entrar em detalhe de baixo nivel.
- Event handling: input de teclado, mouse, redimensionamento de terminal — modelo declarativo similar ao de framework reativo.
A versao 0.3.0 ainda nao e GA, mas ja resolve casos suficientes pra Maven (build tool) e Spring (framework dominante de aplicacao Java) terem adotado. Essa adocao tem peso politico: quem decide stack de TUI em Java agora vai considerar o que esses dois projetos usam.
Por que Ratatui virou referencia
O Ratatui sucedeu no que tcell, blessed e ncurses nao conseguiram: dar API agradavel sem perder controle. Em Rust, a comunidade construiu em cima dele coisas como bottom (monitor de sistema), gitui (cliente git), spotify-tui. A heranca direta do TamboUI parece ser a mesma escolha de design: tela como state, redraw declarativo, componentes composaveis.
Na leitura do up23labs, a aposta certa nao foi reinventar — foi importar um modelo de programacao ja provado e adapta-lo pra JVM com semantica de tipos que Java espera.
O que muda para o dev Java
Pra quem mantem CLI em Java hoje, o estado da arte era picocli pra parsing + System.out.print pra UI. Funcional, feio, sem suporte real a UI rica. Com TamboUI, da pra construir TUI completa sem sair da JVM, mantendo libs que ja sao do time.
Dois cenarios praticos onde isso vira ganho:
- Ferramenta interna de devops em Java que ate agora tinha frontend web por falta de opcao — vira CLI rico, com menos infra.
- Build tool ou agente que precisa exibir progresso paralelo de tarefas, semelhante ao que o Maven ja vai apresentar como exemplo.
O que ainda precisa amadurecer
Versao 0.3.0 nao e versao final. Tres pontos que provavelmente vao receber atencao nos proximos releases:
- Suporte a temas / theming consistente (ainda nao mencionado no anuncio).
- Acessibilidade pra leitores de tela em terminal, area onde TUI historicamente falha.
- Cobertura de testes pra interaction (clique, atalho de teclado) — TUI e dificil de testar e e onde a maioria das libs antigas tropecou.
O que vale testar primeiro
Para um time que ja tem CLI em Java e considera atualizar, o teste mais barato e portar uma sub-tela so. Lista de itens ja existente, por exemplo. Se a curva de aprendizado bater com o que Ratatui em Rust prometeu — duas tardes pra primeira tela usavel — vale ampliar. Se nao, esperar 0.5.0.
Reportado originalmente por InfoQ em 2026-05-26.



