VenturaUI is a Fluent-style Roblox UI library. One script, one loadstring — a fully animated window with tabs, themes, 15+ components, and a built-in settings panel, instantly.
Hosted on Pastebin. Use the raw link directly in your loadstring — or download the file to host yourself.
loadstring(game:HttpGet(...))() or download the file.A complete UI system that looks professional the moment you load it.
All components share the same theme, respond to accent changes live, and support tooltips.
Every method, option, and return value — with copy-ready examples.
| Option | Type | Default | Description |
|---|---|---|---|
| name | string | "Ventura UI" | Window title |
| subtitle | string | string[] | cycling | Loading screen text. Table = cycles every 0.55s |
| toggleKey | KeyCode | Insert | Show / hide the window |
| minimizeKey | KeyCode | K | Collapse to titlebar |
| loadingTime | number | 1.5 | Loader duration in seconds |
| accent | Color3 | Blue | Starting accent colour |
| onClose | function | nil | Fired when user clicks × |
| keyEnabled | boolean | false | Set true to show key gate before loader |
| key | string | string[] | nil | Valid key(s) the player must enter |
| onKeySuccess | function | nil | Called after correct key is entered |
| onKeyFail | function | nil | Called after all 3 attempts are exhausted |
local GUI = Library:new({
name = "My Hub",
subtitle = {"Loading...", "Almost ready..."},
accent = Color3.fromRGB(220, 90, 90),
onClose = function() print("bye") end,
-- optional key gate
keyEnabled = false, -- flip to true to lock your script
key = "MYKEY-1234", -- or {"KEY1","KEY2"} for multiple
onKeySuccess = function() end,
onKeyFail = function() end,
})
| Method | Returns | Description |
|---|---|---|
| GUI:Destroy() | nil | Clean teardown — disconnect all, tween close, destroy ScreenGui |
| GUI:SetTitle(text) | nil | Change topbar title at runtime |
| GUI:SetSubtitle(text) | nil | Update loading subtitle mid-load |
| GUI:SelectTab(name) | bool | Switch to a tab by name |
| GUI.notify(t,msg,dur) | nil | Queued notification — never overlaps |
local Tab = GUI:CreateTab({
name = "Combat",
icon = Library.Icons.zap,
badge = "NEW", -- optional pill on nav button
badgeColor = Color3.fromRGB(255, 80, 80),
})
Tab:Disable() -- grey out and lock
Tab:Enable() -- restore
Tab:Button({ name="Go", description="Sub text", badge="HOT",
tooltip="Hover text", callback=function() end })
local t = Tab:Toggle({ name="Speed", default=false, callback=function(v) end })
t:Set(true) -- fires callback
t:Set(false, true) -- silent, no callback
local s = Tab:Slider({ name="Speed", min=16, max=300, default=16, suffix=" ws",
callback=function(v) hum.WalkSpeed=v end })
s:Set(100) -- fires callback
s:Set(16, true) -- silent
local d = Tab:Dropdown({ items={"A","B"}, default="A", multi=false,
callback=function(v) end })
d:Set("B")
d:SetItems({"X","Y","Z"}) -- replace list at runtime
local ti = Tab:TextInput({ name="Name", placeholder="...", numeric=false,
callback=function(text) end })
ti:Set("Roblox")
local cp = Tab:ColorPicker({ name="Color", default=Color3.fromRGB(255,100,100),
callback=function(c) end })
cp:Set(Color3.fromRGB(0,255,0))
local kb = Tab:Keybind({ name="Activate", default=Enum.KeyCode.E,
callback=function(k) end })
kb:Set(Enum.KeyCode.F)
local pb = Tab:ProgressBar({ name="XP", default=0, suffix="%",
color=Color3.fromRGB(100,200,120) })
pb:Set(75) -- tweens fill smoothly
Tab:Paragraph({ title="About", text="Wraps automatically. Height auto-sizes." })
Tab:Badge({ text="✔ UNDETECTED", color=Color3.fromRGB(40,160,70) })
Tab:Section({ name="Movement" })
Tab:Separator()
Tab:Label({ text="v1.0" })
Tab:Warning({ text="Use with caution." })
Tab:Info({ text="Press Insert to hide." })
Full version history — most recent first.
keyLink — pass a URL and a "Get Key" button appears that copies the link to clipboard so players can grab their key.keyNote — pass a short string displayed as a hint under the input (e.g. "Key resets weekly — check Discord").Tab:Hyperlink({ text, url }) — clickable row that copies a URL to clipboard with a "copied!" confirmation.keyEnabled, key, onKeySuccess, onKeyFail options in Library:new()key accepts a single string or a table of valid keys"198281938219" directlyLuaPaste is xyvenom's companion script hosting tool. No server, no backend, no account needed. Paste your script, get a shareable link and a one-click loadstring — all stored in your browser.
VenturaUI started as a personal tool and grew into something I'm genuinely proud of. If you've used it, shared it, or given feedback — thank you. It means everything.