@siteping/adapter-localstorage
v0.4.5
Published
localStorage adapter for Siteping — client-side feedback persistence without a server
Maintainers
Readme
@siteping/adapter-localstorage
Client-side localStorage adapter for Siteping — feedback persistence without a server.
Part of the @siteping monorepo.
Install
npm install @siteping/adapter-localstorageUsage
Pass the store directly to the widget — no server needed:
import { initSiteping } from '@siteping/widget'
import { LocalStorageStore } from '@siteping/adapter-localstorage'
const store = new LocalStorageStore()
initSiteping({
store,
projectName: 'my-project',
})Feedback persists across page reloads via localStorage. Data is scoped to the current origin.
API
new LocalStorageStore(options?)
| Option | Type | Default | Description |
|--------|------|---------|-------------|
| key | string | 'siteping_feedbacks' | localStorage key for data persistence |
store.clear()
Remove all data from localStorage for this store key.
Use Cases
- Demo pages — static pages with feedback persistence, zero server
- Prototyping — test the widget without setting up a database
- Offline-first — feedback stored locally, synced later
Edge Cases
- localStorage full — writes are silently dropped (best-effort persistence)
- Corrupted data — returns empty array, does not throw
- Multiple stores — use different
keyvalues for isolation
Related Packages
| Package | Description |
|---------|-------------|
| @siteping/widget | Browser feedback widget |
| @siteping/adapter-prisma | Server-side Prisma adapter |
| @siteping/adapter-memory | In-memory adapter (testing, demos) |
| @siteping/cli | CLI for project setup |
