Skip to content

Conversation

@kvbalib
Copy link

@kvbalib kvbalib commented Aug 20, 2025

This PR adds a first-class WatermelonDB LocalStorage persist plugin to @legendapp/state/sync. It enables fast, reliable persistence for React Native / Expo apps that use @nozbe/watermelondb, with synchronous reads.

•	Zero new runtime dependencies
•	No breaking changes

Changes

•	src/persist-plugins/watermelondb.ts (new)

Usage

import { observable } from '@legendapp/state'
import { syncObservable } from '@legendapp/state/sync'
import { observablePersistWatermelonDB } from '@legendapp/state/persist-plugins/watermelondb'
import { database } from '@/lib/db' // Watermelon Database

const settings$ = observable(true)

syncObservable(settings$, {
  persist: {
    name: 'settings',
    plugin: observablePersistWatermelonDB(database.localStorage),
  },
})

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant