Connect any SPA
Overview
If your app renders in the browser and ships a blank HTML shell, RndrKit can make it visible to search engines and AI bots. Wherever you host it — Lovable, Bolt, Replit, Vercel, Cloudflare Pages, Netlify, or your own server — the setup is the same three steps.
RndrKit is platform-agnostic. It does not care what built your SPA, only that humans and bots both need to reach it. Humans are proxied to your origin. Bots are served fully rendered HTML from our cache.
Step 1: Add Your Domain
From the dashboard, click Add Domain. In the Your Domain field, enter the public domain you want RndrKit to serve — for example, example.com. No https://, no www..
Your Domain: example.com
Your domain will appear in the dashboard with a status of Inactive until DNS is configured and verified.
For detailed instructions, see Adding Domains.
Step 2: Set Your Origin URL
Point RndrKit at the host where your SPA actually runs — your Origin URL. This is the URL you would visit directly to see your app without RndrKit in front of it. Examples:
your-app.lovable.app— Lovable deploymentyour-app.vercel.app— Vercel deploymentyour-app.pages.dev— Cloudflare Pages deploymentyour-app.netlify.app— Netlify deploymentexample.spa.app— any other SPA host
The dashboard validates the URL and normalizes it for you. RndrKit proxies human traffic to this origin.
Step 3: Point DNS at RndrKit
RndrKit supports two ways to route traffic. Start with the Proxy path unless you have a specific reason to use the Worker path — you can switch later.
Proxy path (default)
Works with any DNS provider. Our TLS layer issues and renews SSL certificates automatically once DNS resolves.
| Record | Name | Value | Notes |
|---|---|---|---|
| CNAME | www | rndrkit.io | All providers |
| ALIAS | @ | rndrkit.io | ALIAS-capable providers (Cloudflare, Route 53, Vercel DNS) |
| A | @ | 35.153.65.36 | Fallback for providers without ALIAS/apex CNAME (GoDaddy, Namecheap, Squarespace Domains) |
- www / subdomains: always a CNAME to
rndrkit.io. - Apex (the root domain): prefer ALIAS or CNAME-flattening to
rndrkit.io. If your provider does not support that, use an A record to35.153.65.36.
Cloudflare users: set every record pointing to RndrKit to DNS only (gray cloud). The orange cloud proxy breaks bot detection and will return Error 1014. This is permanent — the gray cloud must stay on.
For provider-specific walkthroughs, see DNS Configuration.
Cloudflare Worker path (advanced)
Your domain stays on Cloudflare. A lightweight Worker routes bot traffic to RndrKit and humans to your origin at the edge. Fastest option, but it requires Cloudflare as your DNS host. See the Cloudflare Worker setup guide.
Verify
DNS usually propagates in a few minutes, though it can take up to 48 hours in rare cases. Once it resolves, click Verify DNS on the domain's onboarding panel — the status will flip from Inactive to Active. SSL issues automatically a few minutes after that.
To confirm bots see your full content, request your site with a Googlebot user agent:
curl -A "Googlebot/2.1" https://example.com
You should see your page's full HTML — title, meta tags, body content — not an empty shell. Compare that against a normal request:
curl https://example.com
The normal request returns your SPA shell (the origin response). The Googlebot request returns the pre-rendered version.
Next Steps
- Add your sitemap
- Verify indexing in Google Search Console
- Cloudflare Worker setup — advanced alternative to the proxy path