Ship Onde from React Native.

Keep your app in JavaScript or TypeScript. Put inference in the native layer where it belongs. That is the promise of @ondeinference/react-native.

npm package

Published as `@ondeinference/react-native`. Install it with the package manager your app already uses and keep moving.

Native engine

The JavaScript layer stays thin on purpose. The heavy lifting happens in the native Onde engine, where on-device inference actually belongs.

Expo-friendly

The package is built as an Expo module, which makes it a better fit for modern React Native apps than a random pile of bridge code.

Small surface, real app

Load a model, send a message, stream results, manage history. The API stays compact because the point is to ship, not to admire the wrapper.

Quick start

Add the package and go.

Install from npm, pnpm, or yarn. If you want to test model downloads or GGUF export before you ship the app build, use Onde CLI. If you want the broader case for local inference, read The Latency War.

# npm
npm install @ondeinference/react-native

# pnpm
pnpm add @ondeinference/react-native

# yarn
yarn add @ondeinference/react-native

Usage

Load. Prompt. Render.

The JavaScript API stays small because it should. Load the default model, send a message, and render the result in your app.

import { OndeChatEngine } from '@ondeinference/react-native';

const engine = new OndeChatEngine();

await engine.loadDefaultModel({
  systemPrompt: 'You are a helpful assistant.',
});

const result = await engine.sendMessage({
  message: 'Hello!',
});

console.log(result.text);

Coverage

Mobile first, for real.

iPhone and Android are the main targets here. If you want to see the live telemetry side, open Onde Inference Pulse.

PlatformABI / sliceStatus
iOSarm64 device, arm64 simulatorReady
Androidarm64Ready