Modules Documentation
SEO / AEO requirements
Meta, structured data, hreflang per page.
Complete
Every article emits a full SEO + AEO payload: `<title>`, meta description, OG, hreflang, BreadcrumbList, and Article/NewsArticle JSON-LD with `mentions[]`. The platform refuses to ship an article without authored SEO fields.
Per-article emission contract
- <title>
- `{Article title} | StartupHub.today`. 50-60 chars optimal.
- meta description
- 140-160 chars. Mirrors the article `dek`. Authored, not auto-truncated.
- og:type
- Always `article`. Social shares render with article-style preview cards on LinkedIn / X / WhatsApp.
- JSON-LD @type
- `NewsArticle` when `article.type === "news"`; `Article` otherwise.
- mentions[]
- Built by `EcosystemSignalsService.buildMentionsJsonLd(signalsBlock)`. One Thing reference per cross-module signal.
- author / publisher
- Author: `{ @type: Person, name: <locale-aware author> }`. Publisher: always `{ @type: Organization, name: "StartupHub.today" }`.
- inLanguage
- `en` or `ar` matching the URL prefix. Required for AEO so LLM retrievers know which language ground-truth this entity carries.
