Skip to main content

Modules Documentation

SEO / AEO requirements

Meta, structured data, hreflang per page.

Complete

Each Opportunity emits a typed schema.org payload. Current primary: `CreativeWork` (until application-window fields stabilize). Planned migration: `BusinessEvent` with `eventType: BusinessEvent`, `offers`, `eligibleAudience`, `location` — the schema most accurate to how an opportunity behaves.

Current emission contract

<title>
`{Opportunity title} — {organizer name} | StartupHub.today`. Editor-authored.
meta description
140-160 chars. Mirrors `shortSummary` from the content block. Includes the deadline state.
JSON-LD @type (current)
`CreativeWork`. Fields: name, description, datePublished, dateModified, author: Organization, inLanguage.
JSON-LD @type (planned)
`BusinessEvent` + `eventType: BusinessEvent`. Fields: name, description, startDate (publishedAt), endDate (deadlineAt), organizer: Organization, location: Place, eligibleAudience, offers (benefits).
mentions[]
Cross-module Thing references. Includes related files (CreativeWork), founders (Person), startups (Organization), events (Event).