Svelte-compatible writable store that persists to local storage.
This package provides LocalWritable, a custom implementation of Svelte's Writable interface, that saves the value of the writable in localStorage.
SvelteKit (SSR) is also supported.
A LocalWritable can be obtained by calling the localWritable function, passing in the key (that's used in localStorage) and a default value.
// stores.ts
export const counter = localWritable("counter", 0);Note
The default value is only used if the key doesn't exist in localStorage.
LocalWritable instances can be observed from Svelte code using the $ prefix, just like normal writable stores:
<!-- +page.svelte -->
<script>
import { counter } from "./stores";
</script>
<button on:click={() => $counter++}>Press to increment {$counter}</button>