{% extends "base.html" %} {% load richtext %} {% block title %}{{ course.title|exam_marks }} - Free Lessons & Practice Questions{% endblock %} {% block meta_description %}{{ course.description|exam_marks|striptags|truncatewords:30 }}{% endblock %} {% block og_title %}{{ course.title|exam_marks }}{% endblock %} {% block og_description %}{{ course.description|exam_marks|striptags|truncatewords:30 }}{% endblock %} {% block extra_head %} {% endblock %} {% block content %} {{ course.get_program_display|exam_marks }}

{{ course.title|exam_marks }}

{% if parent_course %}

📚 Part of the {{ parent_course.title|exam_marks }} series — this course expands one of its topics in depth.

{% endif %}

{{ course.description|exam_marks }}

{% if deep_dives %}

Go deeper: in-depth companion courses

Work through the overview below, then dive into any of these {{ deep_dives|length }} focused course{{ deep_dives|length|pluralize }}. Each one expands a single topic with more explanation, labeled diagrams, and extra practice questions.

    {% for dd in deep_dives %}
  1. {{ dd.title|exam_marks }} {{ dd.num_lessons }} lesson{{ dd.num_lessons|pluralize }} · {{ dd.num_questions }} practice question{{ dd.num_questions|pluralize }}
  2. {% endfor %}
{% endif %}

Lessons

{% for lesson in course.lessons.all %}

{{ lesson.title|exam_marks }}

{% if lesson.embed_url %}
{% endif %}
{{ lesson.content|richtext }}
{% empty %}

No lessons yet.

{% endfor %}

Practice Questions

{% with qcount=course.mcq_count wcount=course.written_count %} {% if qcount %}

📝 Interactive Practice (Recommended)

Practice one question at a time with instant feedback. See the correct answer and detailed explanation after each response.

{% endif %} {% if wcount %}

Practice writing: answer {{ wcount }} open-ended prompt{{ wcount|pluralize }} in your own words, then grade yourself against a model rubric. No sign-up-only AI — you self-assess.

{% endif %} {% if not qcount and not wcount %}

No practice questions yet.

{% endif %} {% endwith %} {% endblock %}