Bring your AI agent into your mobile app
@solveoai/chat-client and @solveoai/react-native put the full Solveo AI experience — chat, live escalation, attachments, voice notes, lead forms, bookings, and rich e-commerce cards — inside your own iOS and Android app. Published on npm, works with Expo and React Native CLI.
A full chat experience, not just a widget wrapper
Everything the web widget can do, built for native mobile.
AI chat + live escalation
Full conversation flow with automatic hand-off to a human agent over Socket.IO, same as the web widget.
Attachments & voice notes
Built-in image/document pickers and in-chat audio messages via useAttachments() and useVoiceRecorder().
Headless or ready-made UI
Use @solveoai/react-native's prebuilt screens, or build your own UI on the headless @solveoai/chat-client.
Rich action cards
Lead forms, Cal.com bookings, Shopify/WooCommerce e-commerce cards, and Stripe payment cards render natively.
Themeable
Light, dark, and auto themes with design tokens and component overrides to match your app.
Push notifications
Register Expo or Firebase push tokens with one hook — usePushNotifications().
Built for real product teams, not a demo
The same platform behind your web widget, now inside your app.
- Same backend, same knowledge base, and same actions as your web widget — configure once.
- Headless client has zero React Native dependencies, so it also runs in Node or the browser.
- Everything degrades gracefully — optional native modules (gradients, icons) are truly optional.
- Runnable Expo example app included to see it working before you integrate.
Published and versioned on npm
Both packages ship real semver releases with a changelog — not an unpublished fork or a wrapped WebView. Install with your package manager like any other dependency.
Quick start
import AsyncStorage from "@react-native-async-storage/async-storage";
import { SolveoClient } from "@solveoai/chat-client";
import { SolveoProvider, SolveoChatScreen } from "@solveoai/react-native";
const client = new SolveoClient({
widgetId: "YOUR_WIDGET_ID",
persistence: { adapter: AsyncStorage, keyPrefix: "myapp_" },
});
export default function App() {
return (
<SolveoProvider client={client} theme={{ mode: "auto" }}>
<SolveoChatScreen showHeader showHistory enableAttachments enableVoiceNotes />
</SolveoProvider>
);
}Common questions
Is the React Native SDK published on npm?
Does it work with Expo?
Do I need the UI package, or can I build my own?
Can I use it with bare React Native CLI?
Add Solveo AI chat to your app
Install the SDK, drop in a provider, and ship AI chat in your mobile app today.