Deployment
Deploying the three template variants to Vercel, with custom domains.
Table of Contents
- Vercel Deployment
- Custom Domains
- Deploying Each Variant Separately
- Environment Variables
- Production Checklist
- Troubleshooting Deployment Issues
Vercel Deployment
This download includes three independent template variants. Each variant (Launchpad, Lumina, and Forge) is deployed as its own separate Vercel project, all pointing at the same codebase.
You can deploy from GitHub, GitLab, or Bitbucket — Vercel supports all three.
Steps (per variant)
- In the Vercel dashboard, click Add New → Project and import your repository.
- When prompted for the project's Root Directory, choose the folder for the variant you're deploying (the SaaS/Launchpad project, the AI Tool/Lumina project, or the Developer Tool/Forge project).
- Framework Preset: Vercel auto-detects Next.js once the Root Directory is set correctly.
- Leave the Install Command and Build Command on their defaults.
- Set the Node.js Version in Project Settings to 18.x or later.
- Deploy. Repeat for the other variants as separate projects.
[Screenshot: Vercel "New Project" screen with Root Directory set to the SaaS/Launchpad folder]
Note
Because each variant is its own Vercel project, each gets its own production URL, its own environment variable panel, its own deployment history, and can be redeployed independently without rebuilding the other two variants.
Custom Domains
Each Vercel project can have its own custom domain or subdomain attached independently (Project → Settings → Domains).
To attach your own domain or subdomain to a Vercel project:
- Open the project → Settings → Domains → enter your domain (e.g.
app.yourdomain.com) - Vercel will show you a DNS record to add at your domain registrar/DNS provider — typically a
CNAMErecord, or anArecord for an apex/root domain - Add that record with your DNS provider and wait for propagation (Vercel shows a verification status in the same panel)
- Once verified, Vercel automatically provisions and renews an SSL certificate for the domain
Deploying Each Variant Separately
Because each variant is deployed independently, you can:
- Update only one variant without redeploying the others
- Preview branches per variant — each Vercel project generates its own preview deployment for non-production branches
- Roll back independently — rolling back one variant has no effect on the other two
If you only want to sell or deploy one variant (rather than all three), you only need to create one Vercel project — the other two variants can remain unused in your copy of the project.
Environment Variables
None are required. All three variants in this template are static, file-based-content frontends with no backend, no database, and no third-party API calls — see the Environment Variables section on Launchpad, Lumina, and Forge.
If you extend the template with your own backend, analytics, sign-in provider, or email service, add those variables in each affected Vercel project's Settings → Environment Variables panel (scoped separately per project, since each variant is its own Vercel project).
Production Checklist
Before pointing a custom domain at a new deployment or announcing it publicly:
- The project builds successfully with no errors
- Correct Root Directory is set per Vercel project — never the project root itself
- Node.js version in Vercel project settings is
18.xor later - Dark/light mode toggle works correctly on the deployed URL (not just your local machine)
- All internal links (
/pricing,/blog,/changelog,/login, etc.) resolve correctly on the production URL - Custom domain shows a valid, auto-renewed SSL certificate (padlock in browser)
- Run a performance audit against the production URL, not your local machine — see the note below
Note
Performance scores measured on your local machine during development are not representative of production. Local development lacks the CDN edge caching, compression, and network conditions of a real deployment, and browser extensions can distort local scores. Always run your final performance audit against the deployed production URL.
Troubleshooting Deployment Issues
Build fails on Vercel
Confirm the Vercel project's Root Directory is set to the specific variant folder, not the project root. If it's set to the project root, Vercel won't know which variant to build.
Build succeeds locally but fails on Vercel
Make sure any dependency changes you made locally were fully saved and committed before deploying — an out-of-date lockfile can cause Vercel to install slightly different package versions than your local install.
Wrong variant shows up at a domain
Double check which Vercel project the domain is attached to (Project → Settings → Domains) — since all three variants live in the same codebase, it's easy to attach a domain to the wrong project if the Root Directory wasn't set distinctly during initial setup.
Images or fonts fail to load in production but work locally
Confirm you haven't introduced an external image domain without allowing it in the project configuration (see the Customization guide). Fonts are self-hosted automatically and don't require any deployment-specific configuration.