Skip to content

Topic pages #577

@mattobee

Description

@mattobee

Summary

Introduce Topic pages as a way to discover events by subject area. Topics are reusable Sanity documents (e.g. "Repetitive Strain Injury", "Cognitive Accessibility") that can be linked to one or more events. This epic adds:

  1. A Topics listing page (/topics) showing all topics with name, description, and event counts
  2. Individual topic pages (/topics/{slug}) showing the topic description, upcoming events, and past events
  3. Navigation — a "Topics" link in the primary header nav
  4. Cross-linking from event detail pages to topic pages (extending PR Add topic listing and detail pages #575)

Context

  • PR Add topic listing and detail pages #575 introduces topic content rendering on event detail pages (the topic Sanity document type and topics reference field on events)
  • The topic schema currently has name, slug, and body (Portable Text) — a description field needs to be added for listing pages and SEO
  • Topic slugs are already fetched but not yet used for linking

Design decisions

  • Description field: Add a plain-text description field to the topic schema (rather than extracting from body)
  • Navigation: "Topics" added to the primary nav alongside "Upcoming" and "Past Events"
  • Event display: Topic pages split events into upcoming and past sections
  • Cross-linking: Topic headings on event detail pages link to /topics/{slug}

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    Status

    Not Started

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions