Live data from Hacker News

Building a TUI is easy now

hatchet.run

191–200 of 262 posts

Re: Building a TUI is easy now

#191

Earlier quoted context omitted.

How many developers are using VSCode? How does that number compare with Emacs/Vim? In many ways, GUI was developed as the natural evolution of TUI. X server, with its client-server architecture, is meant to allow you to interact with remote sessions via "casted" GUI rather than a terminal. Countless engineers spent many man-hours to develop theories and frameworks for creating GUI for a reason. TUI just got the nosta…

> How many developers are using VSCode? How does that number compare with Emacs/Vim? How many people eat microwave meals? How many eat gourmet Michelin star dishes? I don't care "how many use VSCode". My argument Emacs/Vim have great, well loved TUIs. And they are used by a huge number of the most respected coders in the industry. Whether a million React jockeys use VSCode doesn't negate this. > Countless engineers s…

The vast majority of people don't use the Emacs TUI and it is explicitly recommended to use the GUI.

Re: Building a TUI is easy now

#192
post #181

Earlier quoted context omitted.

React is not, and has never been a "state management backend". There are about a million other ways of doing state management than retrofitting it into both React and TUI. Parent comment talks about using React for reconsilliation which is React-speak for "we take a diff between current state of UI and new state of UI, and apply that diff". Which is entirely unnecessary not just for TUIs, but for the vast majority of…

That post doesn't say that it takes 16ms to create a scene and have the terminal rasterize and try and present it. That's just the budget they have. It is the upper bound they have to work with. For example Claude Code could emit a strange symbol and if the terminal has to go and load a font from disk to be able to rasterize something that can eat into the budget and prevent the terminal from having a smooth frame ra…

> That post doesn't say that it takes 16ms to create a scene and have the terminal rasterize and try and present it.

So they literally take 16ms to rasterize just a few hundred characters on screen. Of those, 11ms are spent in "React scene graph", and they have 5ms to do the extremely complex task of rendering a few characters.

16ms is an eternity. A game engine renders thiusands if complex 3D objects in less time. You can output text to terminal at hundreds of frames per second in Javascript: https://youtu.be/LvW1HTSLPEk?si=G9gIwNknqXEWAM96

> and if the terminal has to go and load a font from disk to be able to rasterize something that can eat into the budget

Into which budget? They spend 11ms "laying out a scene" for a few hundred characters. "Reading something from disk" to render something is a rare event. And that's before we start questioning assumptions about read speeds [1], whether something needs to be rendered in a TUI at 60fps etc.

[1] Modern SSDs can probably load half of their contents into cache before you even begin to see the impact on frames. Unless it's a Microsoft terminal for which they claim they need a PhD to make it fast.

Re: Building a TUI is easy now

#193
post #88

Alex, It's somewhat ironic that a web page about performant terminal user interfaces uses gratuitously complex CSS mask compositing and cubic gradients which reduce smooth scrolling on my 1 year-old, high-end Dell XPS laptop (>$3k) to Commodore 64 level (on default 'Balanced' battery mode). While it's pretty , it's also just a very subtle, non-critical background animation effect. Not being a CSS guru myself, here's…

> to Commodore 64 level That’s unfair to C64 which can smooth scroll very well.

Exactly! The C64 could control where the beam started painting. To move the screen a pixel you just wrote the the x and y offsets to two 8-bit I/O registers. Only after scrolling 7 or 8 pixels you had to copy memory around. I was relatively easy to get this right smoothly and since everything was in sync with the beam it was easy to make tear free.

Shaking effects that did not require memory copy were even easier.

Re: Building a TUI is easy now

#194
post #145

Earlier quoted context omitted.

> How many developers are using VSCode? How does that number compare with Emacs/Vim? How many people eat microwave meals? How many eat gourmet Michelin star dishes? I don't care "how many use VSCode". My argument Emacs/Vim have great, well loved TUIs. And they are used by a huge number of the most respected coders in the industry. Whether a million React jockeys use VSCode doesn't negate this. > Countless engineers s…

The analogy mostly makes a point for snobbishness, but otherwise doesn’t really work. Most people would rather eat meals prepped by a Michelin star cook, but they can only afford microwave meals - whereas EMacs/Vim and VSCode are equally accessible to anyone.

I love emacs but would never compare that with a Michelin meal! On the contrary, emacs is the DIY option that lets you experiment with whatever ingredients you please without judging your choices!

Re: Building a TUI is easy now

#195
post #127

Earlier quoted context omitted.

I've use Claude to make myself a number of little tools and weird apps that only I would want lately. They need to be cross-platform between Linux and Mac and sometimes Windows. The best approaches I've found are Tauri (+Svelte for making layout easier) for lightweight GUIs but for anything more complex I prefer a TUI. The Ratatui framework works very well. A TUI feels like a "real" app as opposed to a glorified webp…

> A TUI feels like a "real" app as opposed to a glorified webpage. Huh? "Feels"? Plenty of Electron/Tauri apps feel perfectly normal. Like I've been saying, the TUI craze is just a fad.

A TUI app feels like a native terminal app like I have used for my entire computing life, in DOS and then Linux. Electron apps feel like web apps no matter how good they are. I stopped using 1Password when it became an Electron app and became super janky. Discord, Slack, VS Code, the Signal desktop app, all suck UI-wise compared to actual native Mac apps, which even with Liquid Ass, are still better than using web technology for desktop apps. I know that lowest common denominator cross platform apps make economic sense to develop, whatever. They still suck to use.

Re: Building a TUI is easy now

#196
post #145

Earlier quoted context omitted.

> How many developers are using VSCode? How does that number compare with Emacs/Vim? How many people eat microwave meals? How many eat gourmet Michelin star dishes? I don't care "how many use VSCode". My argument Emacs/Vim have great, well loved TUIs. And they are used by a huge number of the most respected coders in the industry. Whether a million React jockeys use VSCode doesn't negate this. > Countless engineers s…

The analogy mostly makes a point for snobbishness, but otherwise doesn’t really work. Most people would rather eat meals prepped by a Michelin star cook, but they can only afford microwave meals - whereas EMacs/Vim and VSCode are equally accessible to anyone.

>Most people would rather eat meals prepped by a Michelin star cook,

You'd be surprised. Most people can't eat anything adventurous or out of the junk-food category with some comfort food staples thrown in.

Re: Building a TUI is easy now

#198
post #150
post #101

Earlier quoted context omitted.

> How many developers are using VSCode? How does that number compare with Emacs/Vim? Perhaps I'm in some sort of "TUI bubble", but I'd bet good money that Emacs/Vim users outnumber VSCode users by an order of magnitude. But maybe I'm just surrounded by *nix devs.

No need to guess, the SO survey is probably still representative of the state of development environments: https://survey.stackoverflow.co/2025/technology#1-dev-id-es Note that respondents may use multiple tools, but around 76% answered VSCode, whereas 24% answered Vim. So, I’d wager you’re indeed in a *nix bubble.

It's more indicative of the state of SO users.

Care to bet even those 24% vim devs code circles around the VSCode ones?

Re: Building a TUI is easy now

#200
post #165

Alex, It's somewhat ironic that a web page about performant terminal user interfaces uses gratuitously complex CSS mask compositing and cubic gradients which reduce smooth scrolling on my 1 year-old, high-end Dell XPS laptop (>$3k) to Commodore 64 level (on default 'Balanced' battery mode). While it's pretty , it's also just a very subtle, non-critical background animation effect. Not being a CSS guru myself, here's…

While I agree with your point, I don't understand why you added: > here's what Gemini says Surely, if people care to see LLM generated text, they can do it themselves.

It's a clearly marked quote that adds more details. It's perfectly fine.
Post reply on HN