🌐 Custom Domain Setup

Connect your own domain for a fully branded portfolio

✨ What You'll Get

Your portfolio will be accessible at yourdomain.com (not a redirect!) with full branding, SSL security, and professional appearance. Visitors will see your domain in the address bar at all times.

⚠️ Important

You must own a domain name. We recommend purchasing from Cloudflare Registrar ($8-12/year with free privacy protection and no markup pricing). If you already have a domain elsewhere, you can transfer it to Cloudflare or use the registrar DNS method below.

Other options: Namecheap, Google Domains, or GoDaddy (typically $10-15/year).

Choose Your Setup Method

Cloudflare (Recommended)

Easiest

✓ Free SSL certificates
✓ Fastest performance (CDN)
✓ Best security
✓ Simple setup

Direct DNS Setup

Advanced

✓ Use your current registrar
✓ No third-party services
✓ Quick if you know DNS

Method 1: Cloudflare Setup (Recommended)

1

Create Cloudflare Account

Go to cloudflare.com and sign up for a free account.

2

Add Your Domain

  • Click "Add a Site"
  • Enter your domain (e.g., johndoe.com)
  • Select the Free Plan
  • Click Continue
3

Update Nameservers

Cloudflare will show you 2 nameservers. Copy them and:

  • Go to your domain registrar (where you bought your domain)
  • Find "Nameservers" or "DNS Settings"
  • Replace existing nameservers with Cloudflare's nameservers
  • Save changes

⏱ Wait 5-60 minutes for propagation

4

Configure DNS Records

In Cloudflare, go to DNSRecords and add these:

Main Domain Record
Type: CNAME
Name: @
Target: sideycms.web.app
Proxy: Proxied (orange cloud ☁️)
WWW Subdomain Record
Type: CNAME
Name: www
Target: sideycms.web.app
Proxy: Proxied (orange cloud ☁️)
5

Create Cloudflare Worker

  • In Cloudflare Dashboard, click "Workers & Pages"
  • Click "Create application"
  • Click "Create Worker"
  • Name it: portfolio-router
  • Click "Deploy"
6

Configure Worker Code

Click "Edit code" and replace everything with:

addEventListener('fetch', event => {
  event.respondWith(handleRequest(event.request))
})

async function handleRequest(request) {
  const url = new URL(request.url)
  
  // Get your Sidey username from dashboard
  const username = 'YOUR_USERNAME_HERE'
  
  // Proxy all requests to your Sidey portfolio
  const sideUrl = `https://sideycms.web.app/site.html?name=${username}`
  
  const response = await fetch(sideUrl, {
    method: request.method,
    headers: request.headers,
    body: request.body,
    redirect: 'follow'
  })
  
  // Return response with original domain in address bar
  return new Response(response.body, {
    status: response.status,
    statusText: response.statusText,
    headers: response.headers
  })
}

Important: Replace YOUR_USERNAME_HERE with your actual Sidey username!

Click "Save and Deploy"

7

Add Worker Route

  • Go back to your domain in Cloudflare
  • Click "Workers Routes"
  • Click "Add route"
  • Route: yourdomain.com/* (replace with your domain)
  • Worker: Select portfolio-router
  • Click "Save"
  • Add another route for www: www.yourdomain.com/*

🎉 All Done!

Wait 5-10 minutes for DNS propagation, then visit your domain. Your portfolio should load with your custom domain in the address bar!

Verification Checklist

✓ Before Testing:

✓ Testing Your Domain:

🔧 Troubleshooting

"Site can't be reached" or "DNS error"

DNS hasn't propagated yet. Wait up to 24 hours. Check status: nslookup yourdomain.com

"This site can't provide a secure connection"

SSL certificate is being provisioned. With Cloudflare, this takes ~15 minutes. Ensure proxy is enabled (orange cloud).

Domain loads but shows wrong portfolio

Worker code has wrong username. Edit worker and update YOUR_USERNAME_HERE with correct username.

"Worker threw exception" error

Worker code has syntax error. Copy the code again exactly as shown, making sure to replace only the username.

Domain redirects to sidey.app

Worker route not configured. Add route: yourdomain.com/* pointing to your worker.

WWW version doesn't work

Need separate DNS record and worker route for www. Add CNAME for "www" and worker route for www.yourdomain.com/*

Need Help?

📧 Contact Support

If you're stuck, email us with:
• Your domain name
• Your Sidey username
• Which method you're using
• What error message you're seeing

We'll help you get set up within 24 hours!

← Back to Dashboard