New Project

Arcjet Next.js Example App

Rate limiting and bot detection for Next.js

DeployView Demo

   

Arcjet example app

Arcjet helps developers protect their apps in just a few lines of code. Bot detection. Rate limiting. Email validation. Attack protection. Data redaction. A developer-first approach to security.

This is an example Next.js application demonstrating the use of multiple features. It is deployed at https://example.arcjet.com.

Features

  • Signup form protection uses Arcjet's server-side email verification configured to block disposable providers and ensure that the domain has a valid MX record. It also includes rate limiting and bot protection to prevent automated abuse.
  • Bot protection shows how a page can be protected from automated clients.
  • Rate limiting shows the use of different rate limit configurations depending on the authenticated user. A logged-in user can make more requests than an anonymous user.
  • Attack protection demonstrates Arcjet Shield, which detects suspicious behavior, such as SQL injection and cross-site scripting attacks.
  • Sensitive info protects against clients sending you sensitive information such as PII that you do not wish to handle.
  • Prompt injection detection analyzes user prompts for injection attacks such as jailbreaks, role-play escapes, or instruction overrides.

Run locally

  1. Register for a free Arcjet account.

  2. Install dependencies:

npm ci
  1. Rename .env.local.example to .env.local and add your Arcjet key

  2. Start the dev server

npm run dev
  1. Open http://localhost:3000 in your browser.

Need help?

Check out the docs, contact support, or join our Discord server.

Stack

  • App: Next.js
  • Form handling: React Hook Form (see also our full form protection example)
  • Client-side validation: Zod
  • Security: Arcjet

Contributing

All development for Arcjet examples is done in the arcjet/examples repository.

You are welcome to open an issue here or in arcjet/examples directly. However, please direct all pull requests to arcjet/examples. Take a look at our contributing guide for more information.

GitHub Repoarcjet/example-nextjs
LicenseView License
Use Cases
Security
Stack
Next.js
None
Auth
NextAuth.js

Related Templates

Vercel Edge Middleware Rate Limit

Add rate limiting to your application with any frontend framework.
Vercel Edge Middleware Rate Limit thumbnail
DeployView Demo