I know Godot is a game engine, not a generic GUI framework, but those text system improvements really make me want to use it for whatever my next GUI project is.
I would strongly recommend against this. Unless 4.0 is dramatically improved (and I bet it isn’t), getting a layout that works at arbitrary resolutions is a nightmare. This is especially true if you want anything at all custom visually.
Swing is better. HTML/CSS is better. Qt, from what I recall, is better.
To be fair, I haven’t really tried custom look-and-feel in Swing or Qt, but starting from a solid base where responsive layout just works seems dramatically easier than having to constantly tweak things to be in the right place at various resolutions.
I have probably spent more time on the GUI of my latest game than on all the rest of it combined. It’s entirely possible that I would have been happier learning Cordova, just so that I could have reasonable layout tooling.
That said, Godot does have a really nice workflow – your app launches instantly right from the editor. But if you don’t need game stuff, it’s not worth it.
I don’t know how you used it - from my experience containers work pretty well, even in Godot 3.x. Anchors are ok too for simple stuff, though they are mostly designed for simple HUD (which is fine for a game engine).
I use containers. And to be fair, one of the issues I hit reportedly is fixed in 4.0. Of course, when I make a test project to try to demonstrate some of the issues that I see, I can’t reproduce them. So maybe I am somehow overcomplicating things in my real project. But I definitely feel like I have been fighting with the layout system in a way that I never do with other GUI toolkits.
The only missing feature to use it for serious GUI apps is a11y, like support for screen reader. It doesn’t matter in some kind of applications, though.
Actually it is a GUI framework, Godot is made using Godot.
Pixelorama is another application created in Godot.
Does that mean you can run and edit Godot inside of Godot inside of Godot?
I think as long as you write the abstraction for the layers after the first, then yes.
Not quite, since the editor is all written in C++, and editing it requires recompiling, but you can extend it in the ways you would usually write Godot games/apps.