Quickstart
Get Pulse running in your app and see your first interaction data in under 10 minutes.
This guide walks you through the complete flow: installing the SDK, sending your first telemetry, creating an interaction in the dashboard, and seeing live data.
Prerequisites
- A Pulse account with access to the Pulse Dashboard
- An Android or React Native project
Step 1: Install the SDK
Android
Add the dependency to your app's build.gradle.kts:
dependencies {
implementation("in.horizonos:pulse-android-sdk:0.0.1-alpha")
}
React Native
yarn add @dreamhorizonorg/pulse-react-native
Step 2: Initialize
Android
In your Application class:
import com.pulse.android.sdk.PulseSDK
class MainApplication : Application() {
override fun onCreate() {
super.onCreate()
PulseSDK.INSTANCE.initialize(
application = this,
projectId = "your-project-id",
) {
interaction { enabled(true) }
activity { enabled(true) }
networkMonitoring { enabled(true) }
anrReporter { enabled(true) }
}
}
}
React Native
Initialize the native Android SDK as above, then in your App.tsx:
import { Pulse } from '@horizoneng/pulse-react-native';
Pulse.start();
Step 3: Verify Telemetry
Run your app. Within seconds, the Pulse dashboard should show incoming telemetry:
- App start events
- Screen lifecycle events
- Network requests
- Device and session metadata
Open the Pulse dashboard and check the Live Feed to confirm data is flowing.
Step 4: Create Your First Interaction
Interactions are how Pulse tracks critical user journeys. You define them in the dashboard.
-
Navigate to Interactions in the left sidebar
-
Click Create Interaction
-
Define the interaction:
- Name: e.g.,
Add to Cart - Start Event: The span or event that begins the flow (e.g.,
add_to_cart_clicked) - End Event: The span or event that completes it (e.g.,
cart_confirmed) - Thresholds: Set low (e.g., 200ms) and high (e.g., 1000ms) latency thresholds
- Name: e.g.,
-
Save the interaction
Pulse will now evaluate every instance of this interaction against your thresholds, computing Apdex scores, error rates, and latency percentiles in real time.
Step 5: Track a Custom Event
To feed data into your interaction, track events from your app:
Android
PulseSDK.INSTANCE.trackEvent(
name = "add_to_cart_clicked",
observedTimeStampInMs = System.currentTimeMillis(),
params = mapOf("product_id" to "SKU-1234")
)
React Native
Pulse.trackEvent('add_to_cart_clicked', {
product_id: 'SKU-1234',
});
Step 6: See Interaction Data
Once Pulse receives events matching your interaction's start and end events:
- Go to Interactions in the dashboard
- Click on your interaction (e.g.,
Add to Cart) - You'll see:
- Apdex score trending over time
- Error rate (incomplete interactions / total)
- Latency percentiles (P50, P95, P99)
- User experience breakdown (Excellent / Good / Average / Poor)
- Dimension segmentation — by device, OS, region, and more
What's Next
You now have the full loop working: SDK → telemetry → interaction → insight.
- Core Concepts — Deep dive into Apdex, error rates, and UX categorization
- Android SDK Guide — Full instrumentation reference
- React Native SDK Guide — Full instrumentation reference
- Dashboard Guide — Learn the full Pulse web portal
- Managing Interactions — Advanced interaction configuration