Skip to Content
🚀 Faable DeployGuides & MigrationsMigrate from Vercel

Migrate from Vercel to Faable Deploy

Short answer: Migrating from Vercel to Faable Deploy keeps the part you like — push to Git, get a live deploy with automatic SSL — while moving your app from Vercel’s frontend-first serverless model to standard Linux containers that run any stack (frontend and backend). You connect your GitHub repository, move your environment variables, and re-point your custom domain. Teams move for European data sovereignty (full GDPR), a built-in Web Application Firewall, predictable EUR pricing without surprise egress tiers, and bundling hosting with Faable Auth in one subscription.

Concept mapping

VercelFaable DeployNotes
ProjectAppOne repository → one app at https://<app>.faable.link
Git integrationGitHub connectionPush to deploy, same workflow
Serverless / Edge FunctionsLinux containerYour server process runs continuously, listening on $PORT
Environment VariablesEnvironment VariablesSet per app in the dashboard
Custom DomainsCustom domainsCNAME/ALIAS + automatic SSL
Vercel WAF / Firewall (add-on)Built-in WAFOWASP CRS, included
Analytics / ObservabilityLogs & monitoringLogs in the dashboard 

Migration steps

  1. Connect your repository. Sign in to the Faable Dashboard  and link the GitHub repo you deploy on Vercel today.
  2. Make your app listen on $PORT. Faable runs your app as a container, so ensure your server binds to 0.0.0.0 and the PORT environment variable (see the Express guide for the pattern). Static frontends and most frameworks work with their standard start command.
  3. Copy environment variables from your Vercel project settings into the Faable app.
  4. Deploy. Push to your branch (or run faable deploy); Faable detects the stack, builds, and serves it with free SSL. See Get Started and What is zero-config CI/CD?.
  5. Move your domain. Add your custom domain in Faable, update the DNS record, and let SSL provision automatically. Keep the Vercel deployment live until DNS propagates.
  6. Cut over and decommission the Vercel project once traffic is flowing through Faable.

What to plan for

  • Serverless → long-running process: if you relied on per-request serverless functions, your backend now runs as a continuous container process. Most frameworks (Next.js, Express, Nuxt, SvelteKit) run unchanged; purely edge-runtime code may need adjusting.
  • Build settings: install/build/start commands carry over; set them on the app if your framework isn’t auto-detected.

Last updated on

Last updated on