
Next.js + FastAPI
This example shows a monorepo using Vercel Services with a Next.js frontend and a public FastAPI backend.
Demo
https://nextjs-fastapi-services.vercel.app/
How it works
The project is structured as a monorepo:
nextjs-fastapi/├── backend/├── frontend/└── vercel.json
Services are configured in vercel.json:
{"services": {"frontend": { "root": "frontend/", "framework": "nextjs" },"backend": { "root": "backend/", "entrypoint": "main:app" }},"rewrites": [{"source": "/svc/api/:path*","destination": { "type": "service", "service": "backend" }},{"source": "/(.*)","destination": { "type": "service", "service": "frontend" }}]}
Vercel will route requests to the backend service for URL with paths starting with /svc/api/ and to frontend for all other URLs.
Running Locally
vercel dev
Open http://localhost:3000 and try:
/api/hello(Next.js API route)/svc/api/status(FastAPI route)
Learn More
- Vercel Services - learn how services work on Vercel.
- Next.js Documentation - learn about Next.js features and API.
- FastAPI Documentation - learn about FastAPI features and API.


