ImagePairing¶
H5P equivalent
H5P Image Pairing
When to use¶
Use ImagePairing for memory-style image matching — learners flip and pair cards that share the same id.
Requirements¶
Each
pairsentry needs uniqueid,label, andimageSrc.Requires
checkIdfor LMS scoring.
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.
<ImagePairing
checkId="ppe-pairing"
pairs={[
{ id: "helmet", label: "Hard hat", imageSrc: "/helmet.png" },
{ id: "vest", label: "High-visibility vest", imageSrc: "/vest.png" },
]}
/>
Copy into Cursor, Copilot, or ChatGPT after the vibe coding starter context:
Read lessonkit.json and src/App.tsx before editing.
Add a ImagePairing block (H5P-style: Image Pairing) like this example inside the active <Lesson>:
<ImagePairing
checkId="ppe-pairing"
pairs={[
{ id: "helmet", label: "Hard hat", imageSrc: "/helmet.png" },
{ id: "vest", label: "High-visibility vest", imageSrc: "/vest.png" },
]}
/>
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.
Sync lessonkit.json — add under course.assessments[]:
{
"checkId": "ppe-pairing",
"kind": "imagePairing",
"question": "Match the PPE pairs."
}
- 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
Add under course.assessments[]:
{
"checkId": "ppe-pairing",
"kind": "imagePairing",
"question": "Match the PPE pairs."
}
See also¶
MemoryGame — text labels without images