The generator creates sequences with the following characteristics:
- Randomly selects and organizes 24 learning standards (also referred to as learning objectives/LOs) into 4 groups of 6
- Each group is assigned one of four conditions combining spacing (wide/narrow) and variability (high/low)
- For each standard, questions are organized into:
- Pretest (2 questions)
- Learning phase (3 blocks of 4 questions each)
- Posttest (2 questions)
The above is based on the following pseudocode from Phil Pavlik.
- Node.js >= 20.0.0
- npm or yarn
npm install
- Generate sequences and assignments:
npm run generate
- Run tests:
npm test
nsfStudy2/generateSequence.ts
- Generates the initial question sequences for each learning objectivensfStudy2/generateStudentAssignment.ts
- Creates daily student assignments based on spacing conditionsnsfStudy2/parseQuestions.ts
- Handles question data parsingnsfStudy2/nsfStudy2.types.ts
- TypeScript type definitions
The generator produces two JSON files in the data
directory:
- Generated sequences for each learning objective
- Daily student assignments organized by:
- Pretest
- Learning phase (W1D1 through W6D2)
- Posttest
Each assignment contains shuffled questions appropriate for the student's assigned conditions. You can run the generate
script to generate new sequences and assignments for a new example student. Files with the same timestamp represent file for the same student.