Этап 1b: сайт
- Страницы обоих брендов из блоков Payload (D-029): главная, цены, локации, поддержка, 4 юридические, 404 и 500. Коллекции pages (черновики и версии) и faq с местами показа, 12 типов блоков; поля sites — почта и Telegram поддержки, часы работы, SEO по умолчанию. - Карта и глобус рисуются на сервере (d3-geo), контуры во внешнем SVG через <use>; выбор локации синхронизирован между картой и сеткой. - Тексты сайта и юридические черновики на 5 языках: de, fr, es — перевод с глоссарием; seed создаёт страницы и FAQ, только если их нет, SEED_CONTENT=reset пересоздаёт. - SEO: title и описания, canonical, hreflang с x-default, sitemap.xml и robots.txt на каждый домен, картинки для соцсетей. - Статическая сборка и пересборка через revalidatePath из хуков Payload (D-030); /svc/internal/revalidate для проверки. - 404 — статичная страница со статусом 404 через proxy; на сайте только опубликованные страницы. - Производительность: Client Hints темы Payload только в админке, предзагрузка 2 файлов шрифтов вместо 6; Lighthouse mobile 97–99. - Контраст --ink-3 по WCAG AA, радиокнопки вместо div role=button. - Документация: итоги 1b, глоссарий de/fr/es, трактовки юридических черновиков подтверждены, переносимые вопросы — в этапах 3e–3h. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
515acfb69d
commit
20491d1ba4
134 files changed
+11232
-212
No files matched your search
+120
-1
@@ -1 +1,120 @@
|
||||
{}
|
||||
{
|
||||
"brand": {
|
||||
"dedicated": {
|
||||
"name": "Veilix",
|
||||
"tagline": "Persönliches VPN mit dedizierter IP-Adresse. Seit 2022 am Markt."
|
||||
},
|
||||
"mass": {
|
||||
"name": "VeilixVPN",
|
||||
"tagline": "Ein VPN, das Sie nie ausschalten müssen. Seit 2022 am Markt."
|
||||
}
|
||||
},
|
||||
"nav": {
|
||||
"main": "Hauptnavigation",
|
||||
"home": "Startseite",
|
||||
"pricing": "Preise",
|
||||
"locations": "Standorte",
|
||||
"support": "Support",
|
||||
"logIn": "Anmelden",
|
||||
"getVpn": "VPN holen",
|
||||
"menu": "Menü"
|
||||
},
|
||||
"footer": {
|
||||
"service": "Service",
|
||||
"legal": "Rechtliches",
|
||||
"terms": "Nutzungs\u00ADbedingungen",
|
||||
"privacy": "Datenschutz",
|
||||
"refund": "Rückerstattung",
|
||||
"cookies": "Cookie-Richtlinie",
|
||||
"copyright": "© {year} {brand}"
|
||||
},
|
||||
"switch": {
|
||||
"language": "Sprache",
|
||||
"currency": "Währung",
|
||||
"theme": "Design",
|
||||
"light": "Helles Design",
|
||||
"dark": "Dunkles Design",
|
||||
"system": "Systemeinstellung verwenden"
|
||||
},
|
||||
"cabinet": {
|
||||
"home": "Übersicht",
|
||||
"keys": "Alle Schlüssel",
|
||||
"keysShort": "Schlüssel",
|
||||
"key": "Schlüssel",
|
||||
"buy": "Schlüssel kaufen",
|
||||
"buyShort": "Kaufen",
|
||||
"billing": "Guthaben & Zahlungen",
|
||||
"referral": "Empfehlungsprogramm",
|
||||
"more": "Mehr",
|
||||
"support": "Support",
|
||||
"login": "Anmelden",
|
||||
"order": "Bestellung",
|
||||
"terms": "Nutzungsbedingungen",
|
||||
"privacy": "Datenschutz"
|
||||
},
|
||||
"stub": {
|
||||
"text": "Dieser Bereich folgt in den nächsten Ausbaustufen."
|
||||
},
|
||||
"notFound": {
|
||||
"title": "Seite nicht gefunden",
|
||||
"text": "Die Seite wurde möglicherweise verschoben oder hat nie existiert.",
|
||||
"home": "Zur Startseite"
|
||||
},
|
||||
"status": {
|
||||
"dedicated": {
|
||||
"available": "Server verfügbar",
|
||||
"on_demand": "In 24 Stunden bereit"
|
||||
},
|
||||
"mass": {
|
||||
"available": "Inklusive",
|
||||
"soon": "In Kürze"
|
||||
},
|
||||
"withCount": "{label} · {count}"
|
||||
},
|
||||
"count": {
|
||||
"countries": "{count, plural, one {# Land} other {# Länder}}"
|
||||
},
|
||||
"pricing": {
|
||||
"firstMonth": "im ersten Monat",
|
||||
"thenPerMonth": "danach {price} pro Monat",
|
||||
"then": "danach",
|
||||
"perMonth": "pro Monat",
|
||||
"perYear": "pro Jahr",
|
||||
"buy": "Kaufen",
|
||||
"buyIn": "Kaufen: {country}",
|
||||
"locations": "Standorte",
|
||||
"plans": "Tarif",
|
||||
"close": "Schließen"
|
||||
},
|
||||
"lead": {
|
||||
"name": "Name",
|
||||
"email": "E-Mail",
|
||||
"telegram": "Telegram",
|
||||
"whatsapp": "WhatsApp",
|
||||
"task": "Kurz zu Ihrem Anliegen",
|
||||
"send": "Senden",
|
||||
"sent": "Anfrage gesendet",
|
||||
"needContact": "Bitte geben Sie eine E-Mail-Adresse, Telegram oder WhatsApp an",
|
||||
"badEmail": "Bitte prüfen Sie die E-Mail-Adresse",
|
||||
"consent": "Mit dem Absenden des Formulars stimmen Sie der <link>Datenschutzerklärung</link> zu."
|
||||
},
|
||||
"support": {
|
||||
"telegram": "Telegram",
|
||||
"email": "E-Mail"
|
||||
},
|
||||
"contact": {
|
||||
"email": "Ihre E-Mail-Adresse",
|
||||
"topic": "Thema",
|
||||
"message": "Was ist passiert?",
|
||||
"send": "Senden",
|
||||
"sent": "Gesendet, wir antworten per E-Mail",
|
||||
"needEmail": "Bitte geben Sie Ihre E-Mail-Adresse an, damit wir antworten können",
|
||||
"needMessage": "Bitte beschreiben Sie, was passiert ist"
|
||||
},
|
||||
"error": {
|
||||
"title": "Etwas ist schiefgelaufen",
|
||||
"text": "Der Fehler ist uns bereits bekannt. Versuchen Sie in einer Minute, die Seite neu zu laden.",
|
||||
"retry": "Seite neu laden",
|
||||
"home": "Zur Startseite"
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user