UI for Beat Saber mods
Reactive
Write the view in C#, next to the code that drives it. Values that change live in states, and whatever reads a state follows it, with no markup to parse and nothing to refresh by hand.
Counter.cs
var count = Remember(0);new Label {sText = count.Map(x => $"{x}")},new BsPrimaryTextButton {Text = "+1",OnClick = () => count.Value++}

A step up from BSML
Everything BSML makes you wire by hand, Reactive handles for you. Each of these opens the part of the introduction that shows how.

Reactivity→
Bind once, and every label, meter and color follows the state.

Layout→
Flexbox from the web, and your own controllers when it isn’t enough.

Animations→
Ease values and play animations on components without writing the loop.

Performance→
Tables reuse their cells, so even 100000 rows jump with no delay.