Live data from Hacker News

Ratatui – App Showcase

ratatui.rs

171–180 of 238 posts

Re: Ratatui – App Showcase

#171

People keep asking why TUIs in Rust and the answer is because the GUI situation in Rust is dreadful: https://www.boringcactus.com/2025/04/13/2025-survey-of-rust-... Rust is simply not meant for GUI-based data design but I still want Qt in Rust. That's it. Not QML or Slint. No markup at all. None of the immediate mode things. No other languages. Definitely not GTK. I'm worried it will never happen for Rust and it will…

I just completely disagree. We have Slint, Dioxus, Tauri, Egui (best imo). If Dioxus blitz renderer takes off them it will vastly better than 99% of options for other languages

Re: Ratatui – App Showcase

#172
post #127

Earlier quoted context omitted.

No, the people making TUIs in Rust are making TUIs because they love TUIs, and because Ratatui is pretty delightful. The state of GUI frameworks in Rust is irrelevant for this purpose, because even if there existed your ideal of Qt in Rust (putting aside the debatable notion that Qt is some sort of pinnacle of design), the people making TUIs wouldn't care, because that's not what they want to make.

Also once your workflow is increasingly keyboard based (like when using a tiled window manager), TUIs just make more sense. Every GUI I replace with a TUI is one less flow-breaking obstacle where I have to suddenly reach for the mouse.

they do not, GUI is more capable of handling keyboards than TUI because terminals still have pretty dumb limitations where some modifiers aren't even visible/bindable!

Re: Ratatui – App Showcase

#173

Shameless plug of my TUI game, also built with Ratatui https://github.com/ricott1/rebels-in-the-sky

I don't know what I just got into, but I love it. Reminds me of Hattrick (the decades old soccer management sim) but with more elbow grease and panache. If you're even remotely interested, just ssh in and you're off to the races. BTW, the video at the top of the repo readme won't open on any device I own.

Ja, I know, it's a coin flip, sometimes it works :( I added a youtube link just below it, it's the demo

Re: Ratatui – App Showcase

#174
post #127

Earlier quoted context omitted.

No, the people making TUIs in Rust are making TUIs because they love TUIs, and because Ratatui is pretty delightful. The state of GUI frameworks in Rust is irrelevant for this purpose, because even if there existed your ideal of Qt in Rust (putting aside the debatable notion that Qt is some sort of pinnacle of design), the people making TUIs wouldn't care, because that's not what they want to make.

Also once your workflow is increasingly keyboard based (like when using a tiled window manager), TUIs just make more sense. Every GUI I replace with a TUI is one less flow-breaking obstacle where I have to suddenly reach for the mouse.

Well-designed GUIs can be fully keyboard operated, where the mouse-driven interface only serves as a way to educate the user about which functionality is available. I'll use Tera Term (a serial terminal emulator) as an example. If you want to start a serial XMODEM transfer, you can figure out how to do it just by clicking around the user interface. You click on "File", then "Transfer", then "XMODEM", then "Send". Once you do it a few times, you remember the layout of the menus, and can start navigating solely by keyboard. Instead of "breaking your flow" by having to reach for the mouse, you just hold down Alt and type "FTXS". This is much faster, and you learned how to do it entirely from just using the program and observing which letters are underlined in the menus. There's no need to look at a manual or help page.

Re: Ratatui – App Showcase

#175
post #128

Earlier quoted context omitted.

To be fair, TUIs are strictly worse accessibility-wise than GUIs. There's no standard to communicate TUI semantics to assistive technology, and whatever few standards actually exist (like using the cursor to navigate menus instead of some custom highlight) aren't followed. With GUIs, those standards exist, and are at least somewhat implemented by all major (non-Rust)UI frameworks.

What you say is true, but TUIs are not strictly worse than GUIs at accessibility. The fact that text is inherently more legible than graphics means that, for example, blind players can play console-based roguelikes (and do: https://www.rockpapershotgun.com/playing-roguelikes-when-you... ), and Dungeon Crawl Stone Soup even has configuration options to improve the experience for blind people: https://github.com/crawl/…

Text isn't more legible without structure, and without communicating structure, which is what various accessibility toolkits do, you don't get this supposed benefit

Re: Ratatui – App Showcase

#176

Earlier quoted context omitted.

I'm glad they contributed something fantastic to the Rust GUI system, but I don't think this is fair: EGUI is fantastic.

I have used egui in actual projects. It is slow, opinionated in a bad way, not very customizable in terms of themes, and definitely not up to date in terms of latest GUI standards. It isn’t even the best RUST GUI project by any of those metrics.

Interesting! I am using it in some complex stuff with 3D graphics (A structural biology/molecular dynamics tool), and it is a great experience. I need to compare it to GPGUI and Slint; would love to compare the pros and cons first-hand.

I love how Slint works on embedded devices too.

Re: Ratatui – App Showcase

#177
post #86

People keep asking why TUIs in Rust and the answer is because the GUI situation in Rust is dreadful: https://www.boringcactus.com/2025/04/13/2025-survey-of-rust-... Rust is simply not meant for GUI-based data design but I still want Qt in Rust. That's it. Not QML or Slint. No markup at all. None of the immediate mode things. No other languages. Definitely not GTK. I'm worried it will never happen for Rust and it will…

Why does that link redirect to a fart sound hosted on Wikipedia?

  // Vidrun, born of the sea-wind through the spruce
  // Vidrun, green-tinged offshoot of my bough, joy and burden of my life
  // Vidrun, fierce and clever, may our clan’s wisdom be yours:
  //
  //     Never read Hacker News
  // - Aphyr, "Hexing the technical interview"
  if (document.referrer.startsWith("https://news.ycombinator.com")) {
      document.location = "https://upload.wikimedia.org/wikipedia/commons/d/d4/Human_fart.wav"
  }
> https://www.boringcactus.com/assets/site.js

Re: Ratatui – App Showcase

#178
post #167

Earlier quoted context omitted.

Also once your workflow is increasingly keyboard based (like when using a tiled window manager), TUIs just make more sense. Every GUI I replace with a TUI is one less flow-breaking obstacle where I have to suddenly reach for the mouse.

Other benefits: 1. Consistent font and sizing. Pick the font you find easiest to read and set it in the terminal, now all TUI apps use it at the correct size. 2. Consistent theming. TUI apps use the same color scheme as your terminal, as your vim, etc. A consistent "desktop" is less distracting. Especially when you don't have to deal with crappy Electron apps displaying animations and ads (looking at you Discord). 3.…

And built in remote use via SSH.

Re: Ratatui – App Showcase

#179
post #127

People keep asking why TUIs in Rust and the answer is because the GUI situation in Rust is dreadful: https://www.boringcactus.com/2025/04/13/2025-survey-of-rust-... Rust is simply not meant for GUI-based data design but I still want Qt in Rust. That's it. Not QML or Slint. No markup at all. None of the immediate mode things. No other languages. Definitely not GTK. I'm worried it will never happen for Rust and it will…

No, the people making TUIs in Rust are making TUIs because they love TUIs, and because Ratatui is pretty delightful. The state of GUI frameworks in Rust is irrelevant for this purpose, because even if there existed your ideal of Qt in Rust (putting aside the debatable notion that Qt is some sort of pinnacle of design), the people making TUIs wouldn't care, because that's not what they want to make.

Anecdotal evidence here. My use-case needs some UI, but a full blown GUI is way, way overkill.

I am building tooling around "Verifiable Credentials" (the W3C standard, OpenID standard, and all the standards around and below it).

So me and my co-workers need tools to check JWTs, resolve DIDs, generate Proof of Possession, .well-known contents and services discovery, do OpenId Connect flows, interpret "offer requests", "presentation requests", QR-codes, etc. It started as a bucket of random commandline things that random devs whipped up when needed (in typescript, python, bash, rust, some PHP), and now slowly consolidated into a consistent "toolkit". I am currently still porting most of these tools to Rust and make their CLI interface and IO consistent.

But from there I'll be adding a TUI very quickly.

By no means meant as "end-user" software - those exist and called "wallets". But for developers and devops working in this niche. These don't need a GUI. I'd even wager these users don't want a GUI but prefer a TUI, but in any case, the TUI is just so much easier and more accessible for me as a dev that it's the choice between a TUI+CLI or no UI, just CLI.

Re: Ratatui – App Showcase

#180
post #50

Earlier quoted context omitted.

Godot is neat for personal tool-making where I just need a small gui with basic controls and can express the whole proggie in just GdScript (API has sufficient OS interactions for most needs), I just whip it out for those when I otherwise don't really use it anymore, just keeping it around for that. Stuff like that: https://postimg.cc/VJc0pWbB

Godot is a heavy dependency for making small tools, no?

Release build of such a Godot-built tool is between 60-70 MB. Other than that, it seems fast enough & RAM-friendly enough for the usual simple use-cases. Game engines tend toward self-optimization over time.
Post reply on HN