Keep learners practising, even in the holidays
A learner practises most days, disappears for half-term, then works twice as hard the week before an exam. A streak that only counts consecutive days will punish them for a holiday you knew about. We turn lessons and quiz scores into streaks that survive a planned break.
Learners practise most days, but the school year has breaks in it.
A term is not flat. It has a slow start, a revision surge and an exam, then a holiday. A mechanic that only counts consecutive days gets it wrong at least twice a term, and each time it does a learner loses a run they did nothing to deserve.
The day is the step
Days close at local midnight in the learner's own time zone. A term is a start date, an end date and the missions inside it.
Completion is a click
Send the score as a property. A rule can then ask for attempts that cleared
80 at the first sitting.
Reading the chart: each bar is one week of a term. Practice builds for four weeks, stops for half-term, recovers, then surges through revision before dropping in exam week. The band marks half-term. Because the learner declared it in advance, those weeks answer the streak rule and the run survives.
A learner can declare a break in advance, and the run survives it
A streak is one condition tested once a day, so the forgiveness goes inside the condition. A quick review session or a break the learner declared in advance answers the same rule as a full lesson, with a cap so a whole term cannot be declared away.
| Key | Kind | What it carries |
|---|---|---|
| lesson finished | Metric · Number | One lesson finished, sent as 1. |
| planned break | Metric · Number | A day the study plan declared off. |
| score | Property · Number | The result on the attempt, so a rule can compare it. |
| attempt number | Property · Number | 1 for a first sitting, 2 for a retake. Stops farming. |
Send us one week of lessons
Send us the shape of one lesson event. We will build the practice streak in a test account and carry it to a milestone while you watch.