Deploy and launch · How to use a skill
launch-website-checklist
Takes a deployed site live on its own domain, covering DNS records, HTTPS, www redirect, security headers, Google Search Console and a final go-live checklist (links, mobile, form, 404, share preview). Use when the user wants to launch a site, connect a custom domain, or run a pre-launch checklist before going live.
Version 1.0 · Updated 2026-10-31
Install in Claude Code, Cursor or Codex (optional)
Only for AI coding tools that read skill folders. Run one line in a terminal, in your project folder. It downloads this skill's text files from TheSkillVault and nothing else; you can read them first with “View raw SKILL.md”.
Claude Code (all your projects)
curl -fsSL --create-dirs 'https://theskillvault.ai/api/skills/launch-website-checklist/raw' -o ~/'.claude/skills/launch-website-checklist/SKILL.md'Cursor (this project)
curl -fsSL --create-dirs 'https://theskillvault.ai/api/skills/launch-website-checklist/raw' -o '.cursor/skills/launch-website-checklist/SKILL.md'Codex and other Agent Skills tools (this project)
curl -fsSL --create-dirs 'https://theskillvault.ai/api/skills/launch-website-checklist/raw' -o '.agents/skills/launch-website-checklist/SKILL.md'
Or connect the whole library over MCP
Add TheSkillVault to Cursor or add this to your app's MCP settings (read-only; help):
{
"mcpServers": {
"theskillvault": {
"url": "https://theskillvault.ai/mcp"
}
}
}Launch a website on its own domain
When to use
- The site is deployed (for example at
my-site.vercel.app) and you want it onwww.yourbusiness.com.auand announced. - You want one last check that nothing embarrassing is broken.
- For the first deployment itself, use
deploy-nextjs-to-vercel; for launch announcements, usewrite-launch-posts-prompt.
Handoff
- Reads: the live deployment URL (in
README.mdfrom the deploy step),docs/quality-report.md, andlib/site.ts. - Writes: DNS records at the domain registrar, security headers in
next.config.ts, anddocs/launch-checklist.mdwith every item ticked or explained.
Steps
- Commercial check first: a business site on Vercel needs the Pro plan (US$20 per month per developer seat plus tax, per vercel.com/pricing on 2026-10-31), because Vercel's Hobby plan is for personal, non-commercial use only. Upgrade before pointing a business domain at it.
- Domain: buy it if needed (
.com.auhas Australian eligibility rules; an ABN is the usual way to qualify). In Vercel → Project → Settings → Domains, add bothyourbusiness.com.auandwww.yourbusiness.com.au, and choose which one is primary (www is a common choice); the other redirects to it. - DNS: at the registrar, add exactly the records Vercel shows on the Domains page: an
Arecord for the apex domain and aCNAMEforwww. Copy the values from your project's page rather than from a blog post; they can differ per project. - Before changing nameservers (instead of single records), copy every existing record, especially
MXandTXTrecords for email; missing them stops the business's email. - Wait for "Valid configuration". Vercel issues the HTTPS certificate automatically. Check
http://redirects tohttps://and the non-primary host redirects to the primary. - Update
site.urlinlib/site.ts(andmetadataBase) to the final domain, redeploy, and confirm/sitemap.xmllists the real domain. - Security headers in
next.config.tsviaasync headers()forsource: "/(.*)":
Strict-Transport-Security: max-age=63072000; includeSubDomains(addpreloadonly after reading hstspreload.org's requirements)X-Content-Type-Options: nosniffReferrer-Policy: strict-origin-when-cross-originX-Frame-Options: DENY(or a CSPframe-ancestors 'none')Permissions-Policy: camera=(), microphone=(), geolocation=()- A Content-Security-Policy is worth adding later; test it in
Content-Security-Policy-Report-Onlyfirst because a wrong CSP breaks analytics, fonts and forms.
- Stop the
*.vercel.appproduction URL competing in search: addX-Robots-Tag: noindexfor requests whose host isyour-project.vercel.app(Next.jsheaders()with ahas: [{ type: "host", ... }]condition). - Google Search Console: add a Domain property, verify it with the TXT record Google gives you, then submit
https://www.yourbusiness.com.au/sitemap.xml. - Go-live checklist, written to
docs/launch-checklist.md:
- Every nav and footer link works (no 404s); the 404 page itself looks right.
- Mobile: check on a real phone, in portrait, for text size, tap targets and no sideways scrolling.
- Contact form: send a real enquiry on the live domain and confirm it arrives and the reply-to works.
- Share preview: paste the home page into a chat app and check the title, description and image.
/privacyis linked in the footer and matches what the site collects.- Lighthouse on the live URL is no worse than in
docs/quality-report.md. - Favicon, page titles and the business details (phone, address, hours) are correct.
- Analytics records your own visit.
Gotchas
- DNS changes can take time to show everywhere; don't keep editing records while you wait.
- Remove any conflicting old
A,AAAAorCNAMErecords for the same name, or the domain stays "Invalid configuration". - HSTS is sticky: browsers remember it for
max-age. Start shorter (for example one day) if you're not sure every subdomain has HTTPS. - Keep the old site, or a redirect, running until DNS has switched, so customers never see an error.
References
- Vercel, Adding and configuring a custom domain: https://vercel.com/docs/domains/working-with-domains/add-a-domain
- Vercel, Fair use guidelines (commercial usage): https://vercel.com/docs/limits/fair-use-guidelines
- Vercel KB, Avoiding duplicate content with vercel.app URLs: https://vercel.com/kb/guide/avoiding-duplicate-content-with-vercel-app-urls
Credits
Topic coverage informed by addyosmani/web-quality-skills (https://github.com/addyosmani/web-quality-skills, MIT © 2026 Addy Osmani). The text here is our own.
Example prompt
"Connect my domain to the site on Vercel and run through a pre-launch checklist so I can go live."
Licence: CC BY 4.0. Attribution when you reuse it: From TheSkillVault, https://theskillvault.ai, CC BY 4.0