LegendKeeper 0.10.0.3

byBradenPublished on

* Moved board processing to worker thread. You should experience less UI hitching when opening a board for the first time. I'm still working on a loading indicator for a board that's being parsed; sometimes they can take a second to appear the first time. I know that can be scary 😅.

* Board data is now auto-validated (and repaired, if necessary) when a board is first opened. The validator still hasn't captured all the ways a board can be corrupted, so there's still work to be done here. This is rare and easily fixable; will just take time to find these bugs.

* Unfilled board shapes are now only selectable by clicking their edges. This should make using polygons as layouts and containers much easier.

* Increased large page card width to 256 units, up from 248 units. It should align perfectly with the grid now.

* Multiplayer cursors look better and have tweened animations now.

Multiplayer worldbuilding whiteboard cursors.
Multiplayer cursor demo

* Reimplemented the client's application state to reduce memory and CPU usage. Moved my homegrown React-Context-powered viewmodel into zustand.

* Fixed GraphQL query fetching unnecessary data, causing image and map asset previews to be slower than necessary. They are much faster now.

* Fixed shortcuts placeholder styling.

* Fixed boards showing up as selectable links in the pin creation dialog.

* Fixed noisy, meaningless bug spamming the browser console (and my Sentry deployment).

* Improved render performance across the entire application. There's still a lot of overhead here that can be removed, but the app should feel snappier.