Get Started / React Native
React Native quickstart (native-first)
Recommended path is native Automerge + native crypto in an Expo dev build or production build.
1) Run setup helper
# In your Expo / React Native app root
npx mindoodb setup-react-native This copies patch files, configures patch-package, and prints Metro setup guidance.
2) Initialize native Automerge
import "./mindoodb-polyfills";
import { UseApi } from "@automerge/automerge/slim";
import { nativeApi } from "react-native-automerge-generated";
UseApi(nativeApi); 3) Minimal todo flow
const storeFactory = new InMemoryContentAddressedStoreFactory();
const cryptoAdapter = new QuickCryptoAdapter(quickCrypto);
const factory = new BaseMindooTenantFactory(storeFactory, cryptoAdapter);
// create user -> tenant -> db -> todo doc
const db = await tenant.openDB("todos");
const doc = await db.createDocument();
await db.changeDoc(doc, async (d) => {
d.getData().title = "Pay invoices";
d.getData().done = false;
}); Expected result: after running the sample flow, your UI should show a todo like Pay invoices (done: false).
Expo Go note
Expo Go is a limited fallback path and can be much slower for crypto-heavy operations. Prefer native dev builds for realistic performance.