Domains
Use your TrakRoom subdomain
Your username becomes username.trakroom.com after wildcard DNS is connected.
Every producer chooses a unique username during onboarding. That username becomes the store slug.
Example: 1. Username: ransombeatz 2. Preview URL during development: /ransombeatz or /store/ransombeatz 3. Live URL after DNS is connected: ransombeatz.trakroom.com
Platform owner setup for automatic subdomains: 1. In Vercel, add trakroom.com to the project. 2. Add wildcard domain *.trakroom.com to the same Vercel project. 3. In Cloudflare DNS, create the wildcard record Vercel asks for: - Type: CNAME - Name: * - Target/value: the CNAME target shown in Vercel for *.trakroom.com - Proxy status: start with DNS only while verifying. After Vercel verifies and issues SSL, you can test proxied mode if needed. 4. For the root/apex trakroom.com, add the A record Vercel shows for trakroom.com. 5. Keep NEXT_PUBLIC_ROOT_DOMAIN=trakroom.com in Vercel. 6. Keep NEXTAUTH_URL and NEXT_PUBLIC_APP_URL pointed at your real TrakRoom app URL. 7. Deploy the app.
How the browser keeps ransombeatz.trakroom.com: The app middleware reads the incoming Host header, extracts ransombeatz, and rewrites the request internally to /store/ransombeatz. It is a rewrite, not a redirect, so the customer keeps seeing ransombeatz.trakroom.com in the browser.
You do not need to create one DNS record per producer. Cloudflare's wildcard DNS record sends every missing producer subdomain to Vercel, Vercel sends the request to this project, and TrakRoom looks up the producer by the subdomain stored in the database.
If Vercel tells you to use Vercel nameservers for the wildcard domain, copy the nameservers it provides at your registrar. If you keep Cloudflare nameservers, use the exact DNS records Vercel shows and verify the wildcard inside Vercel before testing producer subdomains.