// Base catalog — the source of truth. Every other locale (de.ts) mirrors // these keys EXACTLY; `defineLocale()` enforces that at `tsc`. // // Keep ICU placeholders (`{name}`, `{count, plural, …}`) identical across // locales — react-intl validates them at render time. import { defineCatalog } from '@voltro/i18n' export default defineCatalog({ 'nav.home': 'Home', 'nav.about': 'About', 'nav.language': 'Language', 'home.title': 'Hello, {name}', 'home.tagline': 'A bilingual static site built with Voltro.', 'home.body': 'This page is pre-rendered once per locale. The English version lives at the bare path; German is served from /de. Switch the language in the nav — each locale is its own crawlable URL.', 'home.activeLocale': 'You are reading the {locale} version.', 'about.title': 'About this template', 'about.body': 'frontend-i18n shows the URL-prefix i18n strategy: typed catalogs in src/locales, a [locale] mirror for every page, and per-locale page titles. Translations never drift — non-base catalogs fail the type-check if a key is missing.', 'meta.home.title': 'Home — Voltro i18n', 'meta.home.description': 'A bilingual static site built with Voltro — English at the bare path, German under /de.', 'meta.about.title': 'About — Voltro i18n', 'meta.about.description': 'How the URL-prefix i18n template is wired: typed catalogs, [locale] mirrors, per-locale SSG.', } as const)