local-storage-typed
v1.0.2
Published
A type-safe, schema-validated localStorage wrapper using Zod.
Maintainers
Readme
🧠 local-storage-typed
A tiny, type-safe wrapper for localStorage powered by Zod. Validate and persist structured data in the browser with full type safety.
✨ Features
- ✅ Schema-based storage with Zod
- ✅ Type-safe reads and writes
- ✅ Easy to use in React, Next.js, or vanilla JS
- ✅ Small, dependency-light footprint
📦 Install
npm install local-storage-typed zodExample
import { z } from "zod";
import { LocalStorageTyped } from "local-storage-typed";
const store = new LocalStorageTyped({
user: z.object({
id: z.string(),
name: z.string(),
email: z.string().email(),
}),
theme: z.enum(["light", "dark"]),
});
// Save data
store.set("user", {
id: "123",
name: "Alice",
email: "[email protected]",
});
// Read data (typed!)
const user = store.get("user");
console.log(user?.name); // "Alice"
// Remove
store.remove("user");
// Clear all schema-defined keys
store.clear();🛠 API
new LocalZodStore(schemas)
Create a new storage instance with your key–schema map.
store.set(key, value)
Validates and saves a value to localStorage.
store.get(key)
Retrieves and validates a value from localStorage.
store.remove(key)
Removes a single key from localStorage.
store.clear()
Removes all keys defined in the schema map.
