React Native Async Storage
An asynchronous, persistent, unencrypted key-value storage system for React Native apps
Repository Health
Technical Analysis
Async Storage is the community-maintained successor to React Native’s original built-in AsyncStorage module, providing a simple, Web-Storage-API-compatible key-value store for persisting small amounts of data across app restarts. It exposes createAsyncStorage(name) to create named storage instances, with getItem/setItem/removeItem plus batch operations (multiGet, multiSet, multiRemove) for working with several keys at once, and supports multiple independent databases within a single app.
Under the hood, each platform gets a purpose-built backend: SQLite on Android, iOS, and macOS; a legacy single-database fallback on Windows and visionOS; and IndexedDB on Web. This gives apps a consistent async API surface while letting each platform use its most natural persistent-storage primitive. Because the data is unencrypted, the library is intended for non-sensitive state (user preferences, cached API responses, draft form data) rather than credentials or tokens, which should go through a platform keychain/keystore-backed library instead.
What You Get
createAsyncStorage(name)to create one or more independent named storage databases within an app- Core
getItem/setItem/removeItemmethods matching the Web Storage API shape - Batch operations (
multiGet,multiSet,multiRemove) for working with several keys in one call - Platform-native backends: SQLite on Android/iOS/macOS, a legacy fallback on Windows/visionOS, IndexedDB on Web
- A Jest mock (
@react-native-async-storage/async-storage/jest) for testing code that reads/writes storage - An Expo config plugin package (
expo-with-async-storage) for easier Expo integration
Common Use Cases
- Persisting user preferences and app settings across sessions
- Caching API responses locally to reduce network calls and support offline-first UX
- Storing non-sensitive draft form state so users don’t lose input on app restart
- Maintaining onboarding/tutorial-seen flags and other lightweight app state
Under The Hood
Architecture - The repo is a Yarn/Turborepo monorepo (packages/async-storage, packages/expo-with-async-storage, packages/eslint-config). The core package’s src/index.tsx exposes createAsyncStorage, with platform-specific implementations selected via React Native’s file-extension resolution (createAsyncStorage.native.ts, createAsyncStorage.windows.ts, plus a web-module and native-module split), so the same call site resolves to SQLite-backed native code or an IndexedDB-backed web module depending on the build target. Tech Stack - TypeScript for the JS API surface, Kotlin for the Android native module, Objective-C++ (AsyncStorage.mm/.h) for the Apple native module, and the idb package to wrap IndexedDB on Web; builds go through react-native-builder-bob (bob build) to produce lib/module and lib/typescript outputs. Code Quality - The project ships platform-specific native test/build tooling (Gradle for Android, a Podspec-driven Apple build) alongside tsc --noEmit and ESLint scripts for the JS layer; with 150 contributors and continuous semantic-release automation, the project shows an established, actively reviewed contribution process. API Design - The API deliberately mirrors the familiar localStorage/Web Storage shape (getItem/setItem/removeItem) so React and web developers have near-zero ramp-up, while createAsyncStorage(name) for multi-database support and the bundled Jest mock reduce the boilerplate needed to both use and test the library in a React Native app.
Used by 17 apps in this directory
agent-orchestrator
AI Agents · AI Code Assistants · Developer Tools
A local desktop workspace that gives every coding task its own agent, Git branch, and worktree, then tracks tasks, pull requests, CI, and reviews for 27 coding agents on one live Kanban board.
AionUi
AI Agents · Productivity
Free, open-source Cowork desktop app that unifies Claude Code, Codex, Gemini CLI, and 20+ AI agents into a single platform with multi-agent teams, 24/7 cron automation, and zero-config built-in agent.
Jitsi Meet
Collaboration · Team Chat · Video Conferencing
Open-source, end-to-end encrypted video conferencing you can self-host or embed into any web or mobile app.
Karakeep
Bookmarks Archiving
Self-hosted bookmark manager that captures links, notes, images, and PDFs with AI tagging, full-text search, and automatic archiving.
LibrePhotos
File Storage
Self-hosted photo library with AI-powered face recognition, semantic search, and automatic event albums — no cloud required.
Linkwarden
Bookmarks Archiving · Knowledge Management
Self-hosted collaborative bookmark manager that captures full-page archives, enables annotation, and keeps your knowledge accessible forever.
Omnivore
Bookmarks Archiving · Knowledge Management · Note Taking
Self-hosted read-it-later platform with highlights, newsletters, PDFs, and seamless Obsidian and Logseq integration.
OneUptime
Monitoring
The complete open-source observability platform that replaces PagerDuty, Datadog, Sentry, and StatusPage with a single self-hostable system.
Orca
AI Agents · AI Code Assistants
An open-source Agent Development Environment that orchestrates fleets of parallel AI coding agents — Claude Code, Codex, Gemini and more — each running in its own isolated git worktree.