How to write standalone, high-quality quiz topic files for math — grade independent. Each quiz is a timed assessment with 6 questions + 1 bonus, strictly 2 pages, with answer explanations that teach.
A collection of standalone, timed assessments (15 minutes each) mapped 1-to-1 to curriculum topics. Each quiz tests understanding of one topic with 6 questions + 1 bonus challenge. Quizzes are designed to be torn out or photocopied — each stands alone.
No teaching content. The answer explanations teach instead — that's the trick.
| Aspect | Value |
|---|---|
| Purpose | Assess understanding of a single topic |
| Time per quiz | ~15 minutes |
| Questions per quiz | 6 regular + 1 bonus challenge |
| Teaching content | None — answer explanations teach |
| Visual elements | At least 3 different visual question types per quiz |
| Answers | for every question |
\answerExplain{answer}{explanation}| Page length | Strictly 2 pages per quiz (non-negotiable) |
| Color palette | Indigo/gold (distinct from other book types) |
The quiz book must stay under 180 pages. Every quiz must fit in exactly 2 pages.
Page math: ~45 core topics × 2 pp = 90 pp content + ~40 pp overhead (cover, welcome, TOC, tracker, formula sheet, answer key, back matter) ≈ 130 pp core. State-specific additional topics add ~10–20 more quizzes ≈ 150–170 pp total. This leaves room.
Compactness strategies:
\quizWorkSpace[1.5cm] not [3cm] — just enough room\quizCircle or \quizMC (compact) over \quizMatch (tall)This is the most important section. Do not skip any step.
Read the source topic file. Extract:
Before writing a single line of LaTeX, plan the 6 questions + bonus:
Cognitive mix target:
Write clear, unambiguous questions. Every question has exactly one correct answer (or a clearly defined set). Use age-appropriate real-world contexts. Bold key terms with \textbf{}.
Creative freedom: You have full latitude in question design. Invent engaging scenarios, draw custom TikZ illustrations, use real-world contexts that resonate with the target age group. The catalogs below are a toolbox — not a template. Mix, match, and create new visual types when a topic calls for it.
Re-compute every numerical answer independently. Work backward from your answer to the question. Watch for:
Re-read every explanation. Does it teach, or just restate the answer? Every explanation should help a student who got it wrong understand why the correct answer is correct and where they likely went wrong.
Check explanation matches answer. It's easy to write correct math but a mismatched explanation.
Verify visual accuracy. If you drew a TikZ diagram, do the numbers in the diagram match the question and answer?
Count your questions. Exactly 6 regular + 1 bonus. Not 5, not 7, not 8.
python3 scripts/get_chapter_topic_facts.py --chapter <N>
Returns: grade level, age range, chapter title, core/additional/modified topics with file paths and YAML summaries. Use this to know what topics exist before writing.
Before writing any quiz, you MUST read the corresponding topic file:
| Source folder | Write quiz to |
|---|---|
topics/ | topics_quiz/ |
topics_additional/ | topics_quiz_additional/ |
topics_modified/ | topics_quiz_modified/ |
Read the source file to understand concepts, vocabulary, skill level, and depth. Do NOT guess — read.
THINK → PLAN → WRITE → VERIFY (see above). No shortcuts.
Same filename as the source: ch<CC>-<SS>-<slug>.tex
Examples:
topics/ch01-01-what-is-a-ratio.tex → topics_quiz/ch01-01-what-is-a-ratio.textopics_additional/ch03-02-integer-addition.tex → topics_quiz_additional/ch03-02-integer-addition.texEvery quiz topic file must follow this exact sequence:
% ============================================================================
% Quiz — Topic Title
% CCSS X.XX.X.X
% ============================================================================
\quizPage{Topic Title}
\quizInfo
\quizInstructions
% --- Question 1 ---
\quizQ Question text...
% visual element here
\answerExplain{answer}{explanation}
% --- Question 2 ---
\quizQ ...
\answerExplain{answer}{explanation}
% --- Questions 3–6 ---
% ...
\quizDivider
% --- Bonus Challenge ---
\begin{bonusChallenge}
\bonusNote
\quizQ Bonus question...
\answerExplain{answer}{explanation}
\end{bonusChallenge}
\quizScoreBox
\quizPage{Title} — banner with auto-numbered quiz and chapter\quizInfo — name/date/score strip (defaults to 7 points; use \quizInfo[N] for custom)\quizInstructions — instruction bar (or \quizInstructions[custom text])\quizQ with at least 3 different visual types\quizDivider — separator before bonusbonusChallenge environment with \bonusNote and 1 question\quizScoreBox — "How did you do?" self-assessmentThe answer explanation is where learning happens. The student just took a quiz, got some wrong, and now reads the answer key. This is a teaching moment. Make it count.
\answerExplain{short answer}{explanation}
$...$.% BAD — restates the answer
\answerExplain{$\frac{3}{5}$}{The ratio is $\frac{3}{5}$.}
% GOOD — teaches the reasoning
\answerExplain{$\frac{3}{5}$}{There are $3$ cats and $2$ dogs, so $3 + 2 = 5$
pets total. The part-to-whole ratio of cats is $\frac{3}{5}$.}
% BAD — no method shown
\answerExplain{$x = 12$}{$x = 12$.}
% GOOD — shows method + check
\answerExplain{$x = 12$}{Start with $x + 7 = 19$. Subtract $7$ from both