getsentry / getsentry/sentry-react-native

Improve the Empower Plant demo

Open
#6,492 2 comments 0 reactions 0 assignees View on GitHub
Improvement React-Native
Dominant language
TypeScript
Stars
1.8k
Forks
366
Avg merge
1d 9h
Merged PRs (30d)
89

Description

Improvements for the React Native sample app (Empower Plant demo):

- Remove the custom `UserFeedbackModal` (built-in `feedbackIntegration()` is already active in `App.tsx`)
- Add `hermesProfilingIntegration()` explicitly instead of relying on `profilesSampleRate` alone
- Call `Sentry.appLoaded()` / `reportFullyDisplayed()` to demo standalone app-start + manual TTFD
- Add a "Block JS Thread" button to demo ANR detection (currently on by default but never exercised)
- Configure `networkRequestHeaders` / `networkResponseHeaders` in the existing `mobileReplayIntegration()` init
- Add a rage-tap button (10 rapid taps) to trigger the `ui.multiClick` breadcrumb
- Demo top-level `Sentry.setAttribute` / `setAttributes` (available in v8.17+)
- General cleanup

Already implemented / no longer needed:
- SDK upgrade (currently at 8.19.0)
- `beforeSendTransaction` counterpart to existing `beforeSend`
- `httpClientIntegration()` for non-2xx capture
- `mobileReplayIntegration()` with `networkDetailAllowUrls` and `networkCaptureBodies`

Contributor guide

Open the contributing guide

Research direction

Start with the React Native Empower Plant sample app and its App.tsx entry point, including the existing feedbackIntegration() and mobileReplayIntegration() setup. Trace the current profiling, app-start, ANR, replay, breadcrumb, and attribute demos before making the listed improvements. Done means each requested behavior is demonstrable and the obsolete custom feedback modal and other cleanup are removed.

Written by the indexing model from the issue text.

Assessment

Tech stack
react-native, typescript
Domain
mobile
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.