feat(schema): Wave 2 — add generator categories, Organization schema, 404 pages
- Add category field to generatorSchema (required, 5 values) - Assign categories to all 28 generators - Add Organization JSON-LD schema to BaseLayout - Create custom 404 pages (EN + RU) - Add not-found and blog translation keys
This commit is contained in:
@@ -0,0 +1,28 @@
|
||||
Task 10: Custom 404 Pages (EN + RU)
|
||||
Date: 2026-05-14
|
||||
Status: COMPLETE
|
||||
|
||||
Files created:
|
||||
- src/pages/404.astro
|
||||
- src/pages/ru/404.astro
|
||||
|
||||
Files modified:
|
||||
- src/i18n/translations.ts (added notFoundTitle, notFoundMessage, backToHome, blog keys)
|
||||
|
||||
Build verification:
|
||||
- npm run build: PASS
|
||||
- Total pages: 64 (62 existing + 2x 404)
|
||||
- dist/404.html exists (Astro outputs root 404 as 404.html for static host compatibility)
|
||||
- dist/ru/404/index.html exists
|
||||
|
||||
Content verified:
|
||||
- EN page contains "Page Not Found"
|
||||
- RU page contains "Страница не найдена"
|
||||
- Both pages include breadcrumb back to home, friendly message, and links to home + blog
|
||||
|
||||
Key patterns used:
|
||||
- BaseLayout with title/description props
|
||||
- Locale detection via Astro.currentLocale
|
||||
- Translation keys via useT(lang)
|
||||
- Identical EN/RU template files (locale-aware links computed from lang variable)
|
||||
- JSON-LD WebPage schema injected via slot="head"
|
||||
@@ -0,0 +1,12 @@
|
||||
Build output for Task 8 (Add category field to all generators + make required in schema)
|
||||
|
||||
Command: npm run build
|
||||
Result: PASS
|
||||
|
||||
Key metrics:
|
||||
- 64 pages built
|
||||
- 0 Zod validation errors
|
||||
- 0 build errors
|
||||
- All 28 generator JSON files validated successfully with required category field
|
||||
|
||||
Timestamp: 2026-05-14
|
||||
@@ -0,0 +1,16 @@
|
||||
Organization Schema Verification
|
||||
================================
|
||||
|
||||
Build: PASS
|
||||
File modified: src/layouts/BaseLayout.astro
|
||||
|
||||
Organization schema found in dist/index.html:
|
||||
{"@context":"https://schema.org","@type":"Organization","name":"Randify","url":"https://randify.pro","logo":"https://randify.pro/favicon.png"}
|
||||
|
||||
Presence verified across built pages:
|
||||
- dist/index.html
|
||||
- dist/ru/index.html
|
||||
- dist/ru/privacy/index.html
|
||||
- dist/ru/generators/yesno/index.html
|
||||
- dist/ru/generators/wheel/index.html
|
||||
(and all other 63 built pages)
|
||||
Reference in New Issue
Block a user