Kickstart
Kickstart page component displaying a kickstart project with title, taxonomies, content, sidebar resources, and optional table of contents.
Props
| Prop | Type | Required | Default | Description |
|---|---|---|---|---|
kickstart | Kickstart | Yes | - | Kickstart entry from Contentstack |
path | string | Yes | - | Page path (e.g. /kickstarts/next-starter) |
Usage
import Kickstart from '@/components/pages/Kickstart';
<Kickstart kickstart={kickstartData} path={path} />Layout
- Breadcrumb: Sticky at top
- Main content: Left column with:
- NoticesSection (from additional_items)
- Icon + title
- Date, reading time, ContentTaxonomies (technology + subjects)
- ContentActions (Copy for LLM, View as Markdown)
- RichTextRenderer (kickstart_content.copy)
- AdditionalItemsSection (FAQ, Related Items)
- Canonical link (if present)
- Sidebar: Right column when headings or kickstarter_links exist:
- KickstarterLinks (layout="sidebar")
- TableOfContents (H2 headings)
Features
- Blog-style layout: Similar structure to Blog with right sidebar
- Technology + subjects: ContentTaxonomies with icons and search links
- Content actions: Copy for LLM and View as Markdown
- Markdown route:
/kickstarts/[...slug].mdfor raw markdown - Responsive: Sidebar collapses on smaller viewports
Data
- Content from
kickstart_content(notcomponents) – blog-like rich text - Taxonomies via
extractContentTaxonomies(kickstart.taxonomies) - Headings from
extractH2Headings(content.copy)for TOC
Notes
- Uses JsonLd for structured data
- Sidebar shown when
headings.length > 0orkickstart.kickstarter_links