Live data from Hacker News

Strace-ui, Bonsai_term, and the TUI renaissance

blog.janestreet.com

61–70 of 91 posts

Re: Strace-ui, Bonsai_term, and the TUI renaissance

#61
post #16

Earlier quoted context omitted.

Unfortunately, they often lack what we gained over the last decades. Namely navigating with a mouse and being self-explanatory and same-y. The latter is mostly because certain GUI patterns simply cannot be implemented with a TUI. And then everyone has their own idea of what keyboard shortcuts should be like. Yuck

IMHO peak GUI was in 2000s - on Windows most app used Win32 API and apps which followed "Microsoft Windows User Experience" guide had consistent UI/UX. Since then Microsoft introduced many competing frameworks to create GUI all look slightly different and UX is less consistent too. And then Electron come which brought inconsistency of web to the desktop apps.

That is very rose-tinted view of the era. In reality in early 00s lots of software had their own wacky UI toolkits. MS Office is of course the most notable example, but also iirc all of Adobe/Macromedia or every 3d modeling (Lightwave, Maya etc) and audio production software. In the enterprise realm people were doing Java AWT (and later Swing) UIs. And then there were the classics like WinAmp with its iconic theme support, or Mozilla with XUL (and themes).

Re: Strace-ui, Bonsai_term, and the TUI renaissance

#62
post #37

Slightly OT, but the next logical steps include, in no particular order: - frameworks for tui development, including react -like DOM shit - further ad-hoc specs building on top of ANSI escape codes for finer control - maybe a scripting language

I've been working on exactly this with morph.nvim [1] — a React-like component model (h(), component lifecycle, reconciliation, extmark-based styling) for building declarative TUIs. It uses Neovim as a base, which might seem like an odd choice, but Neovim gives a lot out of the box that most TUI frameworks don't: syntax highlighting, extmark tracking (i.e., editable regions that feed back into the component state — type in a filter and the UI re-renders around it), and navigation that Vim users already know without learning yet another keybinding layer. Built on top, tuis.nvim [2] ships real plugins — Docker, K8s, Bitwarden, process manager — all as native Neovim buffer TUIs. No Electron, no separate app window, runs over SSH.

[1] https://github.com/jrop/morph.nvim [2] https://github.com/jrop/tuis.nvim

Re: Strace-ui, Bonsai_term, and the TUI renaissance

#63

I don't really get the TUI craze. Would love it if someone has some perspective that I'm lacking. Display technology has seen so much progress in the past decades. Apple marketing has taught us about "Retina" displays with pixels so small that you can't tell them apart without a microscope. We get these very rich and colorful desktop environments but we actively decide to not use any of that. Now, I get that a TUI ca…

To me they are much better than browser/electron/native gui because they are light on resources, very predictable, portable and honestly they get the job done. I used k8s Lens and it gave the impression of being efficient because of the high density of information, but I haven't felt like I downgraded when I moved to k9s, and now I can manage my clusters, develop their charts using neovim and browse the web without g…

On k8s/devops tooling: I'm building tuis.nvim [1] — Docker and Kubernetes management as Neovim buffer TUIs, built on morph.nvim [2], a react-like UI framework for Neovim. Stay in the editor (if you already use Neovim, of course) instead of switching to k9s, works over SSH, same Vim keybindings you already use. Also has plugins for Bitwarden, process management, and file exploration.

[1] https://github.com/jrop/tuis.nvim [2] https://github.com/jrop/morph.nvim

Re: Strace-ui, Bonsai_term, and the TUI renaissance

#64
post #63

Earlier quoted context omitted.

To me they are much better than browser/electron/native gui because they are light on resources, very predictable, portable and honestly they get the job done. I used k8s Lens and it gave the impression of being efficient because of the high density of information, but I haven't felt like I downgraded when I moved to k9s, and now I can manage my clusters, develop their charts using neovim and browse the web without g…

On k8s/devops tooling: I'm building tuis.nvim [1] — Docker and Kubernetes management as Neovim buffer TUIs, built on morph.nvim [2], a react-like UI framework for Neovim. Stay in the editor (if you already use Neovim, of course) instead of switching to k9s, works over SSH, same Vim keybindings you already use. Also has plugins for Bitwarden, process management, and file exploration. [1] https://github.com/jrop/tuis.n…

To me particularly, leaving editor isn't a hassle because kitty makes it seamless. Neovim, k9s, zsh shell, agents, it feels like it's just a single IDE, and I believe that specialized tools are simpler and more robust to maintain instead of adding functionality that wasn't intended for neovim. Don't get me wrong, neovim is sufficiently flexible for this, it's just that I had too much agro with neovim extensions that I just prefer native tools.

Re: Strace-ui, Bonsai_term, and the TUI renaissance

#65

I have had a similar notion, around the same time, with tui's and strace in particular. Lots of experiments, never quite good enough to publish or try to popularize. Something I've found in the last few years though, and especially the last six months, is that the impulse to make a better tui has died for me. Claude et al are going to wield these tools via cli far better than I can via tui. The built in visualization…

[dead]

Re: Strace-ui, Bonsai_term, and the TUI renaissance

#66
post #40
post #36

Earlier quoted context omitted.

When you get down to it, there is no better way to display text than to use a text display. No amount of cartoons or colourful bouncy animation of pictures on the screen can replace simply displaying text when what you need to do is display text on the screen. And it turns out that text is a really good way to display information. A picture is worth a thousand words but why would you use 1000 words when only one or t…

Real text lovers have an appreciation of typography and don't ignore the whole field and stay in the dirt with crude "monospace everything" approach.

If anything text lovers prefer GUIs for their proper rendering. Imagine if books looked like TUIs.

Re: Strace-ui, Bonsai_term, and the TUI renaissance

#67

I don't really get the TUI craze. Would love it if someone has some perspective that I'm lacking. Display technology has seen so much progress in the past decades. Apple marketing has taught us about "Retina" displays with pixels so small that you can't tell them apart without a microscope. We get these very rich and colorful desktop environments but we actively decide to not use any of that. Now, I get that a TUI ca…

It's because of AI agents. People can talk about the other benefits all they want, but this is the real reason. Agents can use TUIs natively with basic written instructions, which is why they are exploding in popularity.

Re: Strace-ui, Bonsai_term, and the TUI renaissance

#68
post #63

Earlier quoted context omitted.

On k8s/devops tooling: I'm building tuis.nvim [1] — Docker and Kubernetes management as Neovim buffer TUIs, built on morph.nvim [2], a react-like UI framework for Neovim. Stay in the editor (if you already use Neovim, of course) instead of switching to k9s, works over SSH, same Vim keybindings you already use. Also has plugins for Bitwarden, process management, and file exploration. [1] https://github.com/jrop/tuis.n…

To me particularly, leaving editor isn't a hassle because kitty makes it seamless. Neovim, k9s, zsh shell, agents, it feels like it's just a single IDE, and I believe that specialized tools are simpler and more robust to maintain instead of adding functionality that wasn't intended for neovim. Don't get me wrong, neovim is sufficiently flexible for this, it's just that I had too much agro with neovim extensions that…

That is a valid point of view. For me, however, I have found a huge productivity boost being able to stay in Neovim for extended periods of time. That's not to say that my way is the only right way, but the more I'm able to accomplish in Neovim, the less friction I personally experience.

Re: Strace-ui, Bonsai_term, and the TUI renaissance

#69
post #68

Earlier quoted context omitted.

To me particularly, leaving editor isn't a hassle because kitty makes it seamless. Neovim, k9s, zsh shell, agents, it feels like it's just a single IDE, and I believe that specialized tools are simpler and more robust to maintain instead of adding functionality that wasn't intended for neovim. Don't get me wrong, neovim is sufficiently flexible for this, it's just that I had too much agro with neovim extensions that…

That is a valid point of view. For me, however, I have found a huge productivity boost being able to stay in Neovim for extended periods of time. That's not to say that my way is the only right way, but the more I'm able to accomplish in Neovim, the less friction I personally experience.

Neither is mine! I'd love to give it a try sometime, but still need to crunch through https://lazyvim-ambitious-devs.phillips.codes/ because my vimfu is sorely lacking

Re: Strace-ui, Bonsai_term, and the TUI renaissance

#70

I don't really get the TUI craze. Would love it if someone has some perspective that I'm lacking. Display technology has seen so much progress in the past decades. Apple marketing has taught us about "Retina" displays with pixels so small that you can't tell them apart without a microscope. We get these very rich and colorful desktop environments but we actively decide to not use any of that. Now, I get that a TUI ca…

For me a TUI constrains the style of presentation to something reasonably good. In an era of websites with tiny light gray font on dark gray background, where scrolling is really a javascript page load, and the back arrow is not respected, I just want to simplify to something that works and is always the same and that I can read with my old eyes.

Somewhere along the way, GUIs seemingly went from economy of use to a graphical resume for the developer (or their manager).

Post reply on HN