roblox gui
When to Load
Load for HUDs, menus, shops, dialogs, notifications, or world-space UI.
Quick Reference
ScreenGuioverlays;SurfaceGuion surfaces;BillboardGuifor world labels.- Let layouts and constraints own repeated layout; avoid per-frame pixel positioning.
Scalefor responsive structure;Offsetfor padding/fixed-size details.- Design for touch/gamepad too. Use
ContextActionServicefor gameplay bindings where appropriate. - Test directional focus; set
GuiService.SelectedObjectfor gamepad entry. - Follow existing visual language and owner art direction; test UI over the game world.
- UI displays server state; a button is not an authority boundary.
- Reactive UI: own per-screen cleanup separately from session state; repeat open/close to test leaks (full.md).
- Server Authority: display confirmed inventory/currency; route gameplay input through Input Actions.
- Resolve scrolling, text growth, clipping, and safe areas before polish.
- Loading UI belongs in
ReplicatedFirst; client character teleports are not readiness gates.
Layout and lifecycle examples: references/full.md [blocked]

