WizKidsFamily Docs

What is a pack

A folder of data that teaches one topic, objective by objective, in small steps.

A pack is one topic for one age range: "Multiplication tricks, ages 8 to 12", "Spanish family words, ages 5 to 8". It's a folder with a pack.json and, when it needs them, pictures and audio. There is no code in it (except a game course's own game).

multiplication-tricks/
  pack.json        details, objectives, vocabulary, cards
  img/             PNG, JPG or WebP, at most 2 MB each
  audio/           MP3 or M4A, at most 1 MB each

A pack holds at most 500 cards and 10 MB in all.

The parts of pack.json

pack.json
{
  "format": "wizkido-pack/1",
  "pack": {
    "slug": "multiplication-tricks",
    "module": "math",
    "title": "Multiplication tricks",
    "version": "1.0.0",
    "ages": [8, 12],
    "teachingLanguage": "en",
    "licence": "CC BY 4.0"
  },
  "objectives": [
    {
      "code": "KIT.MULT.DOUBLE",
      "statement": "Times by 4 and 8 by doubling",
      "ladder": [
        { "level": 1, "can": "Knows that ×4 is double twice", "templates": ["tf", "mc"] },
        { "level": 2, "can": "Doubles step by step to times by 4 or 8", "templates": ["fill"] },
        { "level": 3, "can": "Times by 4 or 8 in their head", "templates": ["math"] }
      ]
    }
  ],
  "cards": [
    {
      "id": "KIT.MULT.DOUBLE/L1/0001",
      "objective": "KIT.MULT.DOUBLE",
      "level": 1,
      "statement": "×4 is the same as ×2, then ×2 again.",
      "template": "tf",
      "params": { "statement": "To times by 4, you can double the number, then double again." },
      "key": { "value": true, "explanation": "×4 is the same as ×2, then ×2 again." }
    }
  ]
}
PartWhat it is
pack.slugThe pack's name in links. It never changes across versions.
pack.moduleThe subject: math, ela, science, reasoning, language, life, social or offscreen.
pack.versionA semantic version. Bump it for every upload you submit.
objectivesWhat the pack teaches. Each has a code, a statement and a ladder of 1 to 5 levels.
ladder[].canWhat a kid can do at that level, and the card templates that practise it.
cardsThe cards. Each names its objective and level, the one fact it teaches, a template, its params (what the kid sees) and its key (the answer, never sent to the kid).
vocabularyLanguage packs: every word with its meaning and audio.

Keep card ids stable

Give every card an id like KIT.MULT.DOUBLE/L1/0001 and keep it. A new version then updates the card in place, and kids keep their progress.

Ladders

Kids climb each objective's ladder: level 1 is recognising ("true or false?"), the top level is doing it unaided. The app moves a kid up when they're ready and brings cards back before they're forgotten. Write a few cards for every level.

Next: What is a course · Card types