The measurement engine behind Reaves Academy, running live in your browser. It turns a stream of answers into a defensible mastery score — asymmetric, so mastery is earned and can be lost, and time-aware, so it decays like memory does. Every constant below is read from the XML node, not hardcoded. Patent pending.
Answer as the learner — the engine scores each tap by whether it was right and how long it took:
Best score reached: 0 · half-life — days
Score today: 0 ·
IN { attempts: [ { isCorrect, responseTimeMs } ] }
OUT { smartScore 0–100, masteryBand, errorType, halfLifeDays }
When a learner gets something wrong, CALE tells you why — not just that they did. Answering fast and wrong is a different problem from answering slowly and wrong: one is carelessness, the other is a gap they never filled. Most systems see one wrong answer and make the next question easier, which is the right move for neither. CALE names which of three things happened and what to do about it: they rushed it, they half-learned it, or they never understood it — and each one needs a different response from you.
You do not upload your curriculum. There is nowhere to upload it to — CALE stores no content and never sees your questions. It measures answers, and your material stays exactly where it already lives.
You do not need a course to begin — you need questions with right answers. The guide in your download walks through writing them so the three kinds of mistake stay distinguishable, which is the only thing CALE asks of your content.
This is the real engine, not a mock: the code running above is the same pure library used in production, and it refuses to run if the node's constants are missing. Interested in embedding proof-of-learning? [email protected] · part of Reaves Labs.