Tour Dash
Status · 3 September 2026

Moving tourdash.io onto the app

Finished on the night of 3 September. The registry now hands tourdash.io to Cloudflare, Cloudflare serves the app on both spellings with its own certificates, and Supabase sends people to the new address. The sections below are kept as the record of what was blocking it and what changed, in the order it happened.

Domain tourdash.io Registrar Namecheap DNS answered by Cloudflare Pages custom domains tourdash.io and www
00

What changed tonight

Everything on the list below was done between the first check and midnight, with the Namecheap save made by hand and the rest through the dashboards and the Cloudflare API.

Nameservers moved

Namecheap now lists gabriella.ns.cloudflare.com and milan.ns.cloudflare.com, and the .io registry agrees. Google and Quad9 resolvers already return Cloudflare addresses for tourdash.io. Cloudflare's own 1.1.1.1 still had the old parking answer cached at the last check, so some networks will see the site up to an hour later than others.

Cloudflare records corrected

The www record now points at tour-dash.pages.dev instead of Namecheap's parking page. The mail, autoconfig and autodiscover hosts are DNS only, so mail clients reach Private Email directly. The DKIM key that the import skipped was added by hand. The bare domain's record was already right.

Both spellings on the Pages project

www.tourdash.io was added and went Active within a minute. The old tourdash.io entry, stuck in an error state from being added before DNS moved, was removed and added again. Cloudflare's edge answers both names with a certificate issued for each. A redirect rule on the zone then sends www.tourdash.io to the same path on https://tourdash.io, and plain http:// requests are forced to HTTPS, so there is one address.

Supabase follows the domain

Site URL is https://tourdash.io, and the redirect allow list holds https://tourdash.io/** and https://www.tourdash.io/**. Password reset and signup emails now land on the new address.

01

Where it stands

Two things are done, one thing is blocking the rest, and the last three wait behind it.

Done: the app knows its new address

The live build now carries tourdash.io as its canonical address, the old development report links to it, and this reports site points there in its header, footers and guides. Both sites went out again on 3 September. The tour-dash.pages.dev address keeps working alongside it.

Done: Cloudflare has the domain on the project

tourdash.io is attached to the tour-dash Pages project. Its status is Pending, because Cloudflare proves ownership by answering a request on the domain, and no request can reach it yet. It will turn Active on its own once DNS moves.

Blocking: DNS is still answered by Namecheap

Namecheap's Advanced DNS has a parking record (A @ 162.255.119.221) and a CNAME @ tour-dash.pages.dev side by side. Resolvers take the parking one, so the bare domain times out and there is no www record at all. Cloudflare will only serve a bare domain from a Pages project when the domain's DNS lives in Cloudflare, so the fix is the nameserver change below. Adding more records in Namecheap will not get there.

Waiting: www, Supabase, and a final check

Once the domain is active, www.tourdash.io gets added to the project, Supabase's Site URL moves to the new address so password resets and signup confirmations land on it, and both spellings get checked in a private window with the padlock showing.

02

In Cloudflare: add the domain

Sign in to the Cloudflare account that hosts the tour-dash project. This part takes about five minutes.

1

Add tourdash.io as a domain

On the account home page choose Add a domain, type tourdash.io, pick the Free plan and continue. Cloudflare scans the records Namecheap currently serves and offers to copy them.

2

Fix the copied records before continuing

Delete the A record for tourdash.io that points at 162.255.119.221. That is Namecheap's parking server and it is the reason the site times out today. Keep the CNAME from tourdash.io to tour-dash.pages.dev and leave its cloud orange (proxied). Then check the mail records in section 05 are all present; the scan usually finds the MX and SPF entries but can miss the DKIM key and the autodiscover records, so add any that are missing by hand.

3

Copy the two nameservers

The last screen shows two names ending in ns.cloudflare.com. Copy both. Leave that screen open while you switch to Namecheap.

03

In Namecheap: hand DNS to Cloudflare

It is one dropdown and two fields, and nothing else in Namecheap needs to change.

4

Switch the nameservers

Open Domain List, click Manage next to tourdash.io, and stay on the Domain tab (not Advanced DNS). Scroll to Nameservers, change the dropdown from Namecheap BasicDNS to Custom DNS, paste the two Cloudflare names, and click the green tick. Namecheap warns about 48 hours; it is usually under an hour. The records on the Advanced DNS tab stop being used at that point, and there is no need to delete them.

5

Wait for Cloudflare to say Active

Back in Cloudflare the domain shows Pending nameserver update. Press Check nameservers now after ten minutes or so. When it flips to Active, Cloudflare emails you, and the Pages custom domain should turn Active a few minutes after that on its own.

04

After the domain is active

Three more stops, then the move is finished. The values for the first two are also the last three rows of the table in section 06.

6

Add www to the Pages project

In Workers & Pages, open tour-dash, then Custom domains, then Set up a custom domain. Type www.tourdash.io, continue, and activate. Cloudflare creates the DNS record itself now that the domain is in the same account. If tourdash.io still shows Pending at this point, remove it and add it again the same way; it comes back Active within a few minutes.

7

Move the Supabase Site URL

Open the Supabase dashboard, project wwgkjwudnixrfvcbwjpe, then Authentication, then URL Configuration. Set Site URL to https://tourdash.io. Under Redirect URLs add https://tourdash.io/** and https://www.tourdash.io/**, and leave the existing tour-dash.pages.dev entry in place. The app itself needs no change for this. It relies on the Site URL for every email link it sends.

8

Check it from the outside

Open https://tourdash.io and https://www.tourdash.io in a private window. Both should show the landing page with the padlock and no warning. Then send yourself a password reset from the login page and confirm the link in the email opens on tourdash.io. The Mapbox token has no address restrictions, so the map needs nothing.

05

Mail records that must survive the move

Email for the domain is on Namecheap Private Email. These are the records Namecheap serves tonight; every one of them should exist in Cloudflare before the nameservers change, with the proxy cloud grey (DNS only) on each.

TypeNameValueNotes
MXtourdash.iomx1.privateemail.com, priority 10Usually copied by the scan
MXtourdash.iomx2.privateemail.com, priority 10Usually copied by the scan
TXTtourdash.iov=spf1 include:spf.privateemail.com ~allSPF
TXTprivateemail._domainkeyv=DKIM1;k=rsa;p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsNqIoN5k1CZp/rBjmjLCS5o5LYOX5yLG5CxD4WrAstUiH5iz3UV435RGTz1Qrd+NOqweInFf0FCkUYsgtRhajicOqBwwVI4A3dYuhxrtDx5v+eVBjoG5vEGApO7UhqRiAVtLM3PykbuT/5HXkJXORyuE9lcjlTWKpuXvP0ttSjwNWmQyxcF+Sr1HOcYyVX9bFV8fat2/Vz5JRNdbqV+sVdWh+x+8AaB/VgKXNQYgV+Aai9Y7f+tgqvcVrBvUR5k7KpklyJ50wkaK+sjHN/KQXDyoSNGmxvwLWMP+gU6UFzic8uDJimaI1FPTk1/m7XbwKm71uaklmSRv3OspQSJzlwIDAQABDKIM. Often missed by the scan; paste the whole value
CNAMEmailprivateemail.comWebmail and client setup
CNAMEautoconfigprivateemail.comMail client auto-setup
CNAMEautodiscoverprivateemail.comOutlook auto-setup
SRV_autodiscover._tcppriority 0, weight 0, port 443, target privateemail.comOutlook auto-setup. Often missed by the scan
06

What to paste where

This is the whole move as one table, for when you are mid-click.

WhereFieldValue
Cloudflare, account homeAdd a domaintourdash.io, Free plan
Cloudflare, DNS records for tourdash.ioDeleteThe A record to 162.255.119.221
Cloudflare, DNS records for tourdash.ioKeep, proxiedCNAME tourdash.io → tour-dash.pages.dev
Namecheap, Domain tab, NameserversDropdownCustom DNS, then the two ns.cloudflare.com names
Cloudflare, Workers & Pages, tour-dash, Custom domainsDomainwww.tourdash.io
Supabase, Authentication, URL ConfigurationSite URLhttps://tourdash.io
Supabase, Authentication, URL ConfigurationRedirect URLshttps://tourdash.io/** and https://www.tourdash.io/**

The longer explanation of each step, and the reasons behind the route, are in the Connect a Domain guide. The deploy command does not change; every deploy updates tourdash.io and tour-dash.pages.dev together.