React Native, Flutter and Ionic
All three wrap the same hosted chat page, so whatever you train reaches customers on every one of them at once.
React Native
npm install @keyda/bot-react-native react-native-webview
cd ios && pod installreact-native-webview is a peer dependency, not a bundled one. React Native has no built-in web view, and vendoring one would fight with whatever version your app already has.
import { KeydaBot } from '@keyda/bot-react-native';
<KeydaBot
clientId="kb_live_your_key_here"
visible={showChat}
onClose={() => setShowChat(false)}
/>Rebuild the app after installing — react-native-webview has native code, so a JS reload is not enough.
Flutter
flutter pub add keyda_bot// Once, at app start
KeydaBot.init('kb_live_your_key_here');
// From your Help button
KeydaBot.show(context);Also KeydaBot.dismiss() and KeydaBot.isShowing.
Ionic and Capacitor
Most Ionic apps should just use the website snippet. An Ionic app is already a web view, so the plain script tag works exactly as it does on a website, and it is less code than any wrapper:
<script src="https://keyda.in/business/widget.js"
data-key="kb_live_your_key_here" async></script>Put it in index.html and you are finished.
Install @keyda/bot-capacitor only if you specifically want the chat as a separate full-screen surface rather than a bubble inside your own layout.
npm install @keyda/bot-capacitor
npx cap syncCordova and other hybrids
Same reasoning as Ionic: it is a web view, so the script tag works. There is no separate package.
What all of them share
- One chat UI, so a dashboard change is live everywhere with no app release
- Links open outside the chat, never replacing the conversation
- No analytics, no device identifiers, no third-party dependencies beyond the web view each platform requires
- Online only — the chat is a hosted page
The source for every package is public at github.com/KeydaAI/keyda-business-sdks.