Skip to main content

Introduction

warning

Dex is still a work in progress and does not currently have a full release! Please avoiding Dex in production-bound projects, as the library is not fully tested, and the API may be subject to change

Dex is a library for building the User Interfaces of Roblox projects. Dex makes it simple to write Components—smaller pieces of code responsible for specific portions of UI—which can work together to build the interface for a complete Roblox experience.

Install Dex inside your project:  

Learn the basics of Dex:  

Read the full documentation:  


Animated "Hello World" Using Dex:

--!strict
local Dex = require(game.ReplicatedStorage.Packages.Dex)

local function App()
local stopwatch = Dex.Stopwatch({playing = true})
return Dex.New("ScreenGui", {}, {
Label = Dex.New("TextLabel", {
Size = UDim2.fromScale(1, 1),
BackgroundTransparency = 1,
TextSize = 24,
TextColor3 = stopwatch:Map(function(currentTime)
return Color3.fromHSV((currentTime / 5) % 1, 1, 1)
end),
Text = "Hello, World!",
})
})
end

local root = Dex.Root(game.Players.LocalPlayer:WaitForChild("PlayerGui"))
root:Render(App())

(Paste the example code into LocalScript under game.StarterPlayer.StarterPlayerScripts)