> ## Documentation Index
> Fetch the complete documentation index at: https://docs.zixflow.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Quick Start

> Initialize the SDK and send your first event with React Native.

### Basic Configuration

The SDK is configured using a `ZixflowConfig` object with several options:

```typescript theme={null}
import { Zixflow, ZixflowConfig, ZixflowLogLevel } from 'zixflow-reactnative';

const config: ZixflowConfig = {
  apiKey: 'YOUR_API_KEY',
  logLevel: ZixflowLogLevel.debug,
  inApp: {
      },
  autoTrackDeviceAttributes: true,
  trackApplicationLifecycleEvents: true,
};
```

**Configuration Options**:

| Option                            | Type              | Required | Description                                    |
| --------------------------------- | ----------------- | -------- | ---------------------------------------------- |
| `apiKey`                          | string            | Yes      | Your Zixflow API key                           |
| `logLevel`                        | `ZixflowLogLevel` | No       | Logging level (debug, info, error, none)       |
| `inApp`                           | object            | No       | Enable in-app messaging (use empty object: {}) |
| `autoTrackDeviceAttributes`       | boolean           | No       | Automatically track device info                |
| `trackApplicationLifecycleEvents` | boolean           | No       | Automatically track app lifecycle              |

### SDK Initialization

Initialize the SDK in your `App.tsx` or main component using `useEffect`:

```typescript theme={null}
import React, { useEffect } from 'react';
import { Zixflow, ZixflowConfig, ZixflowLogLevel } from 'zixflow-reactnative';

export default function App() {
  useEffect(() => {
    // Configure the SDK
    const config: ZixflowConfig = {
      apiKey: 'YOUR_API_KEY',
      logLevel: ZixflowLogLevel.debug,
      inApp: {
              },
      autoTrackDeviceAttributes: true,
      trackApplicationLifecycleEvents: true,
    };

    // Initialize the SDK
    Zixflow.initialize(config);

    console.log('Zixflow SDK initialized');
  }, []);

  return (
    // Your app UI
  );
}
```

> **Important**: Initialize the SDK as early as possible in your app's lifecycle, ideally in the root component's `useEffect`.

***
