Start typing to search packages!
plinth
By @emdomanus
Roblox
MirroredPlinth
Plinth is a reactive Roblox UI package built around themed primitives, component-owned interaction state, and low-overhead runtime helpers.
Install
aftman install
wally install
Plinth's direct Wally dependencies are:
vide = "centau/vide@0.4.0"
ui-labs = "pepeeltoro41/ui-labs@2.4.2"
tempo = "emdomanus/tempo@0.1.0"
hook = "emdomanus/hook@0.1.0"
Plinth uses Tempo for internal scheduling and Hook for its shared pressable release fan-out.
Migration Notes
This package includes MIGRATION.md for developers and code agents updating older callers. The short version:
Surfaceand mount helpers are gone from the public path.- Parent content directly into
panel.content,button.content,tooltip.content, or a handle'shost. - Use
vTransparency,vScale, andvVisibleas explicit reactive channels instead of wrapper frames,UIScale, orCanvasGroupwhen possible. - Optional visual layers such as panel stroke and shadow may be unparented while invisible.
Runtime
Plinth owns a private Tempo instance for internal UI timing. Components use it for delayed visibility and interaction cleanup instead of spawning per-component delay threads or using Plinth's old scheduler utility.
Consumers do not need to step this Tempo manually; Plinth binds its internal heartbeat phase when the package runtime is required.
Assets
Plinth can load without asset folders. If you use named image or sound assets, set these after requiring the package and before creating components that resolve named assets:
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local Plinth = require(Packages.plinth)
Plinth.config.pathToImages = ReplicatedStorage.Assets.UI.Images
Plinth.config.pathToSounds = ReplicatedStorage.Assets.UI.Sounds
If an asset path is missing, lookups resolve blank/nil instead of throwing during package load.
Editor Sourcemap
After wally install, regenerate the dev sourcemap and patch package thunks for Luau types:
rojo sourcemap dev.project.json -o dev-sourcemap.json
wally-package-types --sourcemap dev-sourcemap.json Packages
If rojo is not on PATH:
& $env:USERPROFILE\.aftman\tool-storage\rojo-rbx\rojo\7.7.0-rc.1\rojo.exe sourcemap dev.project.json -o dev-sourcemap.json
wally-package-types --sourcemap dev-sourcemap.json Packages
Build
rojo build default.project.json -o plinth.rbxm
The package entrypoint is src/init.luau, which re-exports src/plinth.
Package Details
Install command (Click to copy)
Version
0.1.3
License
MIT
Safe for commercial use
Automated license review — not legal advice.
