yui - declarative GUI library for LÖVE

Showcase your libraries, tools and other projects that help your fellow love users.
Post Reply
User avatar
1414codeforge
Prole
Posts: 9
Joined: Fri Aug 05, 2022 1:14 pm
Location: Italy, Sardinia
Contact:

yui - declarative GUI library for LÖVE

Post by 1414codeforge »

Yui is Yet another User Interface library.

It helps creating menu screens, pause menus, HUDs, and such.
Most of its widget rendering code and theming is taken from the wonderful SUIT library by Matthias Richter (which is beautiful BTW).

I have decided to create yui instead of using one of the many great libraries available
because no other library matched my needs just right.

Source code: https://git.doublefourteen.io/lua/yui
Examples: https://git.doublefourteen.io/lua/yui-examples
Pictures: https://git.doublefourteen.io/lua/yui-e ... aster/pics

Distinguishing features
  • Declarative approach to describe the UI (as opposed to SUIT's immediate mode): layout is defined once, events are handled in callbacks.
  • Has built in support for localization thanks to another library I've been working on: moonspeak.
  • Supports custom input device management (keyboard, mouse, touch, gamepads).
  • Easily extensible collection of widgets.
  • Grid layouts.
  • Widget navigation using keyboard/joystick buttons.
Demo

Image

Gotcha

Documentation is in progress, and code is alpha quality at the moment. :death:
Though it is workable. :?
Last edited by 1414codeforge on Wed Aug 24, 2022 7:58 pm, edited 4 times in total.
togFox
Party member
Posts: 608
Joined: Sat Jan 30, 2021 9:46 am
Location: Brisbane, Oztralia

Re: yui - declarative GUI library for LÖVE

Post by togFox »

I'll be checking this out as I was about to roll-my-own.

I notice two dependencies. I'll cheek this two out a well, noting one of them doesn't have mobile friendly documentation.
Current project:
https://togfox.itch.io/asteroid-hunter
Slow burn 2d zero-g space game with meta
User avatar
yetneverdone
Party member
Posts: 413
Joined: Sat Sep 24, 2016 11:20 am
Contact:

Re: yui - declarative GUI library for LÖVE

Post by yetneverdone »

Screenshots of the GUI would be cool :)
User avatar
1414codeforge
Prole
Posts: 9
Joined: Fri Aug 05, 2022 1:14 pm
Location: Italy, Sardinia
Contact:

Re: yui - declarative GUI library for LÖVE

Post by 1414codeforge »

togFox wrote: Wed Aug 17, 2022 9:47 pm I notice two dependencies. I'll cheek this two out a well, noting one of them doesn't have mobile friendly documentation.
In the README you should find a reference to download the deps conveniently.
Those libraries are general utilities I use in every one of my projects.

Admittedly documentation is lacking at the moment. I'm working on that.
I'll also ready a github mirror in the next few days.
yetneverdone wrote: Thu Aug 18, 2022 6:51 am Screenshots of the GUI would be cool :)
Definitely :3
I'll add some of them along with a few code examples.

For now, the default theme and widgets are aesthetically almost identical to SUIT.
User avatar
1414codeforge
Prole
Posts: 9
Joined: Fri Aug 05, 2022 1:14 pm
Location: Italy, Sardinia
Contact:

Re: yui - declarative GUI library for LÖVE

Post by 1414codeforge »

pgimeno wrote: Thu Aug 18, 2022 11:34 am Please consider viewtopic.php?f=5&t=92526 too.
Oh, such a nice piece of code, I wasn't aware of that, thanks!
Right now yui handles basic single line input boxes.
In the interest of keeping yui reasonably small I don't think that is going to change.
But I could make a yui-extras repository with additional widgets, that's where I could make use of it.

On an unrelated note...

Update: I have created a repository to demonstrate some practical uses of yui:
https://git.doublefourteen.io/lua/yui-examples

My original post has been updated.

PS. And we now have some pics for yetneverdone :3
Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest