Top
Best
New

Posted by rickcarlino 6 days ago

Why TUIs are back(wiki.alcidesfonseca.com)
422 points | 420 commentspage 3
mg794613 6 days ago|
When kubernetes got introduced, we didnt want to interact with only webpages/fronts.

So we created tooling we know on the CLI.

Every person here that thinks its AI that caused the resurgence of CLI tools is a vibe coder who just entered the scene this year.

sombragris 6 days ago||
I fully agree about the overall downward trend in quality and efficiency of GUI apps, but I also think there's an important factor in the rise of TUI apps:

People now have access to good terminal emulators. Back in the day, you had cmd.exe in Windows. Now you have a plethora of Linux/Unix terminal emulators, Terminal.app in MacOS, and Windows Terminal in Windows 10/11. These are quite capable applications able to render good, complex text-based interfaces.

moomin 6 days ago||
Using Claude has highlighted, for me, a number of issues with terminal apps like Claude Code. You can’t easily see the status of lots of instances, you can’t easily search for instances, you can’t get one instance to start another instance or send a message from one instance to another and, of course, if you make a slightly mistake in coding a full screen app, you get screen corruption.
rmunn 6 days ago|
> if you make a slightly mistake in coding a full screen app, you get screen corruption.

HOW? The TUI library should handle everything for you. So HOW do... Wait. Did Claude vibe-code up its own set of TUI routines instead of using a library?

musha68k 6 days ago||
I'm biased towards CLI and reign of LLMs means we're all Unix/text (for) now. So IMO there are many reasons, but chiefly amongst them is UI/HCI design leader Apple throwing out their/industry's interaction design best practices over the last 10+ years.

Embracing constraints and "how it works" used to be at the core of their software ethos.

cameldrv 6 days ago||
One thing I like about TUIs is that they can usually be completely operated from the keyboard. Most GUI apps have flows that you need the mouse for, and they’re slow if have to do that often.
gbin 6 days ago||
I don't think it is surprising. Loading entire chrome processes for simple super laggy UIs is just unbearable.

TUI are snappy, accessible over ssh, small screen friendly, easily embeddable in zellij or other multiplexers, easy to copy paste from... Amazing.

namelosw 6 days ago||
It doesn't really make sense to me. I've been using Emacs and Vim for decades, and have been using Claude Code for months, but I moved to Codex GUI and the VSCode Claude Code plugin eventually. The biggest problem is that monospaced fonts are not really the best for reading, and with coding agents, people should be reading text most of the time.

The current implementation isn't command-line, but a re-implemented GUI in disguise, awkward and even more buggy. Why should I use that over a GUI? I would prefer Electron over those TUI unless I have to SSH.

hexo 6 days ago||
I'm not surprised at all, if I was to choose from TUI or browser-gui (electron, react, react-native, anything similar) i'd always choose TUI. Good gui design died a long ago. Almost every gui designer needs us to always look at some nonsense animations that serve zero purpose and just make you needlessly wait. There is no such thing as "essential" animation in GUI. And no, plain simple progress bar does not count as animation, but rotating "progress circle" does. GUIs got so unbelievably bloated, it used to be an advantage to have more pixels, as you could pack more information in useful way. Today? Nah. Look at signal (or signal-desktop), it's not even funny anymore. Dolphin used to be good file explorer. Today it's borderline usable, animated so much so that i have to maintain own patched version. One just cannot hide from this, mostly because devs do not understand (or want to acknowledge) need for this stuff to be configurable (instead they more likely focus on stuff no one actually needs. again looking at you, signal.). Or stuff like libadwaita that is likely one of the most arrogant take on gui library ever.
Timwi 5 days ago||
The article spends a lot of time talking about how UIs “look” and how they all “look different”. That's not the important aspect to me.

For me what makes a software usable in the long run (after initial learn) is shortcuts and keyboard navigability. Old GUI frameworks had built-in features for this (app-wide shortcuts, underlined letters, etc.). The web has haphazardly copied one of them (“accesskey” attribute), but now this has been completely forgotten. None of the major websites have accesskeys, even for the most frequently used element like the search bar. There are no shortcuts for frequently used functions such as “like”, “reply”, what have you. It's like developers have universally forgotten that the keyboard exists and what it can do.

TUIs don't solve that.

neomantra 6 days ago|
They've been back and we're all taking them further than ever before!

For the past few weeks I've been wrapping up Booba [1], which is developer tooling to combine BubbleTea and Ghostty in WASM deployments (using ghostty-web).

It provides for some interesting deployment patterns both locally, over network, and embedded in a web page. It's intended to be very easy to adopt; at the simplest, one just changes `tea.NewProgram` to `booba.NewProgram`.

I used Booba to make a demo page [2] for our NTCharts TUI library published to GitHub Pages. The repo READMEs have GIFs... this page is all embedded WASM.

There's also new Kitty-Graphics-supported widgets in there (picture, chartpicture); I updated Booba and Ghostty-Web to support it. Still getting the kinks out.

[1] https://github.com/NimbleMarkets/go-booba

[2] https://nimblemarkets.github.io/ntcharts/demos/heatpicture-p...

More comments...