Update Course Lesson
Admins (or authorized staff) can update an existing lesson inside a section or module.
Updating lessons allows you to adjust XP, content, quiz questions, or coding activities without creating a new one.
Update a Lesson (Quick Steps)
- Go to Course → Sections.
- Select the Section/Module that contains the lesson.
- Find the lesson and click Edit.
- Update fields as needed.
- Save changes.
Editable Lesson Fields
| Field | Type | Notes |
|---|---|---|
| Lesson Type | Enum | Cannot usually be changed after creation. |
| Name | String | Update lesson title (3–80 characters). |
| XP | Number | Adjust XP rewards. |
| Gold | Number | Adjust in-app currency reward. |
| Activities | Mixed | Content, quizzes, or code blank fill — editable in detail. |
Update Content Lesson
- Content: Rich text via CKEditor.
- Programming Language: Update or change if coding content is added.
- Code Content: Update code snippets or examples.
{
"lessonId": "lesson-1",
"name": "Variables in Python (Updated)",
"xp": 25,
"gold": 10,
"content": "<p>Updated: Variables are named memory locations for storing values.</p>",
"programmingLanguage": "Python",
"codeContent": "x = 10\nprint(x)"
}
Update Quiz
1. Multiple Choice Quiz
Field Notes
Content Update question text.
Programming Language Change if code snippet language changes.
Code Content Update code snippet.
Answers Add, remove, or update answers. Ensure only one correct.
Explanation Update answer explanations.
Example Update:
json
Copy code
{
"quizId": "quiz-123",
"quizType": "multiple-choice",
"content": "What is the output of print(3 * 2)?",
"programmingLanguage": "Python",
"codeContent": "print(3 * 2)",
"answers": [
{"text": "5", "isCorrect": false, "explanation": "3 * 2 is not 5."},
{"text": "6", "isCorrect": true, "explanation": "Correct! 3 times 2 = 6."}
]
}
2. Code Blank Fill
Field Notes
Content Update instructions to learner.
Answer Modify correct solutions (multiple blanks allowed).
Programming Language Update language if needed.
Code Content Update with {blank} placeholders.
Compile Toggle compile testing on/off.
Compile Code Update runnable code.
Output Update expected program output.
Example Update:
json
Copy code
{
"quizId": "quiz-456",
"quizType": "code-blank-fill",
"content": "Fill in the missing function keyword.",
"programmingLanguage": "Python",
"codeContent": "{blank} say_hi():\n print('Hi')",
"answers": [
{"blank": "def"}
],
"compile": true,
"compileCode": "def say_hi():\n print('Hi')",
"output": "Hi"
}
Best Practices
Update lesson name/XP when scope changes.
Always refresh answer explanations for quizzes if content changes.
Keep XP rewards balanced after edits.
Use draft mode (inactive) if making major updates before republishing.
Example Workflow
Lesson originally:
Name: Variables in Python
XP: 20
Quiz: What is 2 + 3?
After update:
Name: Variables and Data Types
XP: 25
Quiz: What is 3 × 2?
✅ With Update Lesson, admins can refine and improve course content continuously without starting over.