Hacker News new | ask | show | jobs
Glimmer DSL for LibUI – Simplest Native Cross-Platform GUI Library (github.com)
47 points by AndyMaleh 1702 days ago
5 comments

FYI: To learn more about Glimmer, see the Glimmer Days Series - http://planetruby.github.io/gems/#ruby-glimmer-days-2021-jan...
Libui is kind of dead and so limited I am surprised people still bother with projects like this.
The README kind of addresses this:

> if there is only a need to build a small simple application, Glimmer DSL for LibUI could be a good convenient choice due to having zero prerequisites beyond the dependencies included in the Ruby gem. Also, just like Glimmer DSL for Tk, its apps start instantly and have a small memory footprint.

And glancing at the screenshots, that look can be achieved in FLTK which is lightweight, active, and been around decades.
Correct if I'm wrong, but FLTK is not using native widgets so it is not the same thing.
For me this looks like what I have been longing for since why_'s shoooes migrated to jruby after why_ left: a simple way to throw together a gui over some semi-private tool.

Not that this couldn't be used for "real" apps too, but that's not what I need.

I find the concepts (i.e. "SWT without Java") behind libui (https://github.com/andlabs/libui) exciting, and I could picture myself using it someday (through its Python bindings).

I'm a bit worried, though, that the project is described as "mid-alpha" and hasn't received a single commit since January this year.

Could anyone familiar with the project comment on its current state ?

Useless except trivial ui's
I don't think it's a good model. User interfaces go beyond using native controls. Every platform does things differently, users have different expectations. Trying to create a single application for all users leads to lowest common denominator software that never feels quite right for any user. Like Qt applications.

The right thing is separate user interfaces for each platform. More work and more expensive but it's the right way.

Right, but this sort of thing isn’t usually used when that’s an actual option, like a small team or single developer.

Things like this and QT aren’t usually the alternative to “native applications for every platform”, it’s the alternative to “Native application only runs on one platform”, or “Uses Electron”.

imagine if you didn't need a DSL . LISP all the way down