Skip to main content

Developer Page Specifications

Industry / Sector Page

/:lang/industries/{slug} — first-class sector hub: hero, featured, latest in sector, related topics, connected startups/opportunities/founders, most-read, newsletter.

Complete

The Industry page (/:lang/industries/{industry-slug}) is the editorial sector hub. It is NOT a filter result — it is a first-class surface that combines editorial reporting with cross-module signals from Startup Showcase, Opportunity Radar, and Founder Profiles.

Route + purpose

Pattern: /:lang/industries/{industry-slug} (lowercase, dash-separated). Example: /en/industries/health-technology. Eight industries are seeded at launch: health-technology, financial-technology, artificial-intelligence, education-technology, e-commerce, venture-capital, logistics, sustainability.

Sections (A–J)

A · Breadcrumb
Home → Editorial → Industries → {Industry name}. Industry is breadcrumb parent for all child article pages — NOT topic.
B · Industry hero
Name, editor-written description, counts (articles / topics / countries), CTAs ("Read latest", "Follow this sector"). Hero image at 16:9 from Industry.heroImageUrl.
C · Featured in sector
Largest editorial card on the page: most-recent article with isFeatured=true in this industry, fallback to latest.
D · Latest in {industry}
3-col grid of 9 cards, full ten-field metadata, sorted by publishedAt DESC. Excludes the featured article.
E · Related topics
Chip row of topics that actually have articles in this industry. Each chip links to /:lang/topics/{slug} with industry filter preserved.
F · Connected startups
Up to 6 cards from Startup Showcase, filtered by industry AND mentioned in editorial. Hidden if empty.
G · Connected opportunities
Up to 4 cards from Opportunity Radar filtered by sector. Hidden if empty.
H · Connected founder profiles
Up to 6 mini-cards from Founder Profiles, filtered by sector. Hidden if empty.
I · Most read in {industry}
Ranked 5-item list scoped to this industry. 2-col fill on lg so the right side is never empty.
J · Newsletter
Reuses <app-inline-signal-cta context="editorial"> with the industry pre-selected.

Critical rule

Cross-module sections (F, G, H) sit in the MIDDLE of the page, never at the top. The industry's editorial coverage is the page identity; startups/opportunities/founders are supporting context.

Data source

GET /api/industries/{slug} → { industry, featured, articles[], topics[], relatedStartups[], relatedOpportunities[], relatedFounders[], mostRead[] }. The shape is documented in the API contracts sub-topic.

JSON-LD

CollectionPage subtype, name and description from the industry record, inLanguage from the active locale, about: { @type: "Thing", name }.