TypeScriptReactViteMotion
An experimental lab of satisfying, ghost-themed UI toys, fronted by a cute ghost that follows your cursor and reacts as you play.
Each toy is a self-contained experiment in what modern CSS and motion can do. The physics run on imperative requestAnimationFrame loops so dragging never triggers React re-renders.