Socket
Book a DemoInstallSign in
Socket

@arcjet/next

Package Overview
Dependencies
Maintainers
3
Versions
46
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@arcjet/next

Arcjet SDK for the Next.js framework

latest
Source
npmnpm
Version
1.0.0-beta.11
Version published
Weekly downloads
16K
-16.83%
Maintainers
3
Weekly downloads
ย 
Created
Source
Arcjet Logo

@arcjet/next

npm badge

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 the Arcjet SDK for the Next.js framework. Find our other SDKs on GitHub.

Example app

Try an Arcjet protected app live at https://example.arcjet.com (source code).

Features

Arcjet security features for protecting Next.js apps:

  • ๐Ÿค– Bot protection - manage traffic by automated clients and bots.
  • ๐Ÿ›‘ Rate limiting - limit the number of requests a client can make.
  • ๐Ÿ›ก๏ธ Shield WAF - protect your application against common attacks.
  • ๐Ÿ“ง Email validation - prevent users from signing up with fake email addresses.
  • ๐Ÿ“ Signup form protection - combines rate limiting, bot protection, and email validation to protect your signup forms.
  • ๐Ÿ•ต๏ธโ€โ™‚๏ธ Sensitive information detection - block personally identifiable information (PII).
  • ๐Ÿš… Nosecone - set security headers such as Content-Security-Policy (CSP).

Quick start

This example will protect a Next.js API route with a rate limit, bot detection, and Shield WAF.

You can also find this quick start guide in the docs.

What is this?

This is our adapter to integrate Arcjet into Next.js. Arcjet helps you secure your Next web application. This package exists so that we can provide the best possible experience to Next users.

When should I use this?

You can use this if you are using Next.js. See our Get started guide for other supported frameworks.

Install

This package is ESM only. Install with npm in Node.js:

npm install @arcjet/next

Use

import arcjet, { shield } from "@arcjet/next";
import { NextResponse } from "next/server";

// Get your Arcjet key at <https://app.arcjet.com>.
// Set it as an environment variable instead of hard coding it.
const arcjetKey = process.env.ARCJET_KEY;

if (!arcjetKey) {
  throw new Error("Cannot find `ARCJET_KEY` environment variable");
}

const aj = arcjet({
  key: arcjetKey,
  rules: [
    // Shield protects your app from common attacks.
    // Use `DRY_RUN` instead of `LIVE` to only log.
    shield({ mode: "LIVE" }),
  ],
});

export async function GET(request: Request) {
  const decision = await aj.protect(request);

  if (decision.isDenied()) {
    return NextResponse.json({ message: "Forbidden" }, { status: 429 });
  }

  return NextResponse.json({ message: "Hello world" });
}

For more on how to configure Arcjet with Next.js and how to protect Next, see the Arcjet Next.js SDK reference on our website.

License

Apache License, Version 2.0 ยฉ Arcjet Labs, Inc.

Keywords

analyze

FAQs

Package last updated on 03 Sep 2025

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts