UI Window Creation Module

Hey guys, I made a cool UI window creation tool which will probably speed up the process of making games (or experiences or charts). It’s very modular so you can easily add your own features (called plugins inside it) to it. You can also set custom themes to customize it even more! It works for both ScreenGuis and SurfaceGuis, so you can do cool stuff, for example using it as a display screen in workspace or just keeping menus organized. A fun quirk is its ability to contain itself, and by that I meant both not exploding like the old version and containing a window inside of a window. The chances of me adding support for BillboardGuis are near zero. It’s also highly chainable so you can chain function calls. Here’s a list of features it can do:

  1. Creating UI windows

  2. Themes
    You can use the prebuilt themes or make your custom themes to fit your game

  3. Plugins (additional features)

  4. Being able to put windows inside of a window
    image

  5. Being able to be put inside of a SurfaceGui

  6. Lots of other internal features
    It would take a long time to write all of the internal features, like adding custom header buttons, binding events, creating events, custom mouse position, manually loading plugins from other containers, etc.

Here’s a demonstration of most of the features combined:


You can get the module here, and you can test it in the test place

8 Likes

this is really cool! i’ll test this out when i get the chance.

1 Like

That’s some mad mathematical + UIDragger stuff I don’t understand :fire:

Besides that, the animations are very neat and I haven’t seen a proper-made window system like nesting windows inside windows, or resizing nested windows to respect the parent window size.

I have to say this is cool! Just curious, how long did it take you?

1 Like

Thank you! It took about a year :skull:
I mostly continue this project on my free time so that’s one of the factor. There’s also another factor which is just me putting random math everywhere and hoping that it works for some reason, and try to understand why it works. The one that sticks out the most is using parent relations instead of getting the screen insets. That unlocked a whole loads of possibilities, for example the nested windows, auto-collapse and recenter windows, custom containers, and keyboard UI Navigation with its sensitivity related to its parent. The only limiting factor to nested windows is Roblox’s nested CanvasGroup limit of 4.

1 Like

Damn, the free time really did pay off. This is a cool resource I’ve seen in a while so pretty excited to see it.

1 Like