Vercel Functions
App Router
Project Setup
Let’s create a new Next.js application with App Router and install @upstash/redis
package.
npx create-next-app@latest
cd my-app
npm install @upstash/redis
Database Setup
Create a Redis database using Upstash Console or Upstash CLI and copy the UPSTASH_REDIS_REST_URL
and UPSTASH_REDIS_REST_TOKEN
into your .env
file.
.env
UPSTASH_REDIS_REST_URL=<YOUR_URL>
UPSTASH_REDIS_REST_TOKEN=<YOUR_TOKEN>
Function Setup
This is a Vercel Serverless Function. If you want to use Edge Runtime, you can add the export const runtime = 'edge'
line to this Route Handler.
Create /app/api/hello/route.ts
:
/app/api/hello/route.ts
import { Redis } from "@upstash/redis";
import { NextResponse } from "next/server";
const redis = Redis.fromEnv();
export async function GET() {
const count = await redis.incr("counter");
return NextResponse.json({ count });
}
export const dynamic = 'force-dynamic'
Run & Deploy
Run the app locally with npm run dev
, check http://localhost:3000/api/hello
Deploy your app with vercel
You can also integrate your Vercel projects with Upstash using Vercel Integration module. Check this article.
Was this page helpful?