I was fascinated by Math Academy and wanted to build the same system for propositional logic.
The curriculum is a 29-topic knowledge graph (DAG). Solving a problem gives fractional credit to prerequisite topics proportional to their edge weights, so you're not re-drilled on things you've already implicitly practiced. Placement uses binary search on graph milestones to skip what you already know. Scheduling is FSRS v6, with task compression (if a topic and its child are both due, only the child is shown).
I was fascinated by Math Academy and wanted to build the same system for propositional logic.
The curriculum is a 29-topic knowledge graph (DAG). Solving a problem gives fractional credit to prerequisite topics proportional to their edge weights, so you're not re-drilled on things you've already implicitly practiced. Placement uses binary search on graph milestones to skip what you already know. Scheduling is FSRS v6, with task compression (if a topic and its child are both due, only the child is shown).
Full source, MIT licensed: https://github.com/moaaz-ae/plcourse
Happy to answer questions.