Wrap your React Native or Expo app with one component. Testers shake to report — screenshot, freehand annotations, and device context captured automatically.
Works with React Native and Expo out of the box.
No buttons to find. Shake the phone and start annotating.
Just wrap your app and pass your project token.
npm install @reviseflow/react-nativeimport { ReviseFlow } from "@reviseflow/react-native";
export default function App() {
return (
<ReviseFlow token="YOUR_PROJECT_TOKEN">
<YourApp />
</ReviseFlow>
);
}import { ReviseFlow, useReviseFlow } from "@reviseflow/react-native";
function ReportButton() {
const { open } = useReviseFlow();
return (
<TouchableOpacity onPress={open}>
<Text>Report a Bug</Text>
</TouchableOpacity>
);
}
export default function App() {
return (
<ReviseFlow
token="YOUR_PROJECT_TOKEN"
trigger="manual"
screenNameResolver={() => "HomeScreen"}
>
<ReportButton />
<YourApp />
</ReviseFlow>
);
}| Platform | Fully supported |
|---|---|
| React Native CLI | |
| Expo (managed) | |
| Expo (bare) | |
| iOS 13+ | |
| Android API 21+ |
Model and manufacturer
Platform and version
Dimensions and scale
Current route or screen
For full setup documentation, peer dependency requirements, and all available props, see our docs. View SDK documentation.
One component. Shake to report. Screenshots, annotations, and device context — all captured automatically.
Get Started Free