{"library":"react-native-converted-in-sdk","title":"React Native ConvertedIn SDK","description":"The `react-native-converted-in-sdk` package provides a React Native bridge for integrating the ConvertedIn tracking and analytics SDKs into both iOS and Android applications. It simplifies the process of incorporating e-commerce event tracking, such as 'view content', 'add to cart', 'initiate checkout', and 'purchase', as well as user identification features. The current stable version is 1.1.0, with a recent history of rapid releases (September 2024) addressing bug fixes and minor feature enhancements, indicating active development. A key differentiator is its dual API approach, offering both a functional `initializeSDK` method and a `RNConvertInSDKProvider` component with a `useConvertedInSdk` hook for flexible integration patterns. The library ships with TypeScript type definitions, improving developer experience. ConvertedIn itself is a marketing operating system for e-commerce, focusing on personalized multi-channel marketing to boost customer engagement and ROI.","language":"javascript","status":"active","last_verified":"Sun Apr 19","install":{"commands":["npm install react-native-converted-in-sdk"],"cli":null},"imports":["import { initializeSDK } from 'react-native-converted-in-sdk';","import { RNConvertInSDKProvider } from 'react-native-converted-in-sdk';","import { useConvertedInSdk } from 'react-native-converted-in-sdk';","import { identifyUser } from 'react-native-converted-in-sdk';"],"auth":{"required":false,"env_vars":[]},"quickstart":{"code":"import React, { useEffect } from 'react';\nimport { SafeAreaView, Text, Button, Alert } from 'react-native';\nimport { RNConvertInSDKProvider, useConvertedInSdk } from 'react-native-converted-in-sdk';\n\nconst AppContent = () => {\n  const { initializeSDK, identifyUser, trackEvent, isInitialized } = useConvertedInSdk();\n\n  useEffect(() => {\n    if (!isInitialized) {\n      // This is a redundant call if using RNConvertInSDKProvider, but shows manual initialization if not wrapped\n      initializeSDK({\n        pixelId: process.env.CONVERTEDIN_PIXEL_ID ?? 'CI-YOUR_PIXEL_ID',\n        storeUrl: process.env.CONVERTEDIN_STORE_URL ?? 'https://your-store.com',\n      });\n    }\n    console.log('SDK Initialized:', isInitialized);\n  }, [initializeSDK, isInitialized]);\n\n  const handleIdentifyUser = () => {\n    identifyUser(\"user@example.com\", \"+1\", \"5551234567\");\n    Alert.alert(\"User Identified\", \"Check console for details.\");\n  };\n\n  const handleTrackPurchase = () => {\n    trackEvent(\n      'Purchase',\n      {\n        currency: 'USD',\n        total: 99.99,\n        products: [\n          { id: 'SKU123', quantity: 1, name: 'Sample Product' },\n        ],\n      }\n    );\n    Alert.alert(\"Event Tracked\", \"Purchase event sent.\");\n  };\n\n  return (\n    <SafeAreaView style={{ flex: 1, justifyContent: 'center', alignItems: 'center', gap: 20 }}>\n      <Text style={{ fontSize: 20, fontWeight: 'bold' }}>ConvertedIn SDK Demo</Text>\n      <Button title=\"Identify User\" onPress={handleIdentifyUser} />\n      <Button title=\"Track Purchase Event\" onPress={handleTrackPurchase} />\n      <Text style={{ marginTop: 20 }}>SDK Initialized: {isInitialized ? 'Yes' : 'No'}</Text>\n    </SafeAreaView>\n  );\n};\n\nexport default function App() {\n  return (\n    <RNConvertInSDKProvider\n      pixelId={process.env.CONVERTEDIN_PIXEL_ID ?? 'CI-YOUR_PIXEL_ID'}\n      storeUrl={process.env.CONVERTEDIN_STORE_URL ?? 'https://your-store.com'}\n    >\n      <AppContent />\n    </RNConvertInSDKProvider>\n  );\n}","lang":"typescript","description":"This quickstart demonstrates how to initialize the ConvertedIn SDK using the `RNConvertInSDKProvider` and how to use the `useConvertedInSdk` hook to identify users and track e-commerce events like 'Purchase' within a React Native component. It showcases both provider-based setup and direct method calls.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":null}