Comment by lionkor
2 months ago
Slightly OT, but the next logical steps include, in no particular order:
- frameworks for tui development, including react-like DOM shit
- further ad-hoc specs building on top of ANSI escape codes for finer control
- maybe a scripting language
> frameworks for tui development
https://github.com/ratatui/awesome-ratatui
GL accelerated TUIs.
> - frameworks for tui development, including react-like DOM shit
React-ncurses FTW
I've been working on exactly this with morph.nvim [1] — a React-like component model (h(), component lifecycle, reconciliation, extmark-based styling) for building declarative TUIs. It uses Neovim as a base, which might seem like an odd choice, but Neovim gives a lot out of the box that most TUI frameworks don't: syntax highlighting, extmark tracking (i.e., editable regions that feed back into the component state — type in a filter and the UI re-renders around it), and navigation that Vim users already know without learning yet another keybinding layer. Built on top, tuis.nvim [2] ships real plugins — Docker, K8s, Bitwarden, process manager — all as native Neovim buffer TUIs. No Electron, no separate app window, runs over SSH.
[1] https://github.com/jrop/morph.nvim [2] https://github.com/jrop/tuis.nvim