If you're going to put a video demo on your main webpage, can it have play/pause and a control bar? So I can actually skip to a part I want to look at. Here's the actual video: https://tui.studio/screenshots/video.mp4.
Also, how does this handle terminal resizing? Are there options to anchor elements to the left/right etc, or will narrowing the terminal window just make everything fall off the side, or worse, all the text wraps?
sorenjan 22 minutes ago [-]
You can right click on it and choose "Show controls", at least in Firefox.
voidUpdate 18 minutes ago [-]
Oh, that's odd, it didn't show up on chrome when I first tried it, but it does now. I was wondering how they'd managed to hide the video context menu
stanac 10 minutes ago [-]
It's probably just <video> element without "controls" attribute.
> If this attribute is present, the browser will offer controls to allow the user to control video playback, including volume, seeking, and pause/resume playback.
Edit: I misunderstood, you are asking
> how they'd managed to hide the video context menu
Not sure, but it works in FF for me
voidUpdate 6 minutes ago [-]
Its entirely possible I did something to it accidentally that made the context menu not work properly. I had the dev tools open to pull the actual video address when I right clicked, so I might have messed something up. Or maybe the devs are secretly looking at the comments and fixed it between me and you trying :P
sam1r 3 minutes ago [-]
It won't let me reply to parent's child comment, but i wanted to say:
That is what HN is for!
eterps 3 hours ago [-]
This is nonsensical, there is nothing textual about the UIs being shown here. It doesn't stop being a GUI if you have a 1:1 representation of the concept within character cells.
The UX actually matters, and TUIs are generally built for effectiveness and power (lazygit being an excellent example). But once you start adding mouse clickable tabs, buttons, checkboxes etc. you left the UX for TUIs behind and applied the UX expected for GUIs, it has become a GUI larping as a TUI.
dec0dedab0de 1 hours ago [-]
It's a TUI if it uses text to build those elements.
You can be effective and powerful in any kind of interface, Just like you can be ineffective and weak in any kind of interface. People like TUIs because they're cool, and work over SSH.
jvanderbot 57 minutes ago [-]
Yes.
A TUI runs in a text session.
A GUI runs in a graphics session.
A terminal emulator emulates a text session in a graphics session - and allows you to run TUI/CLI tools.
This is apparently controversial?
reaperducer 1 hours ago [-]
It's a TUI if it uses text to build those elements.
No. All you've done is make a low-resolution GUI.
drakythe 55 minutes ago [-]
TUI means "Terminal User Interface" or "Text User Interface"
A GUI that is built with Text, and intended to be used in a Terminal, is what a TUI is, colloquially AND definitionally.
What do you think qualifies as a TUI?
reaperducer 23 minutes ago [-]
I've been using TUIs since PR1MEOS mini-mainframes in the early 1980's, I know what I'm talking about.
The issue is not the text. It's the WIMP interface.
gambiter 1 hours ago [-]
Yeah, that's the point. Why did you think you needed to say it?
It's a GUI that works over SSH. There is a very valid use case for that.
sumnole 1 hours ago [-]
The UIs are text only, so they are textual. Modern TUIs may support mouse events. That this tool can export to several TUI frameworks is evidence that these UIs are indeed TUIs, even if not the most traditional.
jmmv 1 hours ago [-]
“Modern TUIs may support mouse events” hah! They already did in the 80s…
No, a text-based UI is not sufficient. It must also work in a text-only session e.g., on the CLI over SSH.
627467 29 minutes ago [-]
Do UIs exported from this tool not worknon CLI over SSH?
elxr 47 minutes ago [-]
> That this tool can export to several TUI frameworks
It clearly cannot. Have you even tested it?
papageek 37 minutes ago [-]
This? Alpha notice: Code export is not functional yet. We're actively working on it — check back soon.
elxr 31 minutes ago [-]
Exactly, don't know why people are acting like actually makes TUIs, it's just a rough mockup of a TUI for now, with a convoluted figma-like UI.
I guess the headline and website was enough to get all these upvotes. Quite disappointing as someone in the early stages of making a TUI tutorial myself.
JodieBenitez 22 minutes ago [-]
I like TUIs keyboard-centric. Mouse can be a plus, but it should never be necessary.
Trufa 39 minutes ago [-]
I think your comment is nonsensical.
Zellij among is a great example, I can do everything with my keyboard, but every now and them I'm already with the mouse and just click a tab or pane, no functionality lost, just added, why the need to make a cutoff philosophical/semantic hard argument?
PurpleRamen 1 hours ago [-]
> there is nothing textual about the UIs being shown here.
Well, except:
> a 1:1 representation of the concept within character cells.
TUI is build from text, and living within its constraints and what it's engine (usually the terminal) allows. GUI is build from graphics, and has basically a pixel perfect control of its own. This is a very notable difference, especially at the time when these terms were coined.
> TUIs are generally built for effectiveness and power
No, this is a result of different architectures and their constraints.
> But once you start adding mouse clickable tabs, buttons, checkboxes etc. you
TUI and mouse are predating the GUI (more or less). We had them already 40-50 years ago at the dawn of interfaces. We are now just moving back to them for practical reasons.
cmrdporcupine 3 minutes ago [-]
Man, I've had so much frustrating just trying to copy & paste from inside a terminal running e.g. opencode or crush.
I think TUIs are neat, I guess. But I think these things have abused the concept extensively. They don't actually interact well with the rest of a Unix environment.
banach 3 hours ago [-]
One justification for TUIs is remote access over SSH.
theowaway213456 2 hours ago [-]
You can tunnel a port over SSH and get a web UI locally, though it's not commonly done. I feel like more people would actually do this if tunneling a port was just ever so slightly easier (like, you're already SSH'd into a box, then you run a command, then you somehow automatically get a tunnel for that command's UI port plus a local browser window open to the page)
jasongill 2 hours ago [-]
While in an SSH session, press enter, then type tilde and capital C (enter ~C) and you can add command line options to the current session. To add a port forward from your local 8080 to the remote port 80 without closing the connection, do:
enter ~C -L 8080:localhost:80
dylan604 43 minutes ago [-]
Maybe it's just still too early in the morning yet, but what is the significance of hitting enter first?
jasongill 30 minutes ago [-]
SSH expects the escape sequence (tilde) to be the first character on a new line; since backspace is sent as a character, you can't just backspace over something you've started typing and then press tilde to have it recognized.
Technically, you don't have to press enter if you've not typed anything (try it in a new SSH session - as soon as you are logged in, type ~? to get the SSH help output), but since the comment was about doing this during an active session without ending it, I figured noting that pressing enter first to be sure you're on a new line wouldn't hurt
zimpenfish 1 hours ago [-]
That is a neat trick. Added to the list.
(Ultimately unhelpful though because I use mosh everywhere these days and that doesn't appear to have anything fancy like this.)
yoz-y 1 hours ago [-]
I like TUIs because I run everything in tmux and I can just pick up work from wherever I was on any computer, phone or tablet.
roywiggins 2 hours ago [-]
Even easier is just using an X server, if you have it set up properly you just need to run the remote app and the window pops up on your machine.
(I think terminal-based GUIs are neat just for fluidity of use- you can pop one open during a terminal session and close it without switching to mouse or shifting your attention away from the terminal. They can also be a nice addon to a primarily CLI utility without introducing big dependencies)
wolvoleo 1 hours ago [-]
Yeah I love that about X. I remember in the 90s when I first figured that out. I was logged in from a university workstation into my home computer with SSH and I launched my mail client or something and I thought doh, stupid that will only popup locally.
Then colour my suprise when it popped up on my screen right there. Slow as molasses but still. Wow. Magic.
It's a shame Wayland dropped this. Yes I know there's waypipe but it's not the same.
coldpie 1 hours ago [-]
> It's a shame Wayland dropped this.
It... really isn't. Like you said, remote X was barely usable even over an entirely local network. Most applications these days are also not designed for it, using loads of bitmap graphics instead of efficient, low-level primitives. So you end up being just one tiny step away from simply streaming a video of your windows. We have better tools for doing things remotely these days, there's a reason approximately no one has used remote X after the mid-90s. It's a neat party trick, but I don't blame the Wayland authors for not wanting to support it.
duskdozer 44 minutes ago [-]
Like what? X forwarding has pretty much always been the thing most likely to work for me and I haven't been able to find any equivalent.
coldpie 37 minutes ago [-]
The big obvious one is web-based tooling. Your information & settings are stored on a server and you use a web browser to view it via whatever device you're on. For more locally based workflows, we have networked filesystem protocols, automatic syncing between systems, that kind of thing. It's not a 1-1 equivalent of running a remote program and viewing it locally obviously, but it gets the same job done, in a much more useful & flexible manner than X forwarding did.
For example, the remote mail client usecase I was replying to is simply done with a webmail client today.
duskdozer 8 minutes ago [-]
I don't really feel like web interfaces or syncing are really a substitute tbh, and I'm not sure how they're more flexible. ssh -> run -> gui opens, and the program itself doesn't need to be designed differently to work
wolvoleo 2 hours ago [-]
I do this a lot but I'd still prefer TUI where possible. With too much visual content it isn't of course, but for many cases a TUI is much more responsive and much lower resource.
surajrmal 14 minutes ago [-]
I largely agree with you, but there are limits to what a tui can do well. If analyzing a flame graph or performance trace, web UI is a better fit. However, most things are not that.
marxisttemp 1 hours ago [-]
I'd rather use a TUI than a web UI.
eterps 2 hours ago [-]
Sure, but my point was that UX matters for TUIs. A TUI with a UX that fits its paradigm , again like lazygit, works great over SSH.
2 hours ago [-]
papageek 35 minutes ago [-]
Another justification could be simply some people like using them better.
injidup 57 minutes ago [-]
lazygit supports vim style keybindings and mouse click and scroll. I mostly use the key shortcuts but sometimes the mouse is useful. But i agree that a well thought out state machine that can be navigated through via keyboard is a dream to work with. Lazygit is superb. But this is not a distinction between TUI and GUI.
jvanderbot 1 hours ago [-]
The distinction is - if it runs over ssh (no x / graphics login) or on a headless machine - TUI
If it requires graphics login, even if it uses character layouts - GUI
IMHO the T/G is not for the display elements, it's for the type of session.
tgv 26 minutes ago [-]
Not to put too fine a point on it, but X11 runs over ssh just fine. No "graphics login" required.
criddell 1 hours ago [-]
Would you make the same argument for classic UIs created with things like Borland's Turbo Vision framework? It's generally known as a TUI framework (including by Wikipedia).
whiteboardr 34 minutes ago [-]
As a german, I say:
UIUIUI
clickety_clack 2 hours ago [-]
Drawing a “nonsense” line between TUIs and GUIs is pretty arbitrary, it’s all pixels on a screen at the end of the day. People like the TUI vibe, and that’s a good enough reason to make and use them.
tartoran 55 minutes ago [-]
I love TUIs but one main reason for that is that they're keyboard centric. If I have to use the mouse it kills it for me, if both work then it's fine. I hope that modern TUI makers keep this in mind. What's great about the keyboard centric is that with a few keystrokes/shortcuts it's very easy to do repeatable work and takes less energy than hunting boxes to click on with the mouse.
eterps 1 hours ago [-]
I actually agree with that. And I enjoy the fact that TUIs are becoming popular. But there is more to it than just the 'vibe'.
clickety_clack 1 hours ago [-]
The vibe might not be a necessary reason, but it is a sufficient one.
mikkupikku 2 hours ago [-]
Bitch please, mouse events work over SSH just fine and enabling that virtually the only legitimate reason, other than style and fashion, to make a TUI instead of a real GUI. Since the whole point of a TUI is to show off your "hacker man" aesthetic, the more fancy features you can cram into it the better. Mouse clickable tabs isn't even very exotic, vim and emacs both have it, even htop has it, I wouldn't count it as fancy and just table stacks for any modern TUI.
eterps 2 hours ago [-]
If you think the 'mouse-clickable' aspect is bothering me, you missed my point entirely.
bonoboTP 44 minutes ago [-]
That's the only concrete thing you mentioned. By that criterion, htop isn't TUI.
2 hours ago [-]
vidarh 2 hours ago [-]
I really don't want my TUI's to look like GUI's rendered in low res. The appeal to me of a TUI is that it is built specifically to be a TUI, and that means eschewing complexity and detail, and favouring compact text.
2 hours ago [-]
jbstack 2 hours ago [-]
Interesting idea, but:
> Design once, generate production-ready code for your framework of choice. Switch targets without touching your design. Alpha notice: Code export is not functional yet. We're actively working on it — check back soon.
In other words, it isn't at all usable right now. You can't produce a TUI with it, not even a limited one.
cestith 49 minutes ago [-]
You can still design the layout. That’s useful, but not nearly as useful as they are planning.
TrevorFSmith 15 minutes ago [-]
This is a vibe coded app and isn't what I'd want but still, it's interesting to consider what a good implementation of "Figma for TUIs" could be, especially if it avoids the trap of simply treating the console as a crude raster instead of taking advantage of text and keyboards. IMO we don't need WIMP GUI shoved into terminal emulators.
pelcg 18 minutes ago [-]
If you want inspiration on all kinds of TUIs on show and display Terminal Trove [1] is useful to get an idea for what other tools look like.
Vibe-coded trash, even says so in the Readme. Not sure why this gets voted to the frontpage.
bonoboTP 40 minutes ago [-]
Better get ready for almost all software to use AI assistance in its creation.
You can build great things using AI agents, and you can build trash.
Your ideological opposition to that is not shared by as wide a percentage of developers as you may think based on some highly self selected online corners.
sunaookami 6 minutes ago [-]
Way to read something into what I have never even wrote and try to spin it as something ideological. This is not "AI-assisted", it's completely vibe-coded by AI and the software doesn't even make sense since you can't export anything. It's just low-quality trash dumped on Hacker News and I'd argue this is not the place for it.
slopinthebag 30 minutes ago [-]
Of course you can build great things with AI, but trash written by AI is worse than trash written by a human, and some things are just trash.
stldev 22 minutes ago [-]
Ignore the haters. This is an excellent idea, I'm getting some old Borland vibes. Keep it up, can't wait to see where it goes!
sabas123 2 hours ago [-]
What is the point of having this if code generation is not functional yet? That is the entire point of this app.
The TUI hype seems like nostalgia for COBOL mainframe apps that most people have never even used. A sort of secondhand cyberpunk role play with zero focus on actual UX.
Also if TUIs are so great, why isn't this a TUI app?
spiffyk 24 minutes ago [-]
Funny how you can tell a project is vibe-coded just from a first glance at its website. All these websites seem to somehow have the same visual style. Anyone noticed this?
duskdozer 6 minutes ago [-]
Yep, my fans started revving as soon as I loaded it. Animations are out of control on the normal web as it is, but genAI sites take it to another level.
spiffyk 32 seconds ago [-]
That, too, though I'm sure that particular problem is mainly because of the textual animation in the background.
fidotron 3 hours ago [-]
This is going to end up with TUIs that resemble old BBS ANSI art, such as https://16colo.rs/
It completely misses the reason people like current TUIs.
drob518 1 hours ago [-]
I agree. The animation on the site lost me when it placed a button. IMO, buttons are not part of TUIs. Those are just low-resolution GUIs, IMO, and that’s sort of the worst of all worlds. The first good TUIs were things like top and elm.
genxy 23 minutes ago [-]
ENSHT comes for everyone. This is sexual selection over natural selection. Claude Code also gets this wrong, they got way to fancy and ruined what a good tui is by being an uncanny combo between a scrolling log and a completely rewritten canvas.
lsaferite 3 hours ago [-]
FWIW, I still love to see the old BBS UIs and ANSI art. But that's probably just nostalgia talking.
calgoo 2 hours ago [-]
FYI LLMs are great at generating the ascii art, so you can create real fun games and TUIs that look like old school BBSs.
fidotron 1 hours ago [-]
We can remain grateful the kids haven't discovered how to use figlet in HN comments.
__mharrison__ 7 minutes ago [-]
The irony that a TUI studio is not written as a TUI...
> The lack of accessibility of TUIs is not great in general.
Interesting. In what ways? I haven't heard anyone express this concern before.
jiehong 19 minutes ago [-]
Depending on how the TUI is made, it can be very visual, but lacks structure for a screen reader (unless you stay in the very simple "input field: value" kind of prompt, but even then auto completion is tricky).
Web browsers offer the DOM to tools such as screen readers (OSs offer their own accessibility sdks). Someday perhaps the TUI application could talk to the terminal emulator that would itself talk to the accessibility sdk of the OS and that info would somehow then be accessible.
There was a beginning of discussion at bubble tea[0] about this for example.
TUIs seem like they should be well-suited to screen readers, but yeah accessibility is often unfortunately far down the list on average project priorities.
sorenjan 16 minutes ago [-]
I wonder if one of the LLMs could generate code from a screenshot of a layout designed by this.
anonu 13 minutes ago [-]
Claude Code built a TUI for me last night, in this case to step through nanosecond timestamped ITCH market data messages and rebuild an order book visual in the terminal. This type of stuff would have taken a day - but done in 5 minutes now.
pcmoore 3 hours ago [-]
Watched the video. Why isn't the editor a TUI itself?
jappgar 2 hours ago [-]
Because a website is easier to use and more accessible.....
elxr 1 hours ago [-]
This one is not very accessible, try using tab + arrow keys to focus anything on the sidebar.
baranguneysel 2 hours ago [-]
Great question.
injidup 53 minutes ago [-]
I'm not sure the utility of this kind of stuff anymore. It's relatively easy to sketch a layout on a napkin + prompt and then prompt claude code to use python textual as as TUI layer. I've had pretty good success with Textual+Claude so have a few colleagues. You could probably use Figma + claude etc as well.
SvenL 2 hours ago [-]
So we’re going full circle here right? Can’t wait for the first TUI MVC/MVVM/MVP/M-whatever framework to show up.
Turbo Vision and Clipper want their glory MS-DOS days back.
xvilka 59 minutes ago [-]
Nowadays we have Unicode characters and better colors though.
pjmlp 56 minutes ago [-]
MS-DOS always had better colors than UNIX, a framebuffer isn't the same a vt100.
I do agree Unicode is better than code pages, or doing alt + num pad codes.
reaperducer 1 hours ago [-]
And Ashton-Tate's Framework IV on an 8088 with a MDA display.
mihir_kanzariya 46 minutes ago [-]
The biggest pain point with TUIs has always been the design iteration loop. You're basically writing code blind, running it, tweaking numbers, running again. It's like writing CSS without a browser preview.
Something like this could genuinely help for the layout/positioning phase, even if you still hand-write the interaction logic. The debate about whether these are "real TUIs" kind of misses the point imo. Textual and Ratatui already blur that line with mouse support and rich widgets. The ship sailed on pure keyboard-only text interfaces a while ago.
What I'd actually want from a tool like this is to export to multiple TUI frameworks. Right now you're locked into one ecosystem and the code export isn't even working yet, which makes the whole thing feel premature.
sandos 33 minutes ago [-]
I would be REALLY REALLY impressed if it manages to do this without bugs. Just using pythons textual can be very complex, belive it or not. Maaging not only to that but other frameworks too sounds insanely complex. I have a strong feeling this is vibecoded from the commit history?`
Ah yes, it says clearly that on the github page. Still, if its works, I am then impressed by the LLM.
Edit: It does, in fact, NOT work for code export. Level of impressiveness massively dropped.
tim-projects 3 hours ago [-]
This is so cool I immediately wanted to convert my apps. But then when I thought about it, well it's trying to recreate CSS but in a majorly worse way.
Browsers are ubiquitous and I can just tell ai to build a web page.
I can't really see a use case other than novelty.
purerandomness 3 hours ago [-]
k9s, ncdu, htop, powertop are good showcases how a TUI reduces mental load and are superior to browsers and / or other GUI tools
xvilka 58 minutes ago [-]
More importantly, it also reduces CPU and memory load.
glhaynes 3 hours ago [-]
> No install fuss — download and start designing immediately.
also
> Gatekeeper blocks the app immediately. You'll see either "TUIStudio cannot be opened because it is from an unidentified developer" or "TUIStudio is damaged and can't be opened" on newer macOS after quarantine flags the binary.
To get past it: right-click the .app → Open → Open anyway — or go to System Settings → Privacy & Security → "Open Anyway".
mholt 3 hours ago [-]
tbf that's Apple's fault, not the choice of the free, unpaid open source developer.
glhaynes 3 hours ago [-]
Apple's fault that they didn't bother to edit the text that says "No install fuss"?
slopinthebag 28 minutes ago [-]
You mean the AI agent that was prompted to vibe code this?
gattilorenz 3 hours ago [-]
Look up Visual Basic for Dos for a surprisingly good TUI editor!
chuckadams 46 minutes ago [-]
Gotta say I did sort of expect this to be a TUI app itself.
giancarlostoro 1 hours ago [-]
We got a RAD IDE for terminals before GTA6 and before anyone sensibly makes a replacement for Electron. Wild.
This is really cool though.
drob518 1 hours ago [-]
I seem to remember having a RAD IDE for terminals with Turbo Pascal back in the 1990s. But yea, still before GTA6.
delduca 1 hours ago [-]
For {root} sake I'm a designer. Mostly all the code has been written by Claude and ad latere.
kantord 3 hours ago [-]
tip: your git repo's description (not readme, repo description) does not link the website. It should.
mcraiha 3 hours ago [-]
Also fill the Website field in About section.
_pdp_ 2 hours ago [-]
Am I the only one who thinks the recent TUI explosion is absolutely not necessary?
I mean yes, code editor are great for this but a lot of the TUIs I see are so slow it begs the question why they exist to begin. CLIs are supposed to be remixable and scriptable.
I think a better architecture would be to generally keep CLIs work like CLIs and have separate processes that add terminal rendering functionalities for those that need / want it but in general it is an anti-pattern to start from this as default.
drob518 1 hours ago [-]
Depends highly on the specific application. Take a simple example of looking at process usage. You can use ps from the command line to get all sorts of info about a process. But there’s no substitute for top to show you an updating list of top cpu consumers, which ps just can’t do.
javier123454321 1 hours ago [-]
That's roughly aligned with my thinking. Make it a CLI. And if there's a lot of configuration that you can pass to it, have an option for rendering those options as a TUI.
mikkupikku 2 hours ago [-]
Of course it's not necessary, it's a fashion. Choosing to make a TUI instead of a GUI is a fashion statement, it signals aesthetic alignment with nerdy shit and says the program isn't meant for common proles. There's pretty much nothing a TUI can do that a GUI can't do, while the opposite is very much not the case.
lagrange77 2 hours ago [-]
The background ASCII animation is so cool! Is it an actual simulation?
ksherlock 48 minutes ago [-]
Use the source Luke! It's an "ASCII plasma background" rendered into a canvas element.
varjag 2 hours ago [-]
Turbo Vision strikes back
JSR_FDED 2 hours ago [-]
One can only dream
webprofusion 2 hours ago [-]
Ha, well proof that AI let's you build anything you can imagine. Wait till I show you Remote Desktop, one day macOS and Linux will catch up.
igtztorrero 2 hours ago [-]
I want something like that, but for Bootstrap,Tailwind or Quasar
raincole 2 hours ago [-]
When your TUI is so complex that you need a GUI to design it, perhaps you shouldn't use TUI in the first place.
jbstack 2 hours ago [-]
I'm not sure that's a fair criticism. Many things require or benefit from something even more complex to make them (car -> factory, code -> IDE, text -> editor, food -> kitchen). I think the real debate here is that which is found in the other comments: do we want TUIs to look like GUIs?
jappgar 2 hours ago [-]
Why did they make a website?
worthless-trash 2 hours ago [-]
The corners of the boxes appear in the wrong place in the cell.
I don't think there is utf8 characters that allow for drawing on the outside of the cell, (happy to be wrong)
┌ (U+250C), ┐ (U+2510), └ (U+2514), ┘ (U+2518) <-- these 4 draw in the middle of the cell.
「 (U+FF62), ⌟, (U+231F), <-- these are two that cover part of the outside, but not the other corners.
「┐└」
Can anyone tells me how to get those 'corner of cell' characters, including uprights and horizontals ?
aethorn 3 hours ago [-]
The website UI is unreal, I loved the idea
kantord 3 hours ago [-]
this looks insanely cool.
One of the most original ideas I have seen on HackerNews in the past few years.
MPSimmons 2 hours ago [-]
This is like QTdesigner but for the terminal. Huh.
moron4hire 2 hours ago [-]
Anyone notice the computer image at the top of the page doesn't have the right number of keys?
elxr 2 hours ago [-]
The fact that this isn't a TUI itself is a bit disappointing.
The fact that even the preview isn't a TUI is just lame. Keyboard controls are also non-functional right now.
mipselaer 5 hours ago [-]
Amazing cool design tool for TUI's I got it running instantly and it feels stable and complete as well. Only 10 stars in GitHub.
trollbridge 2 hours ago [-]
I don’t want to be a curmudgeon, but why not just use CSS, HTML, React, etc. at this point? You could choose a style that looks like a TUI.
grilo16 4 hours ago [-]
Noice figma for terminals! Dude super cool idea, great job =D
lsaferite 3 hours ago [-]
I find it slightly annoying and disappointing that the blocks saying what frameworks it's designed to export to aren't links to those frameworks.
WhereIsTheTruth 60 minutes ago [-]
This website eats a whole CPU core
Another W from the web developers mafia
rvz 1 hours ago [-]
No idea why this is hyped up these days.
The only reason I can think of is what I said before [0] given that the web was destroyed by the same web developers, then so was the desktop (with Electron) and now of all places terminals are now getting destroyed with infinite slop like this.
This nonsense will continue and accelerate until it reaches hardware.
Also, how does this handle terminal resizing? Are there options to anchor elements to the left/right etc, or will narrowing the terminal window just make everything fall off the side, or worse, all the text wraps?
https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/...
> controls
> If this attribute is present, the browser will offer controls to allow the user to control video playback, including volume, seeking, and pause/resume playback.
Edit: I misunderstood, you are asking
> how they'd managed to hide the video context menu
Not sure, but it works in FF for me
That is what HN is for!
The UX actually matters, and TUIs are generally built for effectiveness and power (lazygit being an excellent example). But once you start adding mouse clickable tabs, buttons, checkboxes etc. you left the UX for TUIs behind and applied the UX expected for GUIs, it has become a GUI larping as a TUI.
You can be effective and powerful in any kind of interface, Just like you can be ineffective and weak in any kind of interface. People like TUIs because they're cool, and work over SSH.
No. All you've done is make a low-resolution GUI.
A GUI that is built with Text, and intended to be used in a Terminal, is what a TUI is, colloquially AND definitionally.
What do you think qualifies as a TUI?
The issue is not the text. It's the WIMP interface.
It's a GUI that works over SSH. There is a very valid use case for that.
It clearly cannot. Have you even tested it?
I guess the headline and website was enough to get all these upvotes. Quite disappointing as someone in the early stages of making a TUI tutorial myself.
Zellij among is a great example, I can do everything with my keyboard, but every now and them I'm already with the mouse and just click a tab or pane, no functionality lost, just added, why the need to make a cutoff philosophical/semantic hard argument?
Well, except:
> a 1:1 representation of the concept within character cells.
TUI is build from text, and living within its constraints and what it's engine (usually the terminal) allows. GUI is build from graphics, and has basically a pixel perfect control of its own. This is a very notable difference, especially at the time when these terms were coined.
> TUIs are generally built for effectiveness and power
No, this is a result of different architectures and their constraints.
> But once you start adding mouse clickable tabs, buttons, checkboxes etc. you
TUI and mouse are predating the GUI (more or less). We had them already 40-50 years ago at the dawn of interfaces. We are now just moving back to them for practical reasons.
I think TUIs are neat, I guess. But I think these things have abused the concept extensively. They don't actually interact well with the rest of a Unix environment.
Technically, you don't have to press enter if you've not typed anything (try it in a new SSH session - as soon as you are logged in, type ~? to get the SSH help output), but since the comment was about doing this during an active session without ending it, I figured noting that pressing enter first to be sure you're on a new line wouldn't hurt
(Ultimately unhelpful though because I use mosh everywhere these days and that doesn't appear to have anything fancy like this.)
(I think terminal-based GUIs are neat just for fluidity of use- you can pop one open during a terminal session and close it without switching to mouse or shifting your attention away from the terminal. They can also be a nice addon to a primarily CLI utility without introducing big dependencies)
Then colour my suprise when it popped up on my screen right there. Slow as molasses but still. Wow. Magic.
It's a shame Wayland dropped this. Yes I know there's waypipe but it's not the same.
It... really isn't. Like you said, remote X was barely usable even over an entirely local network. Most applications these days are also not designed for it, using loads of bitmap graphics instead of efficient, low-level primitives. So you end up being just one tiny step away from simply streaming a video of your windows. We have better tools for doing things remotely these days, there's a reason approximately no one has used remote X after the mid-90s. It's a neat party trick, but I don't blame the Wayland authors for not wanting to support it.
For example, the remote mail client usecase I was replying to is simply done with a webmail client today.
If it requires graphics login, even if it uses character layouts - GUI
IMHO the T/G is not for the display elements, it's for the type of session.
UIUIUI
> Design once, generate production-ready code for your framework of choice. Switch targets without touching your design. Alpha notice: Code export is not functional yet. We're actively working on it — check back soon.
In other words, it isn't at all usable right now. You can't produce a TUI with it, not even a limited one.
I find the search [2] also helpful.
[1] https://terminaltrove.com/
[2] https://terminaltrove.com/explore/
You can build great things using AI agents, and you can build trash.
Your ideological opposition to that is not shared by as wide a percentage of developers as you may think based on some highly self selected online corners.
Also if TUIs are so great, why isn't this a TUI app?
It completely misses the reason people like current TUIs.
Just `bun run dev`
I'd much rather terminals emulator provide a webview directly, and maybe use https://webtui.ironclad.sh/ if you really want the look.
I think it makes more sense for a cli to offer a mini webserver instead.
Think `fish_config`, but opened in the terminal directly [0].
[0]: like https://iterm2.com/browser-plugin.html
Interesting. In what ways? I haven't heard anyone express this concern before.
Web browsers offer the DOM to tools such as screen readers (OSs offer their own accessibility sdks). Someday perhaps the TUI application could talk to the terminal emulator that would itself talk to the accessibility sdk of the OS and that info would somehow then be accessible.
There was a beginning of discussion at bubble tea[0] about this for example.
[0]: https://github.com/charmbracelet/bubbletea/issues/780
[1] https://ratatui.rs/
https://wiretext.app/w/WUtjS1bk
I do agree Unicode is better than code pages, or doing alt + num pad codes.
Something like this could genuinely help for the layout/positioning phase, even if you still hand-write the interaction logic. The debate about whether these are "real TUIs" kind of misses the point imo. Textual and Ratatui already blur that line with mouse support and rich widgets. The ship sailed on pure keyboard-only text interfaces a while ago.
What I'd actually want from a tool like this is to export to multiple TUI frameworks. Right now you're locked into one ecosystem and the code export isn't even working yet, which makes the whole thing feel premature.
Ah yes, it says clearly that on the github page. Still, if its works, I am then impressed by the LLM.
Edit: It does, in fact, NOT work for code export. Level of impressiveness massively dropped.
Browsers are ubiquitous and I can just tell ai to build a web page. I can't really see a use case other than novelty.
also
> Gatekeeper blocks the app immediately. You'll see either "TUIStudio cannot be opened because it is from an unidentified developer" or "TUIStudio is damaged and can't be opened" on newer macOS after quarantine flags the binary. To get past it: right-click the .app → Open → Open anyway — or go to System Settings → Privacy & Security → "Open Anyway".
This is really cool though.
I mean yes, code editor are great for this but a lot of the TUIs I see are so slow it begs the question why they exist to begin. CLIs are supposed to be remixable and scriptable.
I think a better architecture would be to generally keep CLIs work like CLIs and have separate processes that add terminal rendering functionalities for those that need / want it but in general it is an anti-pattern to start from this as default.
I don't think there is utf8 characters that allow for drawing on the outside of the cell, (happy to be wrong)
┌ (U+250C), ┐ (U+2510), └ (U+2514), ┘ (U+2518) <-- these 4 draw in the middle of the cell.
「 (U+FF62), ⌟, (U+231F), <-- these are two that cover part of the outside, but not the other corners.
「┐└」
Can anyone tells me how to get those 'corner of cell' characters, including uprights and horizontals ?
One of the most original ideas I have seen on HackerNews in the past few years.
The fact that even the preview isn't a TUI is just lame. Keyboard controls are also non-functional right now.
Another W from the web developers mafia
The only reason I can think of is what I said before [0] given that the web was destroyed by the same web developers, then so was the desktop (with Electron) and now of all places terminals are now getting destroyed with infinite slop like this.
This nonsense will continue and accelerate until it reaches hardware.
[0] https://news.ycombinator.com/item?id=47210187