MemoryGame

H5P equivalent

H5P Memory Game

When to use

Use MemoryGame for matching pairs — terminology drills, icon/name association, or low-stakes recall. Self-score mode is optional; it is not an LMS-scored assessment by default.

Requirements

  • Provide blockId and an even-length pairs array (two cards per id).

  • Emits memory_card_flipped interactions when tracking is enabled.

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.

<MemoryGame
  blockId="security-memory"
  pairs={[
    { id: "mfa", label: "MFA" },
    { id: "phish", label: "Phishing" },
    { id: "vpn", label: "VPN" },
    { id: "soc", label: "SOC" },
  ]}
/>

Copy into Cursor, Copilot, or ChatGPT after the vibe coding starter context:

Read lessonkit.json and src/App.tsx before editing.

Add a MemoryGame block (H5P-style: Memory Game) like this example inside the active <Lesson>:

<MemoryGame
  blockId="security-memory"
  pairs={[
    { id: "mfa", label: "MFA" },
    { id: "phish", label: "Phishing" },
    { id: "vpn", label: "VPN" },
    { id: "soc", label: "SOC" },
  ]}
/>

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.
- 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

See also