A premium glassmorphism UI library for Roblox. Gradient themes, Material icons, smooth animations — all in one self-contained script.
local Lib = loadstring(game:HttpGet("https://pastebin.com/raw/zCVYF0fi"))() local Window = Lib:CreateWindow({ Name = "My Hub", Subtitle = "Premium Edition", Theme = "Nightlight", LoadingEnabled = true, }) local Tab = Window:CreateTab({ Name = "Main", Icon = "home" }) Tab:CreateButton({ Name = "Click Me", Description = "Every element supports descriptions", Callback = function() print("Hello from 5BLib!") end })
No external assets. No models to import. A single script that creates a beautiful, feature-rich UI from scratch.
Semi-transparent dark panels with subtle borders and backdrop effects create a premium, modern aesthetic.
Nightlight, Starlight, Solar, Sparkle, Lime, Cherry, Daylight, Blossom, Vine, Ocean — switch in one line.
Built-in icon library. Use names like "home", "settings", "shield" — no asset IDs needed.
Every interaction uses Exponential easing with 4 speed tiers for buttery-smooth UI transitions.
Optional key validation gate with Discord integration & key saving. Protect your scripts easily.
Flag-based configuration persistence. Users' settings are automatically saved and restored.
Each theme defines a 3-color gradient that accents the entire UI — title bar, toggles, sliders, and more.
Load the library, create a window, add tabs and elements. That's it.
-- 1. Load the library local Lib = loadstring(game:HttpGet("https://pastebin.com/raw/zCVYF0fi"))() -- 2. Create a window local Window = Lib:CreateWindow({ Name = "My Hub", Theme = "Nightlight", LoadingEnabled = true, }) -- 3. Optional: Home tab with dashboard Window:CreateHomeTab() -- 4. Create tabs local MainTab = Window:CreateTab({ Name = "Main", Icon = "home" }) -- 5. Add elements (direct or via sections) local Section = MainTab:CreateSection("Combat") Section:CreateToggle({ Name = "Auto Parry", Description = "Automatically parries incoming attacks", CurrentValue = false, Flag = "AutoParry", Callback = function(value) print("Auto Parry:", value) end })
Every function, parameter, and return value — documented.
Creates the main UI window. Returns a Window object.
| Parameter | Type | Default | Description |
|---|---|---|---|
| Name | string |
"5BLib Hub" | Window title |
| Subtitle | string |
"" | Text below the title |
| LogoID | string? |
nil | Roblox asset ID for logo icon |
| LoadingEnabled | boolean |
true | Show animated loading screen |
| LoadingTitle | string |
"5BLib Interface" | Loading screen title |
| LoadingSubtitle | string |
"Loading..." | Loading screen subtitle |
| Theme | string |
"Nightlight" | Gradient theme preset name |
| ToggleBind | KeyCode |
RightControl | Key to show/hide the UI |
| KeySystem | boolean |
false | Enable key system gate |
| ConfigurationSaving | table |
{} | Config save settings (Enabled, FolderName, FileName) |
local Window = Lib:CreateWindow({ Name = "My Hub", Subtitle = "v1.0", Theme = "Starlight", ToggleBind = Enum.KeyCode.RightControl, })
Shows a toast notification with icon, title, and content.
| Parameter | Type | Default | Description |
|---|---|---|---|
| Title | string |
"Notification" | Notification title |
| Content | string |
"" | Notification body text |
| Icon | string |
"info" | Material icon name |
| Type | string |
"Info" | Info, Success, Warning, or Error |
| Duration | number? |
auto | Duration in seconds (auto-calculated from content length) |
Completely removes the UI, disconnects all events, and cleans up flags/options.
Creates a dashboard home tab with player avatar, server stats (ping, players, region, uptime), and executor detection.
| Parameter | Type | Default | Description |
|---|---|---|---|
| Icon | string |
"home" | Tab icon name |
| DiscordInvite | string |
"" | Discord invite code |
| SupportedExecutors | table |
{} | List of supported executor names |
Creates a new tab. Returns a Tab object with element creation methods.
| Parameter | Type | Default | Description |
|---|---|---|---|
| Name | string |
"Tab" | Tab display name |
| Icon | string |
"view_in_ar" | Material icon name |
| ShowTitle | boolean |
true | Show tab name as header |
Saves or loads all flagged elements to/from a JSON file. Requires
ConfigurationSaving.Enabled = true in CreateWindow.
Creates a named section to group elements. Returns a Section object. All element
methods below can be called on either Tab (uses a default section) or
Section.
local Section = Tab:CreateSection("Combat") Section:CreateButton({...}) -- element inside section Tab:CreateButton({...}) -- also works (default section)
Auto-generates a theme selector or config label section inside the tab.
Creates a clickable button with optional description and click animation.
| Parameter | Type | Default |
|---|---|---|
| Name | string |
"Button" |
| Description | string? |
nil |
| Callback | function |
no-op |
Methods: :Set({Name, Description, Callback}),
:Destroy()
Creates a toggle switch with animated knob.
| Parameter | Type | Default |
|---|---|---|
| Name | string |
"Toggle" |
| Description | string? |
nil |
| CurrentValue | boolean |
false |
| Flag | string? |
nil |
| Callback | function(boolean) |
no-op |
Methods: :Set(boolean), :Destroy() •
Properties: .CurrentValue
Creates a draggable slider with range and increment.
| Parameter | Type | Default |
|---|---|---|
| Name | string |
"Slider" |
| Range | {min, max} |
{0, 100} |
| Increment | number |
1 |
| CurrentValue | number |
50 |
| Suffix | string |
"" |
| Flag | string? |
nil |
| Callback | function(number) |
no-op |
Methods: :Set(number), :Destroy() •
Properties: .CurrentValue
Creates a dropdown with single or multi-select. Supports a special "Player" type
that auto-populates with server players.
| Parameter | Type | Default |
|---|---|---|
| Name | string |
"Dropdown" |
| Description | string? |
nil |
| Options | table |
{"Option 1", "Option 2"} |
| CurrentOption | string|table |
first option |
| MultipleOptions | boolean |
false |
| SpecialType | string? |
nil |
| Callback | function |
no-op |
Methods: :Set(options), :Refresh(newOptions),
:Destroy()
Creates a text input field with optional numeric filter and character limit.
| Parameter | Type | Default |
|---|---|---|
| Name | string |
"Input" |
| Description | string? |
nil |
| PlaceholderText | string |
"Type here..." |
| CurrentValue | string |
"" |
| Numeric | boolean |
false |
| MaxCharacters | number? |
nil |
| Enter | boolean |
false |
| RemoveTextAfterFocusLost | boolean |
false |
| Callback | function(string) |
no-op |
Methods: :Set(value), :Destroy()
Creates a keybind input. Click the key display to rebind. Supports hold-to-interact mode.
| Parameter | Type | Default |
|---|---|---|
| Name | string |
"Keybind" |
| Description | string? |
nil |
| CurrentBind | string |
"E" |
| HoldToInteract | boolean |
false |
| Callback | function(boolean) |
no-op |
| OnChangedCallback | function(string) |
no-op |
Alias: CreateKeybind • Methods:
:Set(keyName), :Destroy()
Creates an HSV color picker with hue bar and saturation/value grid.
| Parameter | Type | Default |
|---|---|---|
| Name | string |
"Color Picker" |
| Color | Color3 |
White |
| Flag | string? |
nil |
| Callback | function(Color3) |
no-op |
Methods: :Set({Color = Color3}), :Destroy()
Creates a text label. Three styles available:
| Style | Appearance |
|---|---|
| 1 | Normal — plain text on transparent background |
| 2 | Info — blue accent bar on dark blue background |
| 3 | Warning — yellow accent bar on dark amber background |
Methods: :Set(text), :Destroy()
Creates a multi-line text block with title and auto-wrapping content.
| Parameter | Type | Default |
|---|---|---|
| Title | string |
"Paragraph" |
| Content | string |
"Content" |
Methods: :Set({Title, Content}), :Destroy()
Creates a horizontal separator line. No parameters.
Methods: :Visible(boolean)