- cross-posted to:
- blogging@programming.dev
- cross-posted to:
- blogging@programming.dev
Long overdue post on the potential for using Godot for GUI app development and why I think it’s pretty cool!
GDScript is also a very easy language to use which is great for UI/UX devs, and a lot nicer than the popular alternatives like Javascript or (god forbid) Python.
wat
Just my personal hot take haha, had nothing but bad experiences with Python.
I do a lot of python development and I agree.
It’s funny though because GDScript is based loosely on python.
Not very loosely; if you know Python you’ll pick up GDScript in an hour or two.
That’s a pretty hot take … Especially preferring the absolute madness that is JavaScript to Python.
I use Godot when I don’t want a forms GUI, but still need a GUI on my C# application.
Cool, I may have to mess around with Godot’s UI system.
I don’t think I agree with your conclusions, but I think it’s a very interesting perspective/it’s good out of the box thinking.
It’s not particularly hard to create animated UIs using CSS + React/Vue/Angular or QML (i.e. the Qt that was meant for animation). For me as a former web developer, I think Vue with CSS would be the easiest. If I spent a bit more time with QML, I imagine I’d catch up pretty quickly on that as well (the only GUI app I’m currently maintaining if a Qt Widgets app that really is more practical than pretty).
Now, maybe Godot does just make some parts of this a lot easier. I don’t know, I have basically no experience with its GUI system (and only a little bit of experience with it at all with a toy game)… I just worry a bit you’re drawing conclusions based on what you’re already comfortable with vs a more fair comparison.
I will definitely say, I agree the Godot runtime is going to be a lot more lightweight than web. I’ll also add, if you’re not doing a traditional app where you use lots of prebuilt widgets, accessibility is going to take work regardless of what you go with.
Arguably part of why user interfaces aren’t as flashy isn’t so much the tech but … it’s not trendy at the moment and it makes accessibility that much harder. Lots of folks want their grocery store app to just work, not to do some flashy shopping cart skit on page load. Lots of flash apps were just plain annoying to interact with.
The GDExtension stuff reminds me of implementing QML types in C++ to access a “real language”/break free of the limitations of QML and its JavaScript runtime.
The node system sounds a lot like just building out components. If you’re using any of the frameworks I just mentioned with a giant state singleton, you’re way off the rails/not using the framework properly.