Slide¶
H5P equivalent
H5P Course Presentation (slide)
When to use¶
Use Slide as a child of SlideDeck — one screen in a presentation-style lesson. Combine with Heading, Text, assessments, or content blocks.
Do not mount Slide directly under Lesson.
Requirements¶
Each
SlideneedsblockIdandtitle.Keyboard navigation is provided by the parent deck.
Try it¶
Documentation demo
Use the Live demo, React, AI prompt, and Packaging / Manifest tabs below. Embedded demos disable telemetry, xAPI, and the LMS bridge. For production delivery, use the CLI template src/courseConfig.ts and LMS Go-Live.
<SlideDeck blockId="briefing" title="Security briefing">
<Slide blockId="context" title="Context">
<Text>Attackers impersonate payroll and shipping during busy seasons.</Text>
</Slide>
<Slide blockId="check" title="Check">
<TrueFalse checkId="slide-tf" question="A familiar display name guarantees legitimacy." answer={false} />
</Slide>
</SlideDeck>
Copy into Cursor, Copilot, or ChatGPT after the vibe coding starter context:
Read lessonkit.json and src/App.tsx before editing.
Add a Slide block (H5P-style: Course Presentation (slide)) like this example inside the active <Lesson>:
<SlideDeck blockId="briefing" title="Security briefing">
<Slide blockId="context" title="Context">
<Text>Attackers impersonate payroll and shipping during busy seasons.</Text>
</Slide>
<Slide blockId="check" title="Check">
<TrueFalse checkId="slide-tf" question="A familiar display name guarantees legitimacy." answer={false} />
</Slide>
</SlideDeck>
Requirements:
- Import only from @lessonkit/react; use block types from block-catalog.v3.json.
- Keep existing courseId, lessonId, and navigation stable unless I ask to add a lesson.
- Mount only inside the documented parent compound (see component page When to use).
Packaging notes:
`Slide` is a [`SlideDeck`](slide-deck.md) child — no manifest row for the slide itself.
- Stable **`blockId`** per slide helps resume and telemetry URNs.
- Nested assessments need matching `course.assessments[]` entries.
- After edits, list changed files and what to verify in the browser (lessonkit dev).
Workflow tips: https://lessonkit.readthedocs.io/en/latest/guides/vibe-coding/prompting-and-workflows.html
Slide is a SlideDeck child — no manifest row for the slide itself.
Stable
blockIdper slide helps resume and telemetry URNs.Nested assessments need matching
course.assessments[]entries.