Skip to content

Migrate hosting from Netlify to Vercel #416

Description

@jimmyandrade

Context

The Multei! site (@multei/web) is hosted on Netlify (netlify.toml, gatsby build, publish public/, netlify-plugin-gatsby-cache). Production domain: https://multei.com.br.

Goal

Move deploy and hosting to Vercel, keeping the domain and production behavior, with preview deployments per PR.

Motivation

  • Align hosting with the Vercel ecosystem (especially if we proceed with the Next.js migration in Migrate site from Gatsby to Next.js (App Router) #415).
  • Native preview URLs per branch/PR and simpler deploy DX.
  • Unify env vars, domains, and observability in one place.
  • Drop Netlify-only Gatsby plugins (netlify-plugin-gatsby-cache, netlify-cli).

Suggested scope

Preparation

  • Inventory current Netlify config (build command, publish dir, env vars, redirects/headers, domain, DNS, forms/functions if any).
  • Decide whether migration happens before or after Gatsby → Next.js (Migrate site from Gatsby to Next.js (App Router) #415); ideal path is often Next.js + Vercel together, but Gatsby can run on Vercel temporarily.
  • Create/link the Vercel project to multei/web.

Migration

  • Configure Vercel build (Framework Preset: Gatsby now and/or Next.js after Migrate site from Gatsby to Next.js (App Router) #415).
  • Port security headers from netlify.toml (X-Frame-Options, X-XSS-Protection, etc.) to vercel.json / vercel.ts or framework headers.
  • Port redirects/rewrites if any.
  • Migrate environment variables (Production / Preview / Development).
  • Configure multei.com.br (and www if applicable) on Vercel and update DNS.
  • Validate preview deployments on PRs.

Cutover

  • Smoke-test production (home, main routes, SEO/sitemap, assets).
  • Remove or archive Netlify site/config after stabilizing (netlify.toml, netlify-cli, Netlify-only plugins).
  • Update README/deploy docs.

Dependencies / related issues

Acceptance criteria

  • Production served by Vercel at https://multei.com.br (HTTPS OK, correct redirects).
  • Preview deployments work per PR.
  • Env vars and headers equivalent to the current Netlify setup.
  • Deploy docs updated; Netlify artifacts removed or marked obsolete after cutover.

Out of scope

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions