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.
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.
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.
Apparently we now write desktop applications intended for designing the UI of other desktop applications, in TypeScript that runs in a Docker container, using a bunch of web frameworks (including for CSS) and self-hosting an nginx server?
I would have expected a TUI editor to be itself a TUI.
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!
Vibe-coded trash, even says so in the Readme. Not sure why this gets voted to the frontpage.
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?
What is the point of having this if code generation is not functional yet? That is the entire point of this app.
In this age, rich TUI's feels wrong to me. Tools that expose a minimal web server with a lightweight UI is much more welcome than a complex TUI. But for most interactive terminal apps, it feels more natural when there is a single input at a time, like a wizard interface.
This looks really cool. However, the current AI models are pretty good at designing UIs from prompts and even turning screenshots of mocks into full UIs. I'm not sure this visual design approach would save time vs simply prompting an AI agent.
That being said, I could see a niche market for a designer persona who is used to building in tools like figma.
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.
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.
I find the search [2] also helpful.
For exports, it is missing the ultimate: Borland Turbo Vision, the Rolls-Royce of TUI frameworks.
Why are these things being built on web technologies? There's loads of "modern" terminals that use typescript etc. to me terminal means lower level.
Also wheres the Linux version? You've Mac, windows, and docker. When someone says terminal to me I default to Linux.
On one hand this is a neat idea. I've thought about how nice it would be to have a visual layout tool for text-based designs. The current offerings are slim. Of course, you could easily argue that if you need a visual tool for it, you've gone too far; even the most sophisticated TUIs are still extremely simple.
On the other hand, for this work as they describe, it needs to be a complete UI framework across a bunch of languages and built on top of a bunch of existing frameworks. That seems... ambitious. Building one UI framework for one language is plenty hard enough.
Half surprised there's no raratui export with the other options. That said, probably lends itself more to Ink and @opentui/react. Also slightly disappointed at the lack of a direct Linux build for AppImage and/or Flathub. Also not using Github's releases which is a little curious.
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?
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.
The lack of accessibility of TUIs is not great in general.
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
A UI design tool for TUIs -- made with Electron?... fun times!
Look up Visual Basic for Dos for a surprisingly good TUI editor!
So we’re going full circle here right? Can’t wait for the first TUI MVC/MVVM/MVP/M-whatever framework to show up.
The TUI-vs-GUI debate in the comments is probably not the most useful frame. The practical question for something like this is whether the exported code models terminal layout constraints correctly. Textual and Ratatui both use constraint-based layout, not absolute positioning, and a designer that works in pixel coordinates will produce UIs that look right at one terminal size and fall apart at others. Has anyone tested an export against real usage?
TUIs built today should be usable by AI agents. I'm not sure exactly what it looks like but I'm imagining that every UI view has an associated CLI command that can yield precisely that view. Maybe like formally structured breadcrumbs, or maybe like Emacs "keyboard macros".
Nope, check out something like wiretext, look at this example I put together very quickly
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.
I built something like this in 1993, it was used to design layouts for DOS apps and headers for printed listings. Imitating the BorlandPascal and Novel TUIs of the day
Somewhat related: Tachikoma.jl can do windows inside a terminal UI. https://discourse.julialang.org/t/ann-tachikoma-jl-a-termina...
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.
Have been spending so much time in the terminal lately for the first time in my life (non-developer here) that made this for fun to spruce it up: https://github.com/dvelton/terminal-profile-studio
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.
The hardest part of TUI development has always been the layout model, not the widgets. Most people start with absolute positioning and then discover their terminal is 80x24 on the CI server. A visual designer is useful if it outputs layout constraints rather than fixed coordinates. Otherwise you end up with UIs that only work at one terminal size.
Missing Ratatui[1] support.
> 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".
Guess who's back, back again?
VB's back, tell a friend.
For {root} sake I'm a designer. Mostly all the code has been written by Claude and ad latere.
The one thing these always miss is image protocols. Do you plan to support terminal image protocols like sixel, kitty image protocol, etc.?
tip: your git repo's description (not readme, repo description) does not link the website. It should.
Gotta say I did sort of expect this to be a TUI app itself.
This looks really cool. Is the use case of getting an LLM to respond with custom TUIs something you have thoughts about?
That's cool. I literally vibed something similar a month ago for myself!
I wonder if one of the LLMs could generate code from a screenshot of a layout designed by this.
There's something incredibly ironic about a visual tool for designing TUIs...
We got a RAD IDE for terminals before GTA6 and before anyone sensibly makes a replacement for Electron. Wild.
This is really cool though.
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.
The irony that a TUI studio is not written as a TUI...
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.
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?