On-device AI / ML
draftedconfidence: lowearly: 1/12 of this tier graded so far (0 overturned) — the public scorecard →
recommendation
Cross-platform on-device models → react-native-executorch; Apple-only → @react-native-ai/apple; local RAG → react-native-rag. Fast-moving (confidence: low) — validate on-device perf before committing.
- offline speech-to-text → expo-speech-recognition / whisper
- private/offline LLM over local docs → react-native-rag
Low confidence — fast-moving or lightly-vetted domain: treat the pick as a vetted lead and prototype before committing.
Options & tradeoffs
| option | tradeoff | evidence |
|---|---|---|
| react-native-executorch | on-device models (Meta ExecuTorch); v0.8 adds VLM + runOnFrame worklet w/ Vision Camera; tool-calling/embeddings since 0.4, OCR since 0.3 | 6k/wk |
| @react-native-ai/apple | Apple on-device LLM + SpeechAnalyzer (iOS 26); zero cloud; RN 0.80+ (preview) | |
| @react-native-ai/adk | Google Gemini on ANDROID via the Agent Development Kit — on-device Gemini Nano + cloud models behind one Vercel-AI-SDK provider; tool calling + streaming; same react-native-ai family as the Apple provider (v0.12) | |
| react-native-nitro-mlx | Apple MLX on-device LLM + TTS/STT via Nitro Modules, with tool calling (ChatSession API); iOS 26+ ONLY; v0.5, ~100★ — niche/early | 20/wk |
| react-native-rag | on-device retrieval-augmented generation over ExecuTorchLLM; local vector store | 82/wk |
| offline speech (expo-speech-recognition / whisper) | speech-to-text without network |
npm weekly downloads (from the corpus's last signals run): react-native-executorch 6k · @react-native-ai/apple 35k · @react-native-ai/adk 261 · react-native-rag 82 · react-native-nitro-mlx 20
Verified notes
Fast-moving area surfaced across multiple RN Rewind issues; recommend tentatively (confidence: low) and validate on-device before committing.
Canonical reading
Editorial annotations on why each piece matters — the articles themselves are the originals; read them there.
A reasoned cost/latency/privacy case for on-device TTS (Kokoro via react-native-executorch), with the economics and the tradeoffs (voice/language coverage, a custom C++ phonemizer). A durable framing for the on-device-vs-cloud decision.
Sources
- github.com/software-mansion/react-native-exec…
- registry.npmjs.org/@react-native-ai/adk/latest
- github.com/software-mansion/react-native-exec…
- github.com/corasan/react-native-nitro-mlx
Related in ai: ai-ui · ai-devtools