• Product Introduction
  • Quick Start
    • Agent Development
    • Importing a Git Repository
    • Starting From a Template
    • Direct Upload
    • Start with AI
  • Framework Guide
    • Agent
    • Frontends
      • Vite
      • React
      • Vue
      • Hugo
      • Other Frameworks
    • Backends
    • Full-stack
      • Next.js
      • Nuxt
      • Astro
      • React Router
      • SvelteKit
      • TanStack Start
      • Vike
    • Custom 404 Page
  • Project Guide
    • Project Management
    • edgeone.json
    • Configuring Cache
    • Building Output Configuration
    • Error Codes
  • Build Guide
  • Deployment Guide
    • Overview
    • Create Deploys
    • Manage Deploys
    • Deploy Button
    • Using Github Actions
    • Using Gitlab CI/CD
    • Using CNB Plugin
    • Using IDE PlugIn
    • Using CodeBuddy IDE
  • Domain Management
    • Overview
    • Custom Domain
    • HTTPS Configuration
      • Overview
      • Apply for Free Certificate
      • Using Managed SSL Certificate
    • Configure DNS CNAME Record
  • Observability
    • Overview
    • Metric Analysis
    • Log Analysis
  • Functions
    • Overview
    • Edge Functions
    • Cloud Functions
      • Overview
      • Node.js
      • Python
      • Go
  • Agents
    • Overview
    • Quick Start
    • Conversation Storage
    • Observability
    • Sandbox Tool
      • Overview
      • Using the Agent Framework
      • Sandbox Atomic API
      • Network Search Tool
    • Agent Authentication
  • Models
    • Overview
    • Models and Vendors
      • Overview
      • Using Vendor Keys
        • OpenAI
        • Anthropic
        • Google AI Studio
        • DeepSeek
        • MiniMax
        • Hunyuan
        • Zhipu
        • MoonShot AI
    • FAQs
  • Storage
    • Overview
    • KV
    • Blob
  • Middleware
  • AI-Native Development
    • Skills
    • MCP
  • Copilot
    • Overview
    • Quick Start
  • API Token
  • EdgeOne CLI
  • Message Notification
  • Integration Guide
    • AI
      • Dialogue Large Models Integration
      • Large Models for Images Integration
    • Database
      • Supabase Integration
      • Pages KV Integration
    • Ecommerce
      • Shopify Integration
      • WooCommerce Integration
    • Payment
      • Stripe Integration
      • Integrating Paddle
    • CMS
      • WordPress Integration
      • Contentful Integration
      • Sanity Integration
      • Payload Integration
    • Authentication
      • Supabase Integration
      • Clerk Integration
  • Best Practices
    • Adding an AI Chat Assistant to a Website
    • AI Dialogue Deployment: Deploy Project with One Sentence Using Skill
    • Using General Large Model to Quickly Build AI Application
    • Use the DeepSeek model to quickly build a conversational AI site
    • Building an Ecommerce Platform with Shopify
    • Building a SaaS Site Using Supabase and Stripe
    • Building a Company Brand Site Quickly
    • How to Quickly Build a Blog Site
  • Migration Guides
    • Migrating from Vercel to EdgeOne Makers
    • Migrating from Cloudflare Pages to EdgeOne Makers
    • Migrating from Netlify to EdgeOne Makers
  • Troubleshooting
  • FAQs
  • Limits
  • Pricing
  • Contact Us
  • Release Notes

Migrating from Vercel to EdgeOne Makers

This guide helps you smoothly migrate your Vercel project to EdgeOne Makers.

Preparations: Search Build Command and Output Directory

Start by finding your Vercel project's build command and output directory:
1. Log in to the dashboard and find the project to migrate.
2. Enter Settings (project setting) and select the General (common) tab.
3. In the Build and Development Settings (compilation and deployment setting) panel, record the following information:
3.1 Build Command
3.2 Output Directory



Example:
npm run build
Output Directory: build
This information will be used in project configuration.

2.Configuration Migration: Handle Redirects and Headers

If your project uses a vercel.json file to configure redirects or custom headers, migrate these configurations to the edgeone.json file in EdgeOne Makers.
Comparison example of both:
Configure the Vercel.json file.
{
"redirects": [
{
"source": "/articles",
"destination": "/blog",
"statusCode": 301
}
],
"rewrites": [
{
"source": "/assets/*",
"destination": "/assets-new/:splat"
}
],
"headers": [
{
"source": "/(.*)",
"headers": [
{
"key": "X-Frame-Options",
"value": "DENY"
},
{
"key": "Cache-Control",
"value": "max-age=7200"
}
]
},
{
"source": "/assets/*",
"headers": [
{
"key": "Cache-Control",
"value": "max-age=31536000"
}
]
}
]
}
Corresponding edgeone.json configuration:
{
"redirects": [
{
"source": "/articles",
"destination": "/blog",
"statusCode": 301
}
],
"rewrites": [
{
"source": "/assets/*",
"destination": "/assets-new/:splat"
}
],
"headers": [
{
"source": "/*",
"headers": [
{
"key": "X-Frame-Options",
"value": "DENY"
},
{
"key": "Cache-Control",
"value": "max-age=7200"
}
]
},
{
"source": "/assets/*",
"headers": [
{
"key": "Cache-Control",
"value": "max-age=31536000"
}
]
}
]
}
Note: The configuration syntax for EdgeOne Makers is very similar to Vercel, but there may be some subtle differences. For detailed configuration options, see the edgeone.json document.

3.Function Migration: From Vercel to EdgeOne Makers

The two platforms have differences in syntax and usage. Here is a simple comparison example:
Vercel Functions Hello World:
export const dynamic = 'force-dynamic';
export function POST(request) {
return new Response(`Hello world`);
}
Makers Functions Hello World:
export default function onRequestPost(context) {
return new Response(`Hello world`);
}
main difference:
Makers uses the onRequest series of functions (such as onRequestPost) to handle different HTTP methods.
Makers Functions receive a context object containing request information and environment variables.
The response method is similar, both use Response object.
Note:
Makers Functions supports both Cloud Functions and Edge Functions. These two have some differences in features, such as the context object. You can choose between them based on your specific requirements.
Migration suggestions
Change the export function to the onRequest series functions.
If you used Vercel-specific features, you may need to find other solutions. Contact us through the community.
For detailed function usage, refer to the Makers Functions documentation.

4.Project Deployment: Creating a New Project in EdgeOne Makers

After completing the preparations, create and deploy the project on Makers:
1. Log in to the Tencent Cloud console and go to the Makers service.
2. Click "Create project" and select your GitHub repository.
3. In project settings, fill in the build command and output directory recorded earlier.
4. Click the "Start Deployment" button, and Makers will automatically build and deploy your project.

5.Domain Configuration: Adding a Custom Domain

Migration steps
1. Add your custom domain in project settings and obtain the CNAME record value.
2. Sign in to your DNS provider console.
3. Delete the A, AAAA, or CNAME records previously set for Vercel.
4. Add a new CNAME record pointing to the new value provided by EdgeOne Makers.
5. Wait for DNS update to take effect (may take a few minutes to a few hours).
Note: If you previously used Vercel DNS, transfer the domain to another DNS provider, then configure CNAME records following the above steps.
For the detailed domain addition process, see the domain name management document.
By completing the above steps, you have successfully migrated your Vercel project to EdgeOne Makers. The two platforms share similarities in some aspects. However, leveraging our robust infrastructure, we have implemented optimizations such as intelligent refresh and pre-warming tailored to Makers' product features, delivering an out-of-the-box user experience. Furthermore, during the public beta phase, Makers imposes fewer restrictions compared to competitors, offering developers greater flexibility and more choices. In terms of customer support, we provide more responsive assistance and are committed to creating a superior product experience for developers.
If you encounter any issues during the migration, refer to the EdgeOne Makers official documentation.

ai-agent
You can ask me like
How to Get Started with EdgeOne Makers?