惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

GbyAI
GbyAI
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
博客园 - 叶小钗
大猫的无限游戏
大猫的无限游戏
H
Help Net Security
G
Google Developers Blog
D
Docker
阮一峰的网络日志
阮一峰的网络日志
A
About on SuperTechFans
aimingoo的专栏
aimingoo的专栏
博客园 - 聂微东
Hugging Face - Blog
Hugging Face - Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
Apple Machine Learning Research
Apple Machine Learning Research
云风的 BLOG
云风的 BLOG
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
腾讯CDC
T
The Blog of Author Tim Ferriss
Microsoft Security Blog
Microsoft Security Blog
WordPress大学
WordPress大学
I
InfoQ
Engineering at Meta
Engineering at Meta
Stack Overflow Blog
Stack Overflow Blog
Google DeepMind News
Google DeepMind News

Flags SDK Documentation

Global Config Bulk Evaluation Evaluation Context Precompute GrowthBook Hypertune PostHog Split Evaluation Context Precompute Evaluation Context Quickstart Precompute GrowthBook Hypertune PostHog Split Proxy Dashboard Pages Marketing Pages Dashboard Pages Marketing Pages Data Locality Providers LaunchDarkly Optimizely Reflag Statsig Server-side vs Client-side Flags as Code
Quickstart
Vercel · 2026-05-28 · via Flags SDK Documentation

Learn how to start using the Flags SDK in your Next.js project.

From the creators of Next.js, the Flags SDK is a free open-source library for implementing feature flags and A/B tests in your applications.

  • Works with any flag provider or custom setup.
  • Compatible with App Router, Pages Router, and Middleware.

Install the Flags SDK using your preferred package manager:

If you use an AI coding assistant, we recommend installing the Flags SDK agent skill:

npx skills add vercel/flags --skill flags-sdk

Create a flags.ts file in your project and declare a feature flag there:

import { flag } from 'flags/next';

export const exampleFlag = flag({
  key: 'example-flag',
  decide() {
    return Math.random() > 0.5;
  },
});

This produces an exampleFlag function.

If you're using the App Router, you can call the flag function from a page, component, or middleware to evaluate the flag.

import { exampleFlag } from '../flags';

export default async function Page() {
  const example = await exampleFlag();

  return <div>{example ? 'Flag is on' : 'Flag is off'}</div>;
}

That's it! Run next dev and open your browser to see the "Flag is on" or "Flag is off" text.

Pages Router

If you're using the Pages Router, you can call the flag function inside getServerSideProps and pass the values to the page as props.

import type { InferGetServerSidePropsType, GetServerSideProps } from 'next'
import { exampleFlag } from '../flags';

export const getServerSideProps = (async ({ req }) => {
  const example = await exampleFlag(req);
  return { props: { example } };
}) satisfies GetServerSideProps<{ example: boolean }>;

export default function Page({
  example
}: InferGetServerSidePropsType<typeof getServerSideProps>) {
  return <div>{example ? 'Flag is on' : 'Flag is off'}</div>;
}

That's it! Run next dev and open your browser to see the "Flag is on" or "Flag is off" text.

The Flags Explorer is a feature of the Vercel Toolbar which allows overriding feature flags for your session only, without affecting your team members. The Flags SDK will automatically respect overrides set by the Flags Explorer.

This is useful when working with feature flags, as you can try out different states without actually changing the feature flag configuration in the flag provider.

Learn more about precompute in Next.js

Clone the Flags SDK example