Detail view component for rendering a single onboarding guide at `/onboarding-guides/`, supporting both SSR-controlled and self-fetching embed modes. ## Key Components ### `OnboardingGuideDetailViewProps` Configuration interface with two operating modes: - **Controlled (SSR):** Pass `initialData` with a server-fetched `OnboardingGuide` - **Self-fetching:** Pass `slug` + `guideEndpoint` factory; the component fetches independently via `useSelfFetch` Key props: | Prop | Type | Description | |---|---|---| | `initialData` | `OnboardingGuide` | Server-fetched guide for SSR mode | | `slug` / `guideEndpoint` | `string` / `fn` | Self-fetch mode identifiers | | `MarkdownRenderer` | `ComponentType` | Swappable markdown renderer (defaults to `RichMarkdownRenderer`) | | `renderRelatedCard` | `fn` | Per-row related guide card override | | `relatedContent` | `ReactNode` | Host slot for cross-type related/FAQ rail | | `shell` | `boolean` | Wraps in `` when `true` (default); padding-only when `false` | ### `OnboardingGuideDetailView` Main exported component. Renders: 1. Tag badges (`EntityTagBadges`) 2. Author/metadata grid with section and step order (`EntityAuthorCard`) 3. Video player with warmup and captions (`EntityVideoSection`) 4. Markdown body (`MarkdownRenderer`) 5. Video bites strip (`VideoBitesStrip`) 6. End-of-article author byline (`ArticleAuthorByline`) 7. Same-section related guides list 8. Host-injected `relatedContent` slot ## Usage Example ```typescript // SSR / controlled mode (hub page) } /> // Self-fetching / config-only embed mode `/content/api/onboarding-guides/${s}`} basePath="/onboarding-guides" shell={false} /> ``` ## Source [`onboarding-guide-detail-view.tsx`](https://github.com/flamingo-stack/openframe-oss-lib/blob/main/onboarding-guide-detail-view.tsx)