Documentation Index
Fetch the complete documentation index at: https://docs.sure-developer.com/llms.txt
Use this file to discover all available pages before exploring further.
LUI
lui is the client-side Lua UI module added in sure_lib 2.2.x. It renders Lua node trees into the bundled NUI renderer at web/lui/index.html, routes NUI events back into Lua callbacks, and re-renders when tracked state changes.
fxmanifest setup
Any resource that opens LUI pages should use the sure_lib renderer as itsui_page.
fxmanifest.lua
Builder pages
lui.page(pageId, function(ui) ... end, props?) renders immediately and stores the page. Use lui.open(pageId) and lui.close(pageId) to control NUI focus and visibility.
client.lua
Declarative node trees
LUI also exposes factories directly onlui, so larger interfaces can be split into component functions.
Reactive rendering
Tracked values can be passed directly into text, typography, inputs, selects, sliders, tables, lists, and other node props. LUI records dependencies while building the page and sends patches when those states change.Page API
Registers and renders a page.
pageBuilder may be a callback builder or a declarative node tree.Re-renders an existing page and sends patches when the tree changed.
Marks a page visible, renders it, sends a visibility message, and calls
SetNuiFocus.Marks a page hidden, clears NUI focus, and sends a visibility message.
Components
Component docs are split by the renderer source folders underui/lui/src/components, with one page per public component.
Primitives
Text rendering for short paragraph content.
Controls
Button, Input, Select, Slider, and Textarea.
Display
Accordion, Alert, Badge, Table, and Typography.
Layout
Panel, Row, and Stack containers.
Motion
MotionNode and Presence for animated UI.
Navigation and Overlay
Carousel, Tabs, and Tooltip.
Layout
Layout
stack, row, and panel create layout containers. Common props include className, classBase, gap, align, width, font, and theme.Controls
Controls
button, input, select, textarea, and slider support event callbacks through onPress or onChange. Callback payloads are passed from NUI to Lua.Display
Display
alert, badge, typography, accordion, tabs, table, carousel, and tooltip cover common shadcn-like UI surfaces.Motion
Motion
presence, animatePresence, motion, motionDiv, motionRow, motionStack, motionList, motionListItem, motionItem, motionSection, motionButton, and motionText forward animation props such as initial, animate, exit, whileTap, layout, and transition.Lists and conditions
Lists and conditions
Builder pages support
when, ifElse, unless, and foreach. Declarative pages support lui.list(source, render, props?), lui.fragment(children), and lui.component(component, ...).Icons and styling
LUI supports text icons and Iconify-style icon component names.triggerClassName, menuClassName, activeOptionClassName, rangeClassName, thumbClassName, contentClassName, titleClassName, and active tab class props.
The bundled renderer includes controls, display components, motion helpers, runtime utility classes, and Iconify-powered Lucide icons, so consuming resources can describe UI from Lua without writing HTML.
