Skip to content

Browser support

Status: Stable (guidance)

Previous: FAQ · Next: Security

v1 core is synchronous and compatible with the Web Storage shape (getItem / setItem / removeItem / optional keys).

Environments

EnvironmentNotes
Evergreen browsersMemory + local/session when available
Vitest / jsdomMemory or jsdom Storage
SSR (no window)Use memory, or create web adapters only on the client

Web adapter degradation

When localStorage / sessionStorage is missing: reads return null, writes throw AdapterError, removeItem no-ops, keys returns [].

Private / blocked storage may surface as QuotaExceededError or AdapterError — catch at write boundaries.

IndexedDB: use @jayoncode/storage/async (createIndexedDbAdapter). Sync core remains Web Storage–shaped.

See also: Security · faq.md

An ecosystem of independent, headless TypeScript libraries engineered for modern web development. Every package includes interactive playgrounds and documentation that evolves alongside the code.