Full threadjbranchaud·Moveable looks like a super full-featured library for this kind of thing https://daybrush.com/moveable/View on HN