diff --git a/documentation/project-docs/metadata-and-seo.md b/documentation/project-docs/metadata-and-seo.md index ed41af2..1b959c8 100644 --- a/documentation/project-docs/metadata-and-seo.md +++ b/documentation/project-docs/metadata-and-seo.md @@ -18,18 +18,18 @@ This split follows Next.js metadata merge behavior: nested fields like `openGrap | `lib/page-meta.ts` | Route title/description source of truth for top-level routes | | `lib/page-info.tsx` | In-app help content and header metadata (built from route meta + help content) | | `lib/metadata.ts` | Metadata utilities (`resolveMetadataBase`, `buildPageMetadata`, shared OG/Twitter fields) | -| `lib/og-image.tsx` | Shared `next/og` image renderer used by OG routes | +| `lib/og-image.tsx` | Shared `next/og` image renderer (optional custom OG endpoint) | | `app/layout.tsx` | Global metadata defaults | | `app/**/page.tsx` | Route-level `generateMetadata()` exports | -| `app/api/og/route.ts` | API-style Open Graph endpoint (`next/og`) | +| `app/api/og/route.ts` | API-style Open Graph endpoint (`next/og`, optional) | ## Open Graph Image -TeacherBuddy uses a generated OG image route: +TeacherBuddy uses a static OG image asset: -- Path: `/api/og` -- API route file: `app/api/og/route.ts` -- Rendered dimensions: `1200x630` +- Path: `/images/og.png` +- Source file: `public/images/og.png` +- Declared dimensions: `895x372` The shared OG and Twitter image path is defined once in `lib/metadata.ts`. diff --git a/lib/metadata.ts b/lib/metadata.ts index 62afd44..7aa07df 100644 --- a/lib/metadata.ts +++ b/lib/metadata.ts @@ -14,7 +14,7 @@ export const DEFAULT_SITE_DESCRIPTION = 'Manage students, build quizzes, and draw random pairs without repeats.'; const DEFAULT_SITE_URL = 'http://localhost:3000'; -const DEFAULT_OG_IMAGE_PATH = '/api/og'; +const DEFAULT_OG_IMAGE_PATH = '/images/og.png'; const URL_PROTOCOL_PATTERN = /^[a-zA-Z][a-zA-Z\d+\-.]*:\/\//; /** @@ -27,9 +27,9 @@ export const SHARED_OPEN_GRAPH: NonNullable = { images: [ { url: DEFAULT_OG_IMAGE_PATH, - width: 1200, - height: 630, - alt: 'TeacherBuddy classroom dashboard preview', + width: 895, + height: 372, + alt: 'TeacherBuddy logo', }, ], }; diff --git a/public/images/og.png b/public/images/og.png new file mode 100644 index 0000000..1556a6d Binary files /dev/null and b/public/images/og.png differ