Skip to content

SUS UIBuild Unity UI like you build Vue apps

Reactive .sharq single-file components, a Vuetify-style UI kit, and a Vue Router-style navigator for Unity UI Toolkit.

SUS UI

Why SUS?

Unity UI Toolkit is powerful but low-level: screens still drown in boilerplate, manual bindings, and MVVM-style glue for every data binding. SUS removes that — reactive .sharq SFCs so you are not wiring Q<> and callbacks by hand. See the side-by-side: UI Toolkit without manual bindings.

SUS brings a web-like DX to Unity: SFCs, reactive props, directives (v-if / v-for / :class), slots, themes — and a large ready-made component library.

xml
<template>
  <sus:SusButton :text="Label.Value" @click="OnClick" class="demo-btn" />
</template>
<script>
public Prop<string> Label = new("Click me");
void OnClick() => Label.Value = "Clicked!";
</script>
<style>
.demo-btn { margin-top: 8px; }
</style>

Why SUS over plain UI Toolkit

Unity UI Toolkit gives you primitives — UXML, USS, C# bindings. Without a framework you still write manual bindings and rebuild lists by hand. SUS is the layer on top: reactivity instead of MVVM boilerplate, single-file components, and a large ready-made library.

plain UI ToolkitSUS
Reactive dataManual bindingsBuilt-in: Prop / Computed / Watch
SFC (template+script+style)No — UXML + USS + C#.sharq
Component libraryDIY80 ready components (kit) + 48 game components
RouterDIYBuilt-in

Already using Unity App UI? It targets the same UI Toolkit runtime and can run alongside SUS in the same project — reach for SUS for the Vue-style reactive component model (.sharq SFCs, Prop/Computed/Watch) and the ready component library on top.

One layout, both screens

Design a screen once and it ships on desktop and mobile without a separate build. Without a token and breakpoint system, adapting a menu for a phone usually means rebuilding it from scratch; SUS ties every screen to one breakpoint axis (SusBreakpointService, reading the panel's own width — not a device check), so kit and game screens reflow instead of forking. SusInventory is a working example: the same component collapses into a compact, touch-sized single-column layout on a narrow panel and expands to the full multi-panel desktop layout on a wide one — same .sharq, same C#, no mobile-only fork.

See Adaptive layout for the breakpoint axis, or Design tokens for how tokens react to it.

See it

Live playground: try it in the browser — the same WebGL build of sus-demo; breakpoints switch in the player.

Public demo (cloneable runtime example): sus-demo-public

Inventory Grid inventory — drag & drop, equipment, statsHUD presets HUD presets — combat, tactical, MMO
Main menu Main menu — one-click Menu WizardData table Data tables — sorting, media cells
Forms Forms — validation, dirty tracking, server errorsComponent library 80 ready components (kit) + 48 game components

Open-core

The engine is free and MIT — try it on your project; buy ready-made components later.

TierPackagesPriceLicense
FreeCore + Router (GitHub git-package)$0MIT
Kit-setCore + Router + Kit$50Asset Store EULA
Game-setCore + Router + Kit + Game$80Asset Store EULA

See pricing →

Packages

  • sus-core — reactivity, .sharq compiler, themes, overlays, world-space
  • sus-router — navigation, guards, modals, transitions
  • sus-kit — 80 ready components (buttons, forms, tables, modals, tooltips…)
  • sus-game — 48 game components (HUD, inventory, screens)