General UI Kit - Complete Roblox UI Framework for Roblox Games (Tag-Based, No Script Editing)

Hey everyone 👋

I'm releasing an updated version of General UI Kit, a plug & play UI framework for Roblox. The architecture has been fully rebuilt around CollectionService tags and Instance Attributes. No hardcoded paths, no script editing, no fragile naming conventions.

Part of the ecosystem covered in the main post: Free & Premium Roblox Asset Packs That Work Together - RBLX Essentials:

🎬 Demo Video

✨ Features

  • 🏷️ Tag-based architecture - tag a Frame as UI_Panel, set a PanelId attribute, and it works automatically. No hardcoded names, no fragile paths
  • 📋 Panel system - opening a panel auto-closes any other open panel. Smooth animations included: Bounce, SpinReveal, and more

AutoClosePanelsOptimized

  • 🖱️ Interactive buttons - scale on hover, cursor-following tooltips, and sound on press. All configured through attributes, no code needed

ButtonHovers

  • 🔊 Automatic sound feedback - every interaction plays SFX automatically when Sound System is installed alongside. No wiring required
  • Decorative animations - tag any element as UI_Animated, set it to Rotate or HoverBob, configure speed per element

RotationAndHoverBobOptimized

  • 💬 Effect icons & tooltips - display buff or game effect icons with automatic hover tooltips, fully attribute-driven

Tooltip

  • ⌨️ TextBox typing sounds - tag any TextBox as UI_TypeSound and it plays a typing sound on each character input
  • 🧩 GUIBridge developer API - register custom button handlers from a LocalScript without touching any framework code
  • 🧹 Automatic cleanup - connections are cleaned up on respawn and reload

🧩 Developer API

Handle any button action from a LocalScript with GUIBridge.registerHandlers:

local GUIBridge = require(ReplicatedStorage.RBLXEssentials.EcosystemCore.GUIBridge)

GUIBridge.registerHandlers({
    OpenShop = function(button)
        GUIBridge.getPanel("Shop").Visible = true
    end,

    BuyItem = function(button)
        local productId = button:GetAttribute("ProductId")
        game:GetService("MarketplaceService"):PromptProductPurchase(
            game.Players.LocalPlayer, productId
        )
    end,
})

Built-in actions (TogglePanel, ClosePanel) are handled automatically by GUIManager - just set the attribute on the button.

⚙️ Setup

  1. Install the RBLX Essentials Plugin into Roblox Studio
  2. Drag the .rbxm file into the workspace
  3. In the plugin, install the packs
  4. Tag your UI elements in Studio and set their attributes

Press Play, it just works.

Full documentation, API reference, and configuration details: rblxessentials.com/docs

🔗 Works Great With

  • Sound System - UI interactions get centralized audio automatically. No wiring required.
  • Easy Pet System - the pet menu, hatch screen, and all HUD panels wire up into General UI Kit automatically.

💵 Download

Available on itch.io - $12.99:
https://rblx-essentials.itch.io/general-ui-kit

Feedback and suggestions are always welcome 🙌

Created by RBLX Essentials.

2 Likes

I am guessing this framework has its own set style for UIs? Are there any plans to allow for customisation, perhaps with Roblox’s new stylesheet system?

3 Likes

The kit doesn’t impose a fixed visual style. It only handles behaviour (panels opening/closing, button interactions, animations, tooltips). All the visuals are yours to design freely in Studio, the framework just picks up whatever you’ve built and wires it up automatically.

As for Roblox’s stylesheet system, stylesheets would be a natural fit for theme-level changes across the whole UI and I’d love to integrate that once the API is more stable. I’ll keep an eye on it as it matures!

Thanks for such a great idea!

1 Like