Comment by torginus
23 days ago
I think people overestimate the necessity of 'high level' conveniences or the difficulty of writing C/C++ to the metal.
For example, take Dear.IMGUI which is a c++ UI framework with a kind of data binding, which generates vertex buffers which can be directly uploaded to the GPU and rendered.
It supports most of the fancy layout stuff of CSS afaik (flexbox etc), yet its almost as low level as it gets.
The code is also not that much harder to write than React.
I think it's easier to write than React! (And remember, I did React professionally for many years.)
People assume that surely the pile of high-level languages and frameworks will actually result in a better experience. But Dear Imgui or Clay are genuinely easier to use, easier to iterate in, and faster too. This is why I think it's so unhelpful to focus on the position in the stack: Dear Imgui is a better high level tool than React, despite being "low level" by modern expectations!
You give up on hot reloading when using dear imgui and C++, though. There's nothing comparable to Vite in most ecosystems for building desktop programs, as far as I'm aware.
Tooling is the problem, I've used imgui and it's pretty good. But not nearly as practical for prototyping UI.