vercel-services
Deploy multi-service projects with Vercel
Services let you deploy multiple independently-built units within a single Vercel project. The typical use case is combining different runtimes (e.g. Python + JavaScript) in one deployment with shared routing and environment variables, but services work for any combination — multiple services of the same runtime, different frameworks, or a mix.
This skill covers project structure and configuration. For the actual deployment, defer to the deployments-cicd skill.
How It Works
A service is an independently built unit within your project, deployed to the same domain under a unique subpath. At build time, Vercel builds each service separately. At request time, Vercel routes incoming requests to the correct service based on the URL path prefix (longest prefix wins).
- Services are enabled via the
experimentalServicesfield invercel.json(see reference project). vercel dev -Lauto-detects frameworks and runs all services locally as one application, handling routing automatically. The-Lflag (short for--local) runs without authenticating with Vercel Cloud.- Only
vercel.jsonlives at the root. Each service manages its own dependencies independently.
Configuration
Define services in vercel.json: