BE CAREFUL WITH USESYNCEXTERNALSTORE
This developer initially created a `useLocalStorage` hook using `useSyncExternalStore` to manage local storage, but encountered an infinite render loop when storing non-string values due to React's comparison of objects. To resolve this, the hook was edited to serialize and deserialize data using `superjson`, which handles non-primitive types more effectively than `JSON.stringify` and `JSON.parse`.