feat(site): prerender every locale and publish structured data, llms.txt and sitemaps
Some checks failed
ci / 정본·보안·린트·타입·테스트 (push) Successful in 53s
ci / 모바일 린트·타입·Jest (push) Successful in 45s
ci / Supabase Edge Functions + Cloudflare Worker (push) Successful in 21s
ci / .NET API 서버 테스트 (push) Successful in 13s
deploy-site / deploy (push) Failing after 27s
ci / 워크스페이스 빌드 검증 (push) Successful in 36s

Crawlers received an empty client-rendered shell (107 characters of text);
most AI crawlers do not run JavaScript, so the product was invisible to them.

- Build renders each locale to static HTML (/ for Korean, /en/ … /vi/) with
  src/entry-server.tsx + scripts/prerender.mjs; the browser hydrates the same
  locale. The language menu links to those pages instead of switching in place.
- Per-locale head: title, description, canonical, hreflang (+ x-default /en/),
  Open Graph and X cards with a per-locale 1200x630 image.
- JSON-LD graph: Organization, WebSite, WebPage, SoftwareApplication (KRW
  offers, version, release date, download URL from the canonical sources),
  HowTo and FAQPage. No invented ratings.
- robots.txt (search, ai-input and ai-train allowed; /app, /api, invites
  excluded), sitemap.xml with language alternates, llms.txt and llms-full.txt
  generated from the same translations and canonical values.
- IndexNow key and a post-deploy ping (Bing, Naver, Yandex).
- A factual "at a glance" section and two FAQ answers (recognised languages,
  where data is stored) in all 10 languages.
- Icons, apple-touch-icon and web manifest; asset base is now absolute so
  sub-path pages load the same bundle.

Verified: 3.6k-7.7k characters of text per page, no hydration warnings,
no overflow at 320/1440 in six locales, axe 0, Lighthouse mobile SEO,
accessibility and best practices 100.
This commit is contained in:
Yun Chan 2026-09-27 10:45:05 +09:00
parent 52e364e578
commit a0abda7a5c
45 changed files with 852 additions and 79 deletions

View file

@ -139,6 +139,19 @@ export const de: Translations = {
{ title: 'Android · iOS', body: 'Wird hier veröffentlicht, sobald die Store-Prüfung abgeschlossen ist.' },
],
},
facts: {
title: 'D3RO Voice auf einen Blick',
rows: [
{ title: 'Was es ist', body: 'Eine App zur Spracheingabe für Windows. Halten Sie eine Tastenkombination gedrückt, sprechen Sie, und der Text wird an der Cursorposition der App eingefügt, die Sie gerade verwenden.' },
{ title: 'Plattform', body: 'Windows 10 · 11 (64-Bit)' },
{ title: 'Preis', body: 'Jede lokale Funktion ist kostenlos. Für mehr Cloud-Textbereinigung kostet Pro {pro}/Monat und Pro+ {proPlus}/Monat.' },
{ title: 'Internet', body: 'Sobald das Sprachmodell und ein lokales KI-Modell heruntergeladen sind, funktionieren Diktieren und Bereinigung offline.' },
{ title: 'Spracherkennung', body: 'faster-whisper läuft auf Ihrem PC. Es erkennt die Sprache automatisch, oder Sie können Koreanisch, Englisch, Japanisch oder Chinesisch auswählen.' },
{ title: 'Textbereinigung', body: 'Ein lokales Ollama-Modell entfernt Füllwörter und ordnet Sätze. Cloud-Modelle sind optional.' },
{ title: 'Ihre Daten', body: 'Aufnahmen und Abschriften werden in einer Datenbank auf Ihrem PC gespeichert. Es ist kein Konto erforderlich.' },
{ title: 'Neueste Version', body: '{version} (veröffentlicht am {date})' },
],
},
faq: {
title: 'Häufig gestellte Fragen',
items: [
@ -148,6 +161,8 @@ export const de: Translations = {
{ q: 'In welchen Apps funktioniert es?', a: 'In den meisten Windows-Apps, in denen Sie tippen können. Der Text wird durch Einfügen eingefügt, daher akzeptieren Felder, die das Einfügen blockieren, ihn möglicherweise nicht.' },
{ q: 'Wie viel kann ich kostenlos nutzen?', a: 'Jede Funktion, die auf Ihrem PC läuft, ist kostenlos und ohne Nutzungslimits. Kostenpflichtige Pläne erhöhen, wie viel Cloud-Textbereinigung Sie nutzen können.' },
{ q: 'Gibt es eine macOS- oder Mobilversion?', a: 'Derzeit ist nur Windows verfügbar. Die macOS-App (Apple Silicon) und die mobilen Apps werden hier veröffentlicht, sobald sie ihre Prüfungen bestanden haben.' },
{ q: 'Welche Sprachen kann ich sprechen?', a: 'Standardmäßig wird die gesprochene Sprache automatisch erkannt. Sie können in den Einstellungen auch Koreanisch, Englisch, Japanisch oder Chinesisch auswählen.' },
{ q: 'Wo werden meine Aufnahmen und Abschriften gespeichert?', a: 'In einer Datenbank auf Ihrem PC; sie werden nirgendwohin gesendet. Nur wenn Sie die Cloud-Spracherkennung oder die Cloud-Textbereinigung aktivieren, werden diese Anfragen an einen externen Server gesendet.' },
],
},
footer: {