---
title: "TanStack Start React"
url: https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react/
---

# TanStack Start React | Sentry for TanStack Start React

This SDK is compatible with TanStack Start 1.0 RC and is currently in **ALPHA**. Alpha features are still in progress, may have bugs and might include breaking changes. Please reach out on [GitHub](https://github.com/getsentry/sentry-javascript/issues/new/choose) if you have any feedback or concerns.

This guide walks you through setting up Sentry in a [TanStack Start (React)](https://tanstack.com/start/latest/docs/framework/react/overview) app. For [TanStack Router (React)](https://tanstack.com/router/latest/docs/framework/react/overview), see our [React TanStack Router guide](https://docs.sentry.io/platforms/javascript/guides/react/features/tanstack-router.md).

## [Prerequisites](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react.md#prerequisites)

You need:

* A Sentry [account](https://sentry.io/signup/) and [project](https://docs.sentry.io/product/projects.md)
* Your application up and running

## [Step 1: Install](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react.md#step-1-install)

Choose the features you want to configure, and this guide will show you how:

Error Monitoring\[ ]Tracing\[ ]Session Replay\[ ]Logs\[ ]User Feedback

Want to learn more about these features?

* [**Issues**](https://docs.sentry.io/product/issues.md) (always enabled)
  <!-- -->
  :
  <!-- -->
  Sentry's core error monitoring product that automatically reports errors, uncaught exceptions, and unhandled rejections. If you have something that looks like an exception, Sentry can capture it.
* [**Tracing**](https://docs.sentry.io/product/tracing.md):
  <!-- -->
  Track software performance while seeing the impact of errors across multiple systems. For example, distributed tracing allows you to follow a request from the frontend to the backend and back.
* [**Session Replay**](https://docs.sentry.io/product/explore/session-replay/web.md):
  <!-- -->
  Get to the root cause of an issue faster by viewing a video-like reproduction of what was happening in the user's browser before, during, and after the problem.
* [**Logs**](https://docs.sentry.io/product/explore/logs.md):
  <!-- -->
  Centralize and analyze your application logs to correlate them with errors and performance issues. Search, filter, and visualize log data to understand what's happening in your applications.
* [**User Feedback**](https://docs.sentry.io/product/user-feedback.md):
  <!-- -->
  Collect feedback directly from users when they encounter errors, allowing them to describe what happened and provide context that helps you understand and resolve issues faster.

### [Install the Sentry SDK](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react.md#install-the-sentry-sdk)

Run the command for your preferred package manager to add the SDK package to your application:

```bash
npm install @sentry/tanstackstart-react --save
```

## [Step 2: Configure](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react.md#step-2-configure)

### [Configure Client-Side Sentry](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react.md#configure-client-side-sentry)

Initialize Sentry in your `src/router.tsx` file:

`src/router.tsx`

```tsx
+import * as Sentry from "@sentry/tanstackstart-react";
 import { createRouter } from '@tanstack/react-router'

// Create a new router instance
export const getRouter = () => {
  const router = createRouter();

+ if (!router.isServer) {
+   Sentry.init({
+     dsn: "___PUBLIC_DSN___",
+
+     // Adds request headers and IP for users, for more info visit:
+     // https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react/configuration/options/#sendDefaultPii
+     sendDefaultPii: true,
+
+     integrations: [
+       // ___PRODUCT_OPTION_START___ performance
+       Sentry.tanstackRouterBrowserTracingIntegration(router),
+       // ___PRODUCT_OPTION_END___ performance
+       // ___PRODUCT_OPTION_START___ session-replay
+       Sentry.replayIntegration(),
+       // ___PRODUCT_OPTION_END___ session-replay
+       // ___PRODUCT_OPTION_START___ user-feedback
+       Sentry.feedbackIntegration({
+         // Additional SDK configuration goes in here, for example:
+         colorScheme: "system",
+       }),
+       // ___PRODUCT_OPTION_END___ user-feedback
+     ],
+     // ___PRODUCT_OPTION_START___ logs
+
+     // Enable logs to be sent to Sentry
+     enableLogs: true,
+     // ___PRODUCT_OPTION_END___ logs
+
+     // ___PRODUCT_OPTION_START___ performance
+     // Set tracesSampleRate to 1.0 to capture 100%
+     // of transactions for tracing.
+     // We recommend adjusting this value in production.
+     // Learn more at https://docs.sentry.io/platforms/javascript/configuration/options/#traces-sample-rate
+     tracesSampleRate: 1.0,
+     // ___PRODUCT_OPTION_END___ performance
+     // ___PRODUCT_OPTION_START___ session-replay
+
+     // Capture Replay for 10% of all sessions,
+     // plus for 100% of sessions with an error.
+     // Learn more at https://docs.sentry.io/platforms/javascript/session-replay/configuration/#general-integration-configuration
+     replaysSessionSampleRate: 0.1,
+     replaysOnErrorSampleRate: 1.0,
+     // ___PRODUCT_OPTION_END___ session-replay
+   });
+  }

  return router;
}
```

### [Configure Server-side Sentry](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react.md#configure-server-side-sentry)

Create an instrument file `instrument.server.mjs` in the root of your project. In this file, initialize the Sentry SDK for your server:

`instrument.server.mjs`

```tsx
import * as Sentry from "@sentry/tanstackstart-react";

Sentry.init({
  dsn: "___PUBLIC_DSN___",

  // Adds request headers and IP for users, for more info visit:
  // https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react/configuration/options/#sendDefaultPii
  sendDefaultPii: true,
  // ___PRODUCT_OPTION_START___ logs

  // Enable logs to be sent to Sentry
  enableLogs: true,
  // ___PRODUCT_OPTION_END___ logs

  // ___PRODUCT_OPTION_START___ performance
  // Set tracesSampleRate to 1.0 to capture 100%
  // of transactions for tracing.
  // We recommend adjusting this value in production
  // Learn more at
  // https://docs.sentry.io/platforms/javascript/configuration/options/#traces-sample-rate
  tracesSampleRate: 1.0,
  // ___PRODUCT_OPTION_END___ performance
});
```

#### [Add the sentryTanstackStart Vite Plugin](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react.md#add-the-sentrytanstackstart-vite-plugin)

**Make sure you add your auth token to your CI, if you are using one to deploy your application.**

Add your auth token to your environment:

`.env`

```bash
SENTRY_AUTH_TOKEN=___ORG_AUTH_TOKEN___
```

Using environment variables in Vite configs

Vite doesn't automatically load `.env` files into `process.env` when evaluating the config file. If you store your auth token in a `.env` file and want to access it via `process.env.SENTRY_AUTH_TOKEN`, use Vite's [`loadEnv`](https://vite.dev/guide/api-javascript#loadenv) helper:

`vite.config.js`

```javascript
import { defineConfig, loadEnv } from "vite";

export default defineConfig(({ mode }) => {
  const env = loadEnv(mode, process.cwd(), "");

  return {
    plugins: [
      sentryVitePlugin({
        authToken: env.SENTRY_AUTH_TOKEN,
        // ...
      }),
    ],
  };
});
```

Alternatively, use a `.env.sentry-build-plugin` file, which the Sentry plugin reads automatically.

Configure `sentryTanstackStart` in your `vite.config.ts`:

`vite.config.ts`

```typescript
import { defineConfig } from "vite";
import { sentryTanstackStart } from "@sentry/tanstackstart-react/vite";
import { tanstackStart } from "@tanstack/react-start/plugin/vite";

export default defineConfig({
  plugins: [
    tanstackStart(),
    // other plugins - sentryTanstackStart should be last
    sentryTanstackStart({
      org: "___ORG_SLUG___",
      project: "___PROJECT_SLUG___",
      authToken: process.env.SENTRY_AUTH_TOKEN,
    }),
  ],
});
```

By default, this plugin manages source map uploads. When tracing is enabled, it also automatically instruments middlewares for tracing. For all available options, see the [Vite Plugin documentation](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react/features/sentryTanstackStart.md).

#### [Instrument the Server Entry Point](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react.md#instrument-the-server-entry-point)

To capture server-side errors and tracing data, you need to explicitly define a [server entry point](https://tanstack.com/start/latest/docs/framework/react/guide/server-entry-point) in your application and wrap your request handler with `wrapFetchWithSentry`.

Follow the section below that matches your deployment setup:

#### [With `--import` Flag (e.g. Node.js Server)](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react.md#with---import-flag-eg-nodejs-server)

Use this setup when you can configure Node.js CLI flags.

Create a `src/server.ts` file in your project:

`src/server.ts`

```typescript
import { wrapFetchWithSentry } from "@sentry/tanstackstart-react";
import handler, {
  createServerEntry,
} from "@tanstack/react-start/server-entry";

export default createServerEntry(
  wrapFetchWithSentry({
    fetch(request: Request) {
      return handler.fetch(request);
    },
  }),
);
```

##### [Moving the Sentry server config file for production usage](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react.md#moving-the-sentry-server-config-file-for-production-usage)

For production monitoring, you need to move the Sentry server config file to your build output. Since [TanStack Start is designed to work with any hosting provider](https://tanstack.com/start/latest/docs/framework/react/guide/hosting), the exact location will depend on where your build artifacts are deployed (for example, `"/dist"`, `".output/server"` or a platform-specific directory).

For example, when using [Nitro](https://nitro.build/), copy the instrumentation file to `".output/server"`:

`package.json`

```json
{
  "scripts": {
     "build": "vite build",
     "build": "vite build && cp instrument.server.mjs .output/server",
  }
}
```

##### [Load Instrumentation on Startup](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react.md#load-instrumentation-on-startup)

Add a `--import` flag directly or to the `NODE_OPTIONS` environment variable wherever you run your application to import `instrument.server.mjs`.

`package.json`

```json
{
  "scripts": {
     "build": "vite build && cp instrument.server.mjs .output/server",
       "dev": "vite dev --port 3000",
       "start": "node .output/server/index.mjs",
       "dev": "NODE_OPTIONS='--import ./instrument.server.mjs' vite dev --port 3000",
       "start": "node --import ./.output/server/instrument.server.mjs .output/server/index.mjs",
  }
}
```

#### [Without `--import` Flag (e.g. Vercel, Netlify)](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react.md#without---import-flag-eg-vercel-netlify)

If you can't configure Node.js CLI flags or environment variables at runtime (for example, when deploying to serverless platforms like Vercel or Netlify), you can import the server instrumentation file directly at the top of your server entry point instead.

Create a `src/server.ts` file in your project:

`src/server.ts`

```typescript
import "../instrument.server.mjs";
import { wrapFetchWithSentry } from "@sentry/tanstackstart-react";
import handler, {
  createServerEntry,
} from "@tanstack/react-start/server-entry";

export default createServerEntry(
  wrapFetchWithSentry({
    fetch(request: Request) {
      return handler.fetch(request);
    },
  }),
);
```

##### Restrictions of this installation method

This installation method has the fundamental restriction that only native Node.js APIs can be instrumented (such as `fetch` and the `http` module).

As a result, the Sentry SDK will not capture data from database calls, queues, ORMs, third-party libraries, or other framework-specific data.

We recommend using the [setup with the `--import` flag](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react.md#with---import-flag-eg-nodejs-server) if possible.

This setup does not currently work for Cloudflare deployments.

## [Step 3: Capture TanStack Start React Errors](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react.md#step-3-capture-tanstack-start-react-errors)

### [Capturing Server-Side Errors](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react.md#capturing-server-side-errors)

To capture server-side errors from HTTP requests and server function calls, add Sentry's global middlewares to `createStart()` in your `src/start.ts` file:

`src/start.ts`

```tsx
import {
  sentryGlobalFunctionMiddleware,
  sentryGlobalRequestMiddleware,
} from "@sentry/tanstackstart-react";
import { createStart } from "@tanstack/react-start";

export const startInstance = createStart(() => {
  return {
    requestMiddleware: [sentryGlobalRequestMiddleware],
    functionMiddleware: [sentryGlobalFunctionMiddleware],
  };
});
```

The Sentry middleware should be the first middleware in the arrays to ensure all errors are captured.

SSR rendering exceptions are not captured by the middleware. Use `captureException` to manually capture those errors.

### [Capturing Errors in Error Boundaries and Components (Optional)](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react.md#capturing-errors-in-error-boundaries-and-components-optional)

Sentry automatically captures unhandled client-side errors. Errors caught by your own error boundaries aren't captured unless you report them manually:

#### [Custom Error Boundary](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react.md#custom-error-boundary)

Wrap your custom `ErrorBoundary` component with [`withErrorBoundary`](https://docs.sentry.io/platforms/javascript/guides/react/features/error-boundary.md):

```tsx
import React from "react";
import * as Sentry from "@sentry/tanstackstart-react";

class MyErrorBoundary extends React.Component {
  // ...
}

export const MySentryWrappedErrorBoundary = Sentry.withErrorBoundary(
  MyErrorBoundary,
  {
    // ... sentry error wrapper options
  },
);
```

#### [TanStack Router `errorComponent`](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react.md#tanstack-router-errorcomponent)

Use Sentry's `captureException` function inside a `useEffect` hook within your `errorComponent`:

```tsx
import { createRoute } from "@tanstack/react-router";

import * as Sentry from "@sentry/tanstackstart-react";


const route = createRoute({
  errorComponent: ({ error }) => {

    useEffect(() => {
      Sentry.captureException(error)
    }, [error])


    return (
      // ...
    )
  }
})
```

## [Step 4: Add Readable Stack Traces With Source Maps (Optional)](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react.md#step-4-add-readable-stack-traces-with-source-maps-optional)

If you configured the `sentryTanstackStart` Vite plugin in Step 2, source maps are automatically uploaded during production builds.

If you need more control over the upload process, see our [source maps guide](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react/sourcemaps.md) for manual configuration options.

## [Step 5: Avoid Ad Blockers With Tunneling (Optional)](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react.md#step-5-avoid-ad-blockers-with-tunneling-optional)

You can prevent ad blockers from blocking Sentry events using tunneling. Use the `tunnel` option to add an API endpoint in your application that forwards Sentry events to Sentry servers.

To enable tunneling, update `Sentry.init` with the following option:

```javascript
Sentry.init({
  dsn: "___PUBLIC_DSN___",

  tunnel: "/tunnel",

});
```

This will send all events to the `tunnel` endpoint. However, the events need to be parsed and redirected to Sentry, so you'll need to do additional configuration on the server. You can find a detailed explanation on how to do this on our [Troubleshooting page](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react/troubleshooting.md#using-the-tunnel-option).

## [Step 6: Verify](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react.md#step-6-verify)

Let's test your setup and confirm that Sentry is working correctly and sending data to your Sentry project.

### [Issues](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react.md#issues)

To verify that Sentry captures errors and creates issues in your Sentry project, add a test button to one of your pages, which will trigger an error that Sentry will capture when you click it:

```tsx
<button
  type="button"
  onClick={() => {
    throw new Error("Sentry Test Error");
  }}
>
  Break the world
</button>;
```

Open the page in a browser and click the button to trigger a frontend error.

##### Important

Errors triggered from within your browser's developer tools (like the browser console) are sandboxed, so they will not trigger Sentry's error monitoring.

### [Tracing](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react.md#tracing)

To test tracing, create a new file like `src/routes/api/sentry-example.ts` to create a test route `/api/sentry-example`:

`src/routes/api/sentry-example.ts`

```typescript
import { createFileRoute } from "@tanstack/react-router";
import { json } from "@tanstack/react-start";

export const Route = createFileRoute("/api/sentry-example")({
  server: {
    handlers: {
      GET: () => {
        throw new Error("Sentry Example Route Error");
        return new Response(
          JSON.stringify({ message: "Testing Sentry Error..." }),
          {
            headers: {
              "Content-Type": "application/json",
            },
          },
        );
      },
    },
  },
});
```

Next, update your test button to call this route and throw an error if the response isn't `ok`:

```tsx
<button
  type="button"
  onClick={async () => {
    await Sentry.startSpan(
      {
        name: "Example Frontend Span",
        op: "test",
      },
      async () => {
        const res = await fetch("/api/sentry-example");
        if (!res.ok) {
          throw new Error("Sentry Example Frontend Error");
        }
      },
    );
  }}
>
  Break the world
</button>;
```

Open the page in a browser and click the button to trigger two errors:

* a frontend error
* an error within the API route

Additionally, this starts a performance trace to measure the time it takes for the API request to complete.

### [Logs NEW](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react.md#logs-)

To verify that Sentry catches your logs, add some log statements to your application:

```javascript
Sentry.logger.info("User example action completed");

Sentry.logger.warn("Slow operation detected", {
  operation: "data_fetch",
  duration: 3500,
});

Sentry.logger.error("Validation failed", {
  field: "email",
  reason: "Invalid email",
});
```

### [View Captured Data in Sentry](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react.md#view-captured-data-in-sentry)

Now, head over to your project on [Sentry.io](https://sentry.io) to view the collected data (it takes a couple of moments for the data to appear).

Need help locating the captured errors in your Sentry project?

* Open the
  <!-- -->
  [**Issues**](https://sentry.io/orgredirect/organizations/:orgslug/issues/)
  <!-- -->
  page and select an error from the issues list to view the full details and context of this error. For more details, see this
  <!-- -->
  [interactive walkthrough](https://docs.sentry.io/product/sentry-basics/integrate-frontend/generate-first-error.md#ui-walkthrough).
* Open the
  <!-- -->
  [**Traces**](https://sentry.io/orgredirect/organizations/:orgslug/explore/traces/)
  <!-- -->
  page and select a trace to reveal more information about each span, its duration, and any errors. For an interactive UI walkthrough, click
  <!-- -->
  [here](https://docs.sentry.io/product/sentry-basics/distributed-tracing/generate-first-error.md#ui-walkthrough).
* Open the
  <!-- -->
  [**Replays**](https://sentry.io/orgredirect/organizations/:orgslug/replays/)
  <!-- -->
  page and select an entry from the list to get a detailed view where you can replay the interaction and get more information to help you troubleshoot.
* Open the
  <!-- -->
  [**Logs**](https://sentry.io/orgredirect/organizations/:orgslug/explore/logs/)
  <!-- -->
  page and filter by service, environment, or search keywords to view log entries from your application. For an interactive UI walkthrough, click
  <!-- -->
  [here](https://docs.sentry.io/product/explore/logs.md#overview).
* Open the
  <!-- -->
  [**User Feedback**](https://sentry.io/orgredirect/organizations/:orgslug/feedback/)
  <!-- -->
  page and click on individual feedback to see more details all in one view. For more information, click [here](https://docs.sentry.io/product/user-feedback.md).

## [Next Steps](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react.md#next-steps)

At this point, you should have integrated Sentry into your TanStack Start React application and should already be sending data to your Sentry project.

Now's a good time to customize your setup and look into more advanced topics. Our next recommended steps for you are:

* Explore [practical guides](https://docs.sentry.io/guides.md) on what to monitor, log, track, and investigate after setup
* Learn how to [manually capture errors](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react/usage.md)
* Continue to [customize your configuration](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react/configuration.md)
* Get familiar with [Sentry's product features](https://docs.sentry.io/product.md) like tracing, insights, and alerts

Are you having problems setting up the SDK?

* Find various topics in [Troubleshooting](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react/troubleshooting.md)
* [Get support](https://sentry.zendesk.com/hc/en-us/)

## Other JavaScript Frameworks

- [Angular](https://docs.sentry.io/platforms/javascript/guides/angular.md)
- [Astro](https://docs.sentry.io/platforms/javascript/guides/astro.md)
- [AWS Lambda](https://docs.sentry.io/platforms/javascript/guides/aws-lambda.md)
- [Azure Functions](https://docs.sentry.io/platforms/javascript/guides/azure-functions.md)
- [Bun](https://docs.sentry.io/platforms/javascript/guides/bun.md)
- [Capacitor](https://docs.sentry.io/platforms/javascript/guides/capacitor.md)
- [Cloud Functions for Firebase](https://docs.sentry.io/platforms/javascript/guides/firebase.md)
- [Cloudflare](https://docs.sentry.io/platforms/javascript/guides/cloudflare.md)
- [Connect](https://docs.sentry.io/platforms/javascript/guides/connect.md)
- [Cordova](https://docs.sentry.io/platforms/javascript/guides/cordova.md)
- [Deno](https://docs.sentry.io/platforms/javascript/guides/deno.md)
- [Effect](https://docs.sentry.io/platforms/javascript/guides/effect.md)
- [Electron](https://docs.sentry.io/platforms/javascript/guides/electron.md)
- [Elysia](https://docs.sentry.io/platforms/javascript/guides/elysia.md)
- [Ember](https://docs.sentry.io/platforms/javascript/guides/ember.md)
- [Express](https://docs.sentry.io/platforms/javascript/guides/express.md)
- [Fastify](https://docs.sentry.io/platforms/javascript/guides/fastify.md)
- [Gatsby](https://docs.sentry.io/platforms/javascript/guides/gatsby.md)
- [Google Cloud Functions](https://docs.sentry.io/platforms/javascript/guides/gcp-functions.md)
- [Hapi](https://docs.sentry.io/platforms/javascript/guides/hapi.md)
- [Hono](https://docs.sentry.io/platforms/javascript/guides/hono.md)
- [Koa](https://docs.sentry.io/platforms/javascript/guides/koa.md)
- [Nest.js](https://docs.sentry.io/platforms/javascript/guides/nestjs.md)
- [Next.js](https://docs.sentry.io/platforms/javascript/guides/nextjs.md)
- [Node.js](https://docs.sentry.io/platforms/javascript/guides/node.md)
- [Nuxt](https://docs.sentry.io/platforms/javascript/guides/nuxt.md)
- [React](https://docs.sentry.io/platforms/javascript/guides/react.md)
- [React Router Framework](https://docs.sentry.io/platforms/javascript/guides/react-router.md)
- [Remix](https://docs.sentry.io/platforms/javascript/guides/remix.md)
- [Solid](https://docs.sentry.io/platforms/javascript/guides/solid.md)
- [SolidStart](https://docs.sentry.io/platforms/javascript/guides/solidstart.md)
- [Svelte](https://docs.sentry.io/platforms/javascript/guides/svelte.md)
- [SvelteKit](https://docs.sentry.io/platforms/javascript/guides/sveltekit.md)
- [Vue](https://docs.sentry.io/platforms/javascript/guides/vue.md)
- [Wasm](https://docs.sentry.io/platforms/javascript/guides/wasm.md)

## Topics

- [Capturing Errors](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react/usage.md)
- [Source Maps](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react/sourcemaps.md)
- [Logs](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react/logs.md)
- [TanStack Start React Features](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react/features.md)
- [Session Replay](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react/session-replay.md)
- [Tracing](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react/tracing.md)
- [AI Agent Monitoring](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react/ai-agent-monitoring.md)
- [Metrics](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react/metrics.md)
- [Profiling](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react/profiling.md)
- [User Feedback](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react/user-feedback.md)
- [Sampling](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react/sampling.md)
- [Enriching Events](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react/enriching-events.md)
- [Extended Configuration](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react/configuration.md)
- [OpenTelemetry Support](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react/opentelemetry.md)
- [Feature Flags](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react/feature-flags.md)
- [Data Management](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react/data-management.md)
- [Security Policy Reporting](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react/security-policy-reporting.md)
- [Special Use Cases](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react/best-practices.md)
- [Migration Guide](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react/migration.md)
- [Troubleshooting](https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react/troubleshooting.md)
