Add router: () => '/' back to translationsEn and translationsUk collections
so TinaCloud shows the homepage preview alongside the editing form.
The EOF error that previously blocked this is fixed (TinaConnectedProvider
defers useTina calls until both queries are loaded).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Configured TinaCloud for visual editing of translation files with useTina hook integration. Updated .gitignore to exclude generated runtime files while preserving schema files needed by TinaCloud for branch indexing.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Integrate useTina hook for live translation editing in LanguageContext
- Configure translationsEn/translationsUk with global=true and router
- Add blog post router and auto-slugify filename generator
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
TinaCloud requires _schema.json and _graphql.json to index branches.
Generated by running tinacms dev locally.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Add tina/config.ts with full schema for all site sections
- Convert i18n from TypeScript to nested JSON (content/translations/)
- Update LanguageContext to import JSON with flattenObject utility
- Update dev/build scripts to run tinacms build
- Add sync-blog.mjs support for content/blog/*.md (TinaCMS posts)
- Update CI/CD with Tina env vars, remove blog rsync exclusion
- Add tina/__generated__/ to .gitignore
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>