Skip to content

IP Blocking with Upstash

Template featuring IP Blocking at the edge using Upstash.

Framework Next.js
Use Case Edge Functions
CSS Tailwind
Publisher ▲ Vercel

IP Blocking with Upstash

This example features IP blocking at the edge with Redis using Upstash.

Demo

https://edge-functions-ip-blocking.vercel.app

One-Click Deploy

Deploy the example using Vercel:

Getting Started

Execute create-next-app with npm or Yarn to bootstrap the example:

npx create-next-app --example https://github.com/vercel/examples/tree/main/edge-functions/ip-blocking ip-blocking
# or
yarn create next-app --example https://github.com/vercel/examples/tree/main/edge-functions/ip-blocking ip-blocking

You'll need to have an account with Upstash. Once that's done, copy the .env.example file in this directory to .env.local (which will be ignored by Git):

cp .env.example .env.local

Then open .env.local and set the environment variables to match the REST API of your database. It should look like this:

UPSTASH_REST_API_DOMAIN = "us1-shiny-firefly-12345.upstash.io"
UPSTASH_REST_API_TOKEN = "your-api-token"

Next, run Next.js in development mode:

npm install
npm run dev

# or

yarn
yarn dev

Deploy it to the cloud with Vercel (Documentation).

IP Blocking with Upstash

Template featuring IP Blocking at the edge using Upstash.

Framework Next.js
Use Case Edge Functions
CSS Tailwind
Publisher ▲ Vercel

IP Blocking with Upstash

This example features IP blocking at the edge with Redis using Upstash.

Demo

https://edge-functions-ip-blocking.vercel.app

One-Click Deploy

Deploy the example using Vercel:

Getting Started

Execute create-next-app with npm or Yarn to bootstrap the example:

npx create-next-app --example https://github.com/vercel/examples/tree/main/edge-functions/ip-blocking ip-blocking
# or
yarn create next-app --example https://github.com/vercel/examples/tree/main/edge-functions/ip-blocking ip-blocking

You'll need to have an account with Upstash. Once that's done, copy the .env.example file in this directory to .env.local (which will be ignored by Git):

cp .env.example .env.local

Then open .env.local and set the environment variables to match the REST API of your database. It should look like this:

UPSTASH_REST_API_DOMAIN = "us1-shiny-firefly-12345.upstash.io"
UPSTASH_REST_API_TOKEN = "your-api-token"

Next, run Next.js in development mode:

npm install
npm run dev

# or

yarn
yarn dev

Deploy it to the cloud with Vercel (Documentation).

Unleash New Possibilities

Deploy your app on Vercel and unlock its full potential