Presumably preference of their users. From what I know, other than for cursor, the GUI interfaces are less popular than the TUI ones. Personally I also did not expect that I would really like the TUI experience, but it's hard for me to switch away from it now because it has become so central to my workflow.
It's easier to ship a TUI app cross-platform, the constraints around UI and state are often simpler, and some good libraries/frameworks (e.g. [1][2]) exist to make a modern-looking UX.
I considered a GUI for a small Python project of mine, but couldn't find anything quick, simple, and portable. I ended up opting for a TUI with a few ASCII art boxes.
Because making a decent GUI is harder than making a decent TUI. Also TUIs give you some nice things for free like working over SSH easily, but I suspect the lower dev effort is the big thing.
I'm not a TUI developer but I'm about to become one after my experience with Tauri on a simple project. But focus on why I'm a TUI user. Maybe these reasons are why people develop TUI apps:
* Speed: Work gave me an i5. It has lots of RAM after I begged for it, but it's pretty slow. Having TUI apps for programming (vim+aider-ce/opencode), git wrangling (lazygit), music (pyradio), etc. saves a ton of RAM and cpu for me.
* Availability: I use yakuake as my main terminal, so when I don't need those apps they aren't cluttering up my desktop, but when I need them they are immediately available with a tap to F-12. No matter what desktop I'm on, there's my workspace.
* Configurability: Most of these apps are ridiculously theme-able, and that's really fun.
* UX: Most of the apps I use use vim bindings. That makes it super easy to get around. I rarely have to touch a mouse.
* Simplicity and portability: My coworkers spend at least a day setting up a new laptop. Yeah they're probably milking it but I'm up and running in a few hours.
* Potential: I've barely touched the surface, but I think there's a lot of compartmentalization of projects to be done with multiplexers like tmux that would be difficult-to-impossible to do with regular GUIs.
* Speed: Apps start and stop in fractions of seconds vs watching a spinner go 'round
* Cool factor: My girlfriend thinks I'm pretty disgusting when she sees how many browser tabs I have open but she thinks I'm pretty hawt when she sees how many terminal tabs I have open.
the_mitsuhiko|2 months ago
thomascountz|2 months ago
[1]: https://github.com/charmbracelet/bubbletea
[2]: https://github.com/Textualize/textual
zdc1|2 months ago
spencerchubb|2 months ago
Claude Code seems neither quick nor simple
yjftsjthsd-h|2 months ago
MangoToupe|2 months ago
electroglyph|2 months ago
troyvit|2 months ago
* Speed: Work gave me an i5. It has lots of RAM after I begged for it, but it's pretty slow. Having TUI apps for programming (vim+aider-ce/opencode), git wrangling (lazygit), music (pyradio), etc. saves a ton of RAM and cpu for me.
* Availability: I use yakuake as my main terminal, so when I don't need those apps they aren't cluttering up my desktop, but when I need them they are immediately available with a tap to F-12. No matter what desktop I'm on, there's my workspace.
* Configurability: Most of these apps are ridiculously theme-able, and that's really fun.
* UX: Most of the apps I use use vim bindings. That makes it super easy to get around. I rarely have to touch a mouse.
* Simplicity and portability: My coworkers spend at least a day setting up a new laptop. Yeah they're probably milking it but I'm up and running in a few hours.
* Potential: I've barely touched the surface, but I think there's a lot of compartmentalization of projects to be done with multiplexers like tmux that would be difficult-to-impossible to do with regular GUIs.
* Speed: Apps start and stop in fractions of seconds vs watching a spinner go 'round
* Cool factor: My girlfriend thinks I'm pretty disgusting when she sees how many browser tabs I have open but she thinks I'm pretty hawt when she sees how many terminal tabs I have open.
dc_giant|2 months ago
[deleted]