Skip to Content
    QAFKA
    CTRL K
    CTRL K
    • Introduction
      • Quick Start
      • Configuration
      • React Native Widget
      • Theming
      • Context
      • Navigation
      • External Navigation
      • Handling Tools
      • Voice Chat
      • Sub-Projects
      • Error Handling
      • CLI
      • Dashboard
      • Invitations
      • Settings
        • Project
        • Overview
        • Conversations
        • Chat Test
        • Sub-Projects
        • Analysis
        • Configuration
        • Members
        • Documents
        • Tools
        • Action Logs
        • Navigation Rules
        • External Destinations
        • Chat Theme
        • API Keys
      • API Key Security
    • Introduction
      • Quick Start
      • Configuration
      • React Native Widget
      • Theming
      • Context
      • Navigation
      • External Navigation
      • Handling Tools
      • Voice Chat
      • Sub-Projects
      • Error Handling
      • CLI
      • Dashboard
      • Invitations
      • Settings
        • Project
        • Overview
        • Conversations
        • Chat Test
        • Sub-Projects
        • Analysis
        • Configuration
        • Members
        • Documents
        • Tools
        • Action Logs
        • Navigation Rules
        • External Destinations
        • Chat Theme
        • API Keys
      • API Key Security

    On This Page

    • Prerequisites
    • Recommended: CLI setup
    • Manual installation
    • Peer Dependencies
    • Next Steps
    Question? Give us feedback Edit this page 
    Getting StartedQuick Start

    Quick Start

    Get Qafka running in your React Native app in 5 minutes.

    Prerequisites

    • React Native 0.72+
    • Node.js 18+
    • A Qafka account with a project

    Recommended: CLI setup

    The Qafka CLI installs the SDK, registers the Expo config plugin where applicable, and writes the development key the SDK reads at runtime — no apiKey prop required.

    npm install -g qafka cd your-react-native-project qafka login qafka init

    After qafka init, mount the widget with no props:

    import { Qafka } from '@qafka/react-native' export default function ChatScreen() { return <Qafka /> }

    That’s it — your project’s theme, greeting, and tools load automatically. In production builds, the backend identifies the project via device attestation (App Attest / Play Integrity); no key ever ships in your bundle.

    Need a different layout or color scheme? See mode (fullscreen / inline / floating) and theme (light / dark / custom) in the widget reference.

    Manual installation

    If you’d rather wire things up yourself:

    npm install @qafka/react-native

    Peer Dependencies

    Required:

    npm install react-native-safe-area-context @react-native-async-storage/async-storage

    react-native-safe-area-context only needs to provide a <SafeAreaProvider> somewhere above the widget — Expo Router, React Navigation, and most RN starter templates already include one at the app root. You don’t need to wrap each <Qafka /> instance.

    Optional (enables device info reporting and built-in navigation):

    npm install react-native-device-info @react-navigation/native

    Without the CLI you still need to make the development key available to the SDK at runtime — see Configuration for how qafka.config.js is loaded and how to register more than one project.

    Next Steps

    • Configuration — All SDK options
    • React Native Widget — Full props reference and customization
    • Theming — Customize colors, fonts, and layout
    Last updated on June 3, 2026
    IntroductionConfiguration

    MIT 2026 QAFKA