Skip to content

Deploy to Vercel (NuxtPro App)

When you’re ready to ship NuxtPro to production, choosing the right hosting platform matters. NuxtPro is designed to integrate well with modern hosting providers.

This guide focuses on deploying to Vercel, and also briefly mentions other options.

Vercel is one of the officially recommended hosting platforms for Nuxt 3. You get CI/CD, global CDN, and a serverless-friendly workflow out of the box.

Step 1: Connect your Git repository

  1. Sign in to Vercel (you can register with GitHub for free).
  2. In the Vercel Dashboard, click “Add New...” -> “Project”.
  3. Choose “Continue with Git”, then select your NuxtPro repository from GitHub/GitLab/Bitbucket. Vercel will request access.

Step 2: Configure the project

Vercel will auto-detect Nuxt 3 and prefill most settings:

  • Framework Preset: Nuxt.js
  • Build Command: pnpm run build (or nuxt build)
  • Output Directory: .output
  • Install Command: pnpm install

Step 3: Set environment variables

Add all variables from your local .env into Vercel: “Settings” -> “Environment Variables”.

  • DATABASE_URL: Make sure your database allows external access from Vercel. You may need to whitelist Vercel IPs (or 0.0.0.0/0). For production, prefer managed DBs like Neon, Supabase, PlanetScale.
  • STRIPE_SECRET_KEY
  • STRIPE_WEBHOOK_SECRET
  • NUXT_PUBLIC_STRIPE_PUBLISHABLE_KEY
  • RESEND_API_KEY
  • NUXT_PUBLIC_APP_URL: Use the production domain assigned by Vercel.

Step 4: Deploy

Click “Deploy”. Vercel will pull your code, install deps, build, and deploy globally.

After the first deployment, every push to your main branch (e.g. main/master) triggers a new deployment (CI/CD).

Other deployment options

NuxtPro can run anywhere that supports Node.js.

Deploy to your own Node.js server

  1. Install Node.js and pnpm on your server.
  2. Clone the repo onto the server.
  3. Install dependencies: pnpm install.
  4. Create and configure .env.
  5. Build: pnpm build.
  6. Start: pnpm start.

For stability, use a process manager like pm2:

bash
pm2 start .output/server/index.mjs --name "nuxtpro-app"

Nuxt 3 supports SSG, but NuxtPro relies on server-side features (auth, API routes, database access). For that reason, deploying as a purely static site is not recommended.