This tool works with both Expo and React Native CLI projects. Just install and go.
Browse, edit, and manage all your app's persisted data. See every key-value pair across all storage backends in real-time.

Browse all keys with stats—valid, missing, and issues. Filter by backend: AsyncStorage, MMKV, or Secure Store.
React Native's default key-value storage
High-performance native storage with encryption
Expo's encrypted storage for sensitive data
Multi-instance MMKV support — If you use multiple MMKV instances, they're all detected automatically. Switch between instances and see key counts per instance.
npm install @buoy-gg/storageThat's it. The Storage Explorer auto-detects installed backends and appears in your FloatingDevTools menu.
Expo SecureStore (iOS Keychain / Android KeyStore) has no key-listing API, so register the keys you want visible — pass the module in, no extra dependency needed:
import * as SecureStore from "expo-secure-store";
import { registerSecureStoreKeys } from "@buoy-gg/storage";
registerSecureStoreKeys(SecureStore, [
"auth.accessToken",
{ key: "session", keychainService: "com.myapp.auth" },
// Biometric-protected keys are listed but never auto-read (no surprise Face ID prompts)
{ key: "pin", requireAuthentication: true },
]);
import * as SecureStore from "expo-secure-store";
import { registerSecureStoreKeys } from "@buoy-gg/storage";
registerSecureStoreKeys(SecureStore, [
"auth.accessToken",
{ key: "session", keychainService: "com.myapp.auth" },
// Biometric-protected keys are listed but never auto-read (no surprise Face ID prompts)
{ key: "pin", requireAuthentication: true },
]);
MMKV instances need the same one-time registration — see the package README for details.
View all keys and values
Modify values in real-time
Remove individual keys
Wipe all storage data
Filter keys instantly
Export values to clipboard
Inline value previews — Short values show right on the card (number · 42, string · "en"), and booleans get a color-coded true/false badge. No need to expand to see simple values.
Pin to top — Pin the keys you're watching so they stay at the top of the list. Pins persist across sessions.
Hide from list — One tap filters noisy keys out of the browser (from the expanded card or bulk selection). Non-destructive — unhide any time from the filters panel.
JSON formatting — Values that are valid JSON are automatically pretty-printed for readability.
Live events — Watch storage changes happen in real-time as your app reads and writes data.
Bulk selection — Select multiple keys to delete or export them all at once.