> ## Documentation Index
> Fetch the complete documentation index at: https://docs.fortt.sh/llms.txt
> Use this file to discover all available pages before exploring further.

# Quickstart

> Get Fortt integrated into your React or Next.js app in minutes

<Warning>
  **Current Status**: Fortt is currently in data collection mode. The SDK will
  collect device fingerprinting data and send verification requests, but it will
  not show challenges to users or block any requests. All requests will be
  allowed while Fortt builds risk profiles and improves its detection
  capabilities.
</Warning>

<Info>
  **Zero User Impact**: Fortt operates completely in the background with zero
  visual impact on your users. There is no degradation of user experience—no
  popups, no challenges, and no interruptions. After the trial period, you'll
  receive a comprehensive traffic analysis report, and you can then choose
  whether to enable challenge/blocking features based on your needs.
</Info>

## Get started in two steps

Integrate Fortt into your application to start protecting against bots, abuse, and fraud.

### Step 1: Install the React SDK

Install the Fortt React SDK using your preferred package manager:

```bash theme={null}
npm install fortt/react
# or
yarn add fortt/react
# or
pnpm add fortt/react
```

### Step 2: Configure ForttProvider

Wrap your application (or the portion that needs protection) with `ForttProvider`. This provides the Fortt configuration to all child components.

**React SPA Example:**

```tsx theme={null}
import { ForttProvider } from 'fortt/react';

function App() {
  return (
    <ForttProvider projectId="your-project-id">
      {/* Your app components */}
    </ForttProvider>
  );
}
```

**Next.js App Router Example:**

```tsx theme={null}
// app/layout.tsx
'use client';

import { ForttProvider } from 'fortt/react';

export default function RootLayout({
  children,
}: {
  children: React.ReactNode;
}) {
  return (
    <html lang="en">
      <body>
        <ForttProvider projectId="your-project-id">{children}</ForttProvider>
      </body>
    </html>
  );
}
```

**ForttProvider Props:**

* `projectId` (required): Your unique Fortt project identifier
* `ignorePaths` (optional): Array of path patterns to skip automatic verification on (e.g., `['/dashboard', '/admin/*']`)

<Info>
  **Getting your projectId**: To start your trial and receive your `projectId`,
  contact [rafael@fortt.sh](mailto:rafael@fortt.sh). You'll receive your project
  identifier after starting your trial.
</Info>

### Excluding Pages from Automatic Verification

If you have pages where you don't want automatic verification to occur (like admin dashboards or internal pages), you can use the `ignorePaths` prop:

```tsx theme={null}
<ForttProvider
  projectId="your-project-id"
  ignorePaths={['/dashboard', '/admin/*', '/internal']}
>
  {children}
</ForttProvider>
```

The `ignorePaths` prop supports:

* **Exact matches**: `'/dashboard'` matches exactly `/dashboard`
* **Wildcard patterns**: `'/admin/*'` matches `/admin` and all subpaths like `/admin/users`, `/admin/settings`, etc.

When a page matches any pattern in `ignorePaths`, Fortt will skip automatic verification on that page load.

That's it! The `ForttProvider` automatically handles page view tracking—no additional code needed. The SDK automatically sends verification requests on page load, helping Fortt build a risk profile for your users.

**Zero User Impact**: All data collection happens silently in the background. Your users will experience no visual changes, no popups, no challenges, and no interruptions to their browsing experience.

## How It Works

When a page view occurs:

1. The SDK collects device fingerprinting data (browser characteristics, screen resolution, timezone, etc.)
2. It generates a unique nonce and retrieves or creates visitor and session IDs
3. A verification request is sent to Fortt's API with this information
4. Fortt evaluates the risk and returns a decision (ALLOW, MONITOR, CHALLENGE, or BLOCK)
5. The decision is logged and used to inform future risk assessments

This happens automatically in the background—your users won't notice any difference, but you'll start building valuable risk signals immediately. There is zero visual impact and no degradation of user experience.

## Next Steps

Now that you have basic page view tracking set up, you can:

* **Protect sensitive actions**: Use Fortt's React hooks to guard login forms, signups, payments, and other critical operations (documentation coming soon)
* **Review the API reference**: Learn about available React SDK components and hooks

<CardGroup cols={2}>
  <Card title="API Reference" icon="code" href="/api-reference/introduction">
    React SDK components and hooks reference
  </Card>

  <Card title="FAQ" icon="circle-question" href="/faq">
    Find answers to common questions
  </Card>
</CardGroup>

<Tip>
  **Need help?** Check out the [API Reference](/api-reference/introduction) for
  detailed information about verification requests and responses. If you have
  questions, feel free to reach out at
  [rafael@fortt.sh](mailto:rafael@fortt.sh).
</Tip>
