writing-skills
writing-skills
Use when creating new skills, editing existing skills, or verifying skills work before deployment
deploy-to-vercelDeploy a Next.js application to Vercel. Covers project linking, environment variables, preview deployments, custom domains, and production deployment configuration. Use when deploying a Next.js app for the first time, setting up preview deployments for pull requests, configuring custom domains, or managing environment variables in a production Vercel deploy…
Independent GitHub snapshot · Automated classification · Original documentation governs
Deploy Next.js application to Vercel with production configuration.
npm run build
Got: Build succeeds with no errors.
If fail: Fix build errors before deploying. Common: TypeScript errors, missing dependencies, invalid imports.
npm install -g vercel
Got: vercel command available globally. vercel --version prints installed version.
If fail: If permission errors occur, use sudo npm install -g vercel or configure npm to use user-local prefix. Verify Node.js installed with node --version.
# Login to Vercel
vercel login
# Deploy (first time: creates project)
vercel
# Follow prompts:
# - Set up and deploy? Y
# - Which scope? (select your account)
# - Link to existing project? N (for new projects)
# - Project name: my-app
# - Directory: ./
# - Override settings? N
Got: Preview URL provided (e.g., https://my-app-xxx.vercel.app).
If fail: If vercel login fails, check internet connectivity and try browser-based authentication. If deploy fails, review build output for errors -- Vercel uses clean environment, so all dependencies must be in package.json.
# Add environment variables
vercel env add DATABASE_URL production
vercel env add API_KEY production preview
# List environment variables
vercel env ls
Or configure through Vercel dashboard: Project Settings > Environment Variables.
Got: vercel env ls shows all required environment variables configured for correct environments (production, preview, development).
If fail: If variables not appearing at runtime, verify target environment matches (production vs preview). Redeploy after adding variables -- existing deployments do not pick up new variables automatically.
vercel --prod
Got: Production URL available (e.g., https://my-app.vercel.app).
If fail: Check deployment logs with vercel logs or in Vercel dashboard. Common issues: missing environment variables in production environment, build commands differing from local setup.
Got: Vercel dashboard shows GitHub repository connected. Subsequent pushes to main trigger production deployments automatically.
If fail: If repository does not appear in import list, check Vercel GitHub app has access to repository. Go to GitHub Settings > Applications > Vercel and grant access.
vercel domains add my-domain.com
Or through dashboard: Project Settings > Domains.
Update DNS records as instructed by Vercel (typically CNAME or A record).
Got: vercel domains ls shows custom domain as configured. After DNS propagation (up to 48 hours), domain resolves to Vercel deployment.
If fail: If domain shows "Invalid Configuration," verify DNS records match Vercel's instructions exactly. Use dig my-domain.com or online DNS checker to confirm propagation.
Create vercel.json for advanced settings:
{
"framework": "nextjs",
"regions": ["iad1"],
"headers": [
{
"source": "/api/(.*)",
"headers": [
{ "key": "Cache-Control", "value": "no-store" }
]
}
]
}
Got: vercel.json saved in project root. Next deployment picks up configuration (visible in Vercel dashboard build logs).
If fail: If configuration ignored, verify vercel.json is valid JSON with jq . vercel.json. Check Vercel docs for framework version, as some settings may have moved to next.config.ts.
npm run build succeeds locallypackage.json, not just installed globally..env.local. Different environments (production, preview, development) have separate variable sets.package.json engines field..vercelignore to exclude unnecessary files.scaffold-nextjs-app - create app to deploysetup-tailwind-typescript - configure styling before deploymentconfigure-git-repository - Git setup for auto-deploy integration