New Project
Back to Templates

Geolocation in Edge Middleware

Learn how to use visitor's location at the edge.

DeployView Demo
Geolocation in Edge functions

Geolocation

This example shows how to use the event.request object to determine a user's location.

import { geolocation } from '@vercel/functions'
const geo = geolocation(req)
console.log(geo)
{
/** The city that the request originated from. */
city?: string;
/** The country that the request originated from. */
country?: string;
/** The flag emoji for the country the request originated from. */
flag?: string;
/** The Vercel Edge Network region that received the request. */
region?: string;
/** The region part of the ISO 3166-2 code of the client IP. */
countryRegion?: string;
/** The latitude of the client. */
latitude?: string;
/** The longitude of the client. */
longitude?: string;
}

Demo

https://edge-functions-geolocation.vercel.sh

How to Use

You can choose from one of the following two methods to use this repository:

One-Click Deploy

Deploy the example using Vercel:

Clone and Deploy

Execute create-next-app with pnpm to bootstrap the example:

pnpm create next-app --example https://github.com/vercel/examples/tree/main/edge-middleware/geolocation geolocation

Next, run Next.js in development mode:

pnpm dev

Deploy it to the cloud with Vercel (Documentation).

GitHub Repovercel/examples
LicenseView License
Use Cases
Edge Middleware
Stack
Next.jsTailwind

Related Templates

Back to Templates
DeployView Demo

i18n in Edge Middleware

This template shows how to redirect users based on i18n configuration.
i18n in Edge Middleware