Free Course for AttorneysLaw Firm Website

Module 8 · Go live

Put your site on the internet

12 min

Stage 7, part one. This is the short module where the thing you built stops being a file on your laptop and becomes a website anyone in the world can open. It takes about ten minutes. First, the honest version of what it costs — because the free-hosting story you have probably heard is not true for a law firm.

What hosting a firm’s website costs

Vercel is the company that will hold your site and serve it to visitors. Their free plan is real, and you will use it in the next few minutes to publish and test. But their terms limit the free plan to personal, non-commercial projects, and a website that advertises legal services is commercial by any reading. Once this is the live site of a working practice, it belongs on their paid plan — $20 a month, as of this writing.

That is the honest number, and it is a good one. Twenty dollars a month is less than most firms pay for a single line item on an agency invoice, it includes the security certificate and the global delivery network, and nothing about it locks you in: your site lives in your GitHub account, and you can move it somewhere else in an afternoon.

$0While you buildpublish, preview and test on the free plan
$20/moHosting, once it's livethe paid plan a business site requires
$10–15/yrYour domainnext lesson — yourfirm.com

Those prices were checked against Vercel’s own pages as this course was written. Prices change; the principle — free for personal projects, paid for business ones — has been stable, and it is the part that decides which plan you belong on.

Nothing here charges you by accident

You will not be asked for a card to publish. You upgrade when you decide to, and the natural moment is when you point your firm’s real domain at the site in the next lesson — that is when it stops being a test and starts being your practice’s website. Publishing a commercial site on the free plan is against Vercel’s terms, and the remedy is theirs: they can pause the deployment. A paused website is not a bill you can argue about later; it is your firm being offline.

Publish it

  1. Go to vercel.com/new.
  2. Sign up (or sign in) using your GitHub account. That single choice is what connects the two services, so don’t create a separate email-and-password account here.
  3. When Vercel asks for access to your repositories, approve it. Then find your website in the list and select it.
  4. On the settings screen, leave everything as it is except one section: open Environment Variables. In the Key box type NEXT_PUBLIC_WEB3FORMS_KEY. In the Value box paste the Web3Forms access key from Module 5 (if you don’t have it handy, ask Claude: “What’s my Web3Forms key in .env.local?”). Check that both boxes are filled in before you go on.
  5. Click Deploy.
  6. Wait about a minute. You get a live address that looks like your-firm.vercel.app. Open it, fill in your consultation form, and check that the message reaches your inbox.
Why the key step matters

Your form’s key lives in a settings file on your laptop that is deliberately never uploaded to GitHub. The live site can only see it if you add it in Vercel. Skip that step and the form on your live site looks perfect but sends nothing — a prospective client thinks they reached you, and you never hear about it. Added it after you’d already deployed? Add the key, then open your project’s Deployments tab and choose Redeploy.

The moment you click Deploy, it is published

That address is public. Nobody will find it — it isn’t in Google and it isn’t linked from anywhere — but it is reachable by anyone who has it. So: if you skipped Module 6, go back and run the audit and the compliance check before this step, not after. Do not put this address on a business card, in an email signature, or in anything you send to a prospective client. It is a preview. The real address arrives in the next lesson.

Prefer to stay in the chat window? There’s an add-on for that

This is the one point in the whole course where you leave Claude and click through an unfamiliar dashboard. Vercel publishes an add-on for Claude Code that lets Claude do the deploy from the same chat box you’ve been using all along. If clicking through someone else’s dashboard isn’t appealing, ask for it. Worth knowing first: the command below begins with npx plugins, a small community-built installer that Vercel’s own documentation points you at — it is not made by Vercel or by Anthropic. Claude runs it without stopping to ask, so use this only if you are comfortable with that.

Let Claude handle the deploy

Please install Vercel's plugin for Claude Code (npx plugins add vercel/vercel-plugin), then use it to deploy
my site to Vercel and give me the live link. Before deploying, add NEXT_PUBLIC_WEB3FORMS_KEY from my .env.local
as an environment variable in Vercel so my contact form works on the live site, then remind me to send a test
message through the live form. I'm not technical — tell me exactly what to click if you need me to approve
something in my browser.

You still create the Vercel account yourself, and choosing the plan and buying the domain are still yours to do. Only the deploy moves into the chat.

What success looks like

Open the link on your phone, with Wi-Fi turned off, on cellular data. Your firm’s website loads. Not a preview on your laptop, not a mockup — the actual site, served from the actual internet, to a device that has never seen your project folder. Sit with that for a second. You built that.

The update loop, from now until forever

Vercel watches the GitHub copy you made last module. When it changes, your live site changes. So updating your website is now one sentence to Claude, followed by about a minute of waiting:

Update your live site, any time

Please save a snapshot of our changes and push them to GitHub so my live site updates.
1Say what you want changedin plain English
2“Save and push to GitHub”one sentence
3Vercel rebuildsautomatically, unprompted
4Live in about a minuteno re-uploading, ever

This is the habit that outlasts the course. A fee schedule changes, you add a practice area, a paragraph reads badly on a phone — you fix it yourself, the same afternoon, without emailing anyone and without waiting on anyone’s queue.

If you get stuck

The deploy failed with a red error. Copy the error text out of Vercel and hand it straight to Claude: “My Vercel deploy failed with this error — please fix it and push the fix.” It is nearly always a small build problem, and the fix redeploys automatically.

Your repository isn’t in the list. Vercel is showing a different GitHub account, or it wasn’t granted access to that repository. Sign out of Vercel, sign back in with the GitHub account you created last module, and approve the repository access when it asks.

Watch this step

This shows the same connect-and-deploy you're about to do, on the same kind of project, from repository to a live link in a few minutes. It’s from an independent creator — credited below, so go give them a follow.

How To Deploy A NextJS App To Vercel (Simple)

PedroTechCurated · third-party

More learning resources

Still want another angle? These are hand-picked and vetted to line up with this lesson — from creators and sites worth your time.