From domain to deployed — a complete walkthrough for getting a website live without spending a penny.
The good news: it has never been easier — or cheaper — to get a website live. Between free hosting platforms, free DNS services, and free SSL certificates, you can have a real, functioning website on the public internet for exactly £0. This guide walks through exactly how to do it.
Before diving in, let's separate the necessities from the nice-to-haves:
yourproject.is-a.dev) or buy a .com for ~£10/yearThis is the stack that costs you nothing, works reliably, and is used by tens of thousands of developers:
yourproject.is-a.dev)If you don't have a website yet, here's the quickest path:
my-website/ ├── index.html ← Your homepage ├── about.html ← About page ├── style.css ← Your styles └── script.js ← Optional JavaScript
npm create vite@latest my-website -- --template react cd my-website npm install npm run dev # Preview locally npm run build # Build for deployment (outputs to /dist)
Netlify's drag-and-drop deployment is the fastest way to get a site live:
npm run build)app.netlify.com and create a free account/dist or /build folder onto the Netlify drop zonerandom-name-123.netlify.appFor automatic deployments on every code push, connect a GitHub repository instead.
Visit Open Domains and request a subdomain. You'll get a URL like myproject.is-a.dev. Then create a CNAME record pointing it to your Netlify/Vercel deployment URL.
# In Netlify: Site Settings → Domain Management → Add Custom Domain # In Vercel: Project Settings → Domains → Add Domain # Netlify will give you a CNAME target like: # yoursite.netlify.app # Add this in your DNS (Open Domains dashboard): Type: CNAME Name: myproject (your subdomain) Value: yoursite.netlify.app
SSL is automatically provisioned — your site will be live at https://myproject.is-a.dev within minutes of DNS propagating.
Free hosting is great for personal projects, portfolios, and experiments. Consider paying when: