top-up

Question Packs

Place JSON files here following naming pattern (new):

<quizTypeRaw>_<level>_<questionFormat>_<lang>.json              (monolingual)
<quizTypeRaw>_<level>_<questionFormat>_<lang1>-<lang2>.json     (bilingual)

Where:

Legacy pattern (still supported as fallback during transition):

<quizTypeRaw>_<questionFormat>_<languageCode>.json

JSON Schema (array) – Monolingual

[
  {
    "question": "What is the capital of France?",
    "options": ["Paris", "Berlin", "Madrid", "Rome"],
    "correct_answer": "Paris",
    "explanation": "Paris has been France's capital since the early Middle Ages.",
    "level": "easy"
  }
]

Open-ended example entry (omit options)

{
  "question": "Describe the water cycle stages.",
  "correct_answer": "",
  "explanation": "Evaporation, condensation, precipitation, collection.",
  "level": "medium"
}

Bilingual Packs

For bilingual packs, encode primary + secondary text separated by a newline (\n) in each textual field (question, each options element, correct_answer, explanation). Example bilingual multiple choice entry (English primary, Russian secondary):

{
  "question": "What is the capital of France?\nКакова столица Франции?",
  "options": [
    "Paris\nПариж",
    "Berlin\nБерлин",
    "Madrid\nМадрид",
    "Rome\nРим"
  ],
  "correct_answer": "Paris\nПариж",
  "explanation": "Paris is France's capital.\nПариж — столица Франции.",
  "level": "easy"
}

Notes