@dreamhorizonorg/raven-client
v0.0.4
Published
sdk raven
Downloads
377
Readme
Raven Client
A powerful React Native SDK designed to help you manage in-app messaging, nudges, ToolTip, and Engagement in your mobile applications. Built with a sophisticated state machine system, it enables you to create complex, event-driven user experiences with ease.
📚 Documentation
The complete documentation includes:
Capabilities
- 🎯 In-App Engagement: Display contextual nudges and bottom sheets
- 💬 ToolTip System: Native tooltip system with screen tracking
- 📊 Event-Driven Engagement: Trigger Engagement based on app events
- 🔄 State Machine DSL: Built-in state machine for Engagement lifecycle with powerful DSL
- 📱 Cross-Platform: Works seamlessly on both iOS and Android
- 🎨 Customizable: Fully customizable UI components
- ⏱️ Frequency Control: Fine-grained frequency rules (session, window, lifespan-based)
- 🏷️ Behaviour Tags: Organize and manage multiple Engagement together
Installation
npm install @dreamhorizonorg/raven-client
# or
yarn add @dreamhorizonorg/raven-client
# or
pnpm add @dreamhorizonorg/raven-clientPrerequisites
- React Native >= 0.70
- React >= 18.0
@react-navigation/native>= 7.0.0react-native-gesture-handler>= 2.20.0@gorhom/bottom-sheet>= 4.6.0
See Prerequisites for detailed setup instructions.
Quick Start
Get started with Raven Client in minutes:
- Installation Guide - Install and configure the SDK
- Quick Start Tutorial - Complete setup guide with code examples
- Navigation Setup - Set up React Navigation
- Initialization - Initialize the SDK
- Event Processing - Process app events
Features & Usage
- Nudges - Display contextual nudges and bottom sheets
- Tooltips - Native tooltip system with screen tracking
API Reference
For complete API documentation, see:
Examples
- Basic Engagement Example - Simple engagement with welcome nudge
- Multi-Step Nudge - Complex multi-step user journey
Troubleshooting
Having issues? Check out the Troubleshooting Guide for common problems and solutions.
Contributing
We welcome contributions! Please see CONTRIBUTING.md for guidelines.
Quick Start:
- 🐛 Found a bug? Report it
- ✨ Have a feature idea? Request it
- ❓ Need help? Ask a question
- 🔀 Ready to submit code? Create a Pull Request
Code of Conduct
Please read our Code of Conduct before contributing.
Core Concepts
- State Machine DSL - Define complex user flows with state transitions
- Engagement System - Understanding how Engagement work
- Behaviour Tags - Organize and group Engagement
- Filters - Conditional logic for state transitions
Guides
- Customization - Customize UI components
- Frequency Control - Control how often Engagement are shown
- Error Handling - Handle errors gracefully
- Grouping CTAs - Group related Engagement together
License
This project is licensed under the MIT License - see the LICENSE file for details.
Made with ❤️ by Horizon Engineering
