sentry-react-setup▌
getsentry/sentry-agent-skills · updated Apr 8, 2026
Sentry error monitoring, session replay, and tracing for React applications.
- ›Install @sentry/react and initialize via instrument.js (imported first in your entry point) with DSN configuration
- ›Supports error capture via React 19+ error hooks or ErrorBoundary component for earlier versions
- ›Includes browser tracing, session replay, and Redux integration; router integrations available for React Router (v4–v7) and TanStack Router
- ›Source map upload via @sentry/wizard enables readable st
Sentry React Setup
Install and configure Sentry in React projects.
Invoke This Skill When
- User asks to "add Sentry to React" or "install Sentry" in a React app
- User wants error monitoring, logging, or tracing in React
- User mentions "@sentry/react" or React error boundaries
Important: The configuration options and code samples below are examples. Always verify against docs.sentry.io before implementing, as APIs and defaults may have changed.
Install
npm install @sentry/react --save
Configure
Create instrument.js in your project root (must be imported first in your app):
import * as Sentry from "@sentry/react";
Sentry.init({
dsn: "YOUR_SENTRY_DSN",
sendDefaultPii: true,
// Tracing + Session Replay
integrations: [
Sentry.browserTracingIntegration(),
Sentry.replayIntegration(),
],
tracesSampleRate: 1.0,
tracePropagationTargets: [/^\//, /^https:\/\/yourserver\.io\/api/],
replaysSessionSampleRate: 0.1,
replaysOnErrorSampleRate: 1.0,
// Logs
enableLogs: true,
});
Import First in Entry Point
// src/index.js or src/main.jsx
import "./instrument"; // Must be first!
import App from "./App";
import { createRoot } from "react-dom/client";
const root = createRoot(document.getElementById("app"));
root.render(<App />);
Error Handling
React 19+
Use error hooks with createRoot:
import { createRoot } from "react-dom/client";
import * as Sentry from "@sentry/react";
const root = createRoot(document.getElementById("app"), {
onUncaughtError: Sentry.reactErrorHandler(),
onCaughtError: Sentry.reactErrorHandler(),
onRecoverableError: Sentry.reactErrorHandler(),
});
React <19
Use ErrorBoundary component:
import * as Sentry from "@sentry/react";
<Sentry.ErrorBoundary fallback={<p>An error occurred</p>}>
<MyComponent />
</Sentry.ErrorBoundary>
Router Integration
| Router | Integration |
|---|---|
| React Router v7 | Sentry.reactRouterV7BrowserTracingIntegration |
| React Router v6 | Sentry.reactRouterV6BrowserTracingIntegration |
| React Router v4/v5 | Sentry.reactRouterV5BrowserTracingIntegration (shared for both) |
| TanStack Router | See TanStack Router docs |
Redux Integration (Optional)
import * as Sentry from "@sentry/react";
import { configureStore } from "@reduxjs/toolkit";
const store = configureStore({
reducer,
enhancers: (getDefaultEnhancers) =>
getDefaultEnhancers().concat(Sentry.createReduxEnhancer()),
});
Source Maps
Upload source maps for readable stack traces:
npx @sentry/wizard@latest -i sourcemaps
Environment Variables
SENTRY_DSN=https://xxx@o123.ingest.sentry.io/456
SENTRY_AUTH_TOKEN=sntrys_xxx # Used by sentry-cli / source maps, not the SDK
SENTRY_ORG=my-org # Used by sentry-cli, not the SDK
SENTRY_PROJECT=my-project # Used by sentry-cli, not the SDK
Note: The SDK reads SENTRY_DSN automatically. If using Create React App, prefix with REACT_APP_; for Vite, use VITE_. SENTRY_AUTH_TOKEN/ORG/PROJECT are used by sentry-cli for source map uploads, not by the browser SDK.
Verification
Add test button to trigger error:
<button onClick={() => { throw new Error("Sentry Test Error"); }}>
Test Sentry
</button>
Troubleshooting
| Issue | Solution |
|---|---|
| Errors not captured | Ensure instrument.js is imported first |
| Source maps not working | Run sourcemaps wizard, verify auth token |
| React Router spans missing | Add correct router integration for your version |
Discussion
Product Hunt–style comments (not star reviews)- No comments yet — start the thread.
Ratings
4.6★★★★★54 reviews- ★★★★★Olivia Farah· Dec 20, 2024
sentry-react-setup is among the better-maintained entries we tried; worth keeping pinned for repeat workflows.
- ★★★★★Meera Zhang· Dec 12, 2024
Useful defaults in sentry-react-setup — fewer surprises than typical one-off scripts, and it plays nicely with `npx skills` flows.
- ★★★★★Pratham Ware· Dec 4, 2024
sentry-react-setup has been reliable in day-to-day use. Documentation quality is above average for community skills.
- ★★★★★Jin Singh· Dec 4, 2024
Keeps context tight: sentry-react-setup is the kind of skill you can hand to a new teammate without a long onboarding doc.
- ★★★★★Olivia Zhang· Dec 4, 2024
Registry listing for sentry-react-setup matched our evaluation — installs cleanly and behaves as described in the markdown.
- ★★★★★Aisha Ndlovu· Nov 23, 2024
I recommend sentry-react-setup for anyone iterating fast on agent tooling; clear intent and a small, reviewable surface area.
- ★★★★★Sofia Zhang· Nov 23, 2024
sentry-react-setup reduced setup friction for our internal harness; good balance of opinion and flexibility.
- ★★★★★Meera Lopez· Nov 19, 2024
sentry-react-setup has been reliable in day-to-day use. Documentation quality is above average for community skills.
- ★★★★★Kiara Kim· Nov 11, 2024
Solid pick for teams standardizing on skills: sentry-react-setup is focused, and the summary matches what you get after install.
- ★★★★★Aisha Chen· Oct 14, 2024
sentry-react-setup reduced setup friction for our internal harness; good balance of opinion and flexibility.
showing 1-10 of 54