Server-Side Rendering einbauen — Replit
AI-Crawler führen meist kein JavaScript aus. Wenn dein Content nur in useEffect ist, sieht ChatGPT eine leere Seite. Pre-rendered HTML ist Pflicht für AI-Zitate und schnellere Google-Indexierung.
In Replit fixen
Cloud-IDE mit Replit Agent
Framework-abhängig. Replit Agent bitten Haupt-Route per Default server-seitig zu rendern und nur interaktive Parts zu hydraten.
Anderes Tool? Wähle deinen Stack:
Der Prompt für Replit
Diesen Text exakt so in deinen Replit-Chat kopieren und einfügen.
In Replit, ask the Replit Agent to make these exact changes across the project: Render content server-side 1. Convert client components to Server Components where possible (remove "use client" from pages that only render data). 2. Move data fetching out of useEffect into the server component body. 3. Verify by viewing the page source (Ctrl+U) — the body text should be present without JS.
Warum das wichtig ist
Es gibt zwei Arten Crawler: welche die JavaScript ausführen (Googlebot — meist, langsam) und welche die es nicht tun (GPTBot, ClaudeBot, die meisten AI-Tools, Social-Preview-Scraper). Wenn dein Content nur client-gerendert ist, sieht die zweite Gruppe nur eine leere Hülle.
Pure SPAs — Create React App, unmodified Vite React — haben dieses Problem by Default. Die HTML-Response ist ein einziges `<div id="root"></div>`, alles andere erscheint nach JS. OK für User, kaputt für AI-Suche.
Der Fix ist SSR oder SSG. Next.js App Router macht das per Default. Lovable- und Bolt-Projekte auf Vite brauchen entweder einen Vite-SSR-Adapter, Umzug zu Next/Remix/Astro, oder zumindest einen pre-rendered Static-Export für Key-Pages.
So nutzt du diesen Prompt in Replit
- 1. Dein Replit-Projekt öffnen.
- 2. Prompt oben mit Copy-Button kopieren.
- 3. In Replit-Chat einfügen und senden.
- 4. Diff reviewen, Änderungen akzeptieren, neu deployen.
- 5. Fix mit der Checkliste unten verifizieren.
Typische Fehler vermeiden
- error_outlineGanze Seite in useEffect der Content lädt — nichts im HTML.
- error_outlineKomplette Seite als `"use client"` in Next.js — SSR-Vorteile weg.
- error_outlineContent vom Client aus der API laden wenn du server-seitig laden könntest.
- error_outlineDynamic-Imports für Content-Komponenten — Content nicht im initialen HTML.
Wie du prüfst ob der Fix geklappt hat
- check_circle`curl -s https://deinesite.com/page | grep "DEINE HEADLINE"` — muss Match liefern.
- check_circleJS in Chrome DevTools → Einstellungen → Debugger deaktivieren → reload — Haupt-Content muss sichtbar bleiben.
- check_circleQuelltext (Strg+U) — H1, erster Absatz, Key-CTAs müssen im rohen HTML stehen.
- check_circle`view-source:deinesite.com/page` öffnen — nach Meta-Description-Text suchen.
Häufige Fragen
Rendert Google JavaScript?expand_more
Muss ich die ganze App zu Next.js migrieren?expand_more
Was ist mit Hydration-Errors?expand_more
Alle 34 Prompts passend zu deiner Replit-Site?
Pantra scannt deine Site in 10 Sekunden, erkennt den Stack und generiert genau die Prompts die passen — nur die du brauchst.
Site scannenÄhnliche Replit-Prompts
Key-Content ins statische HTML — Replit
Prompt damit Headings, Absätze und FAQs im rohen HTML stehen, nicht per Client-JS gerendert.
AI-Suche / GEOGPTBot, ClaudeBot und PerplexityBot erlauben — Replit
Prompt um AI-Crawler zu whitelisten damit ChatGPT, Claude und Perplexity deine Seiten zitieren können. In jedem AI-Stack.
AI-Suche / GEOllms.txt-Datei anlegen — Replit
Stack-spezifischer Prompt um llms.txt zu publizieren — ein kuratierter Guide der LLMs sagt worum es auf deiner Site geht.
AI-Suche / GEOJSON-LD Structured Data setzen — Replit
Prompt um Organization, Article und FAQ JSON-LD im <head> zu setzen — sagt Google und AI-Crawlern genau was die Seite repräsentiert.