Skip to content

Display a Depth Requirement section at the end of the checklist. #25

Description

@SurenMar

The user should be able to track completion of their depth requirement, similar to the original CS checklist:
https://cs.uwaterloo.ca/sites/default/files/uploads/documents/2025-2026-bcs.pdf

At the end of the checklist, there should be a section titled Depth Requirement, consistent with other sections such as CS Units and Non-Math Elective Units. This section should behave as follows:

  • The section should include a toggle that allows the user to indicate whether they are satisfying their depth requirement via:
    • a chain of three courses, or
    • 1.5 units of courses within the same program, with at least one course at the 3XX level or higher.
  • The user should be able to add or remove courses using Add Course and Remove buttons. When Add Course is clicked, a text input appears allowing the user to enter a course code.
  • Upon pressing Enter, the course is sent to the backend and added to the UserCourse model. If no errors are returned, the course is then added to the UserDepthList model.
  • At this stage, there is no automated validation of depth requirement correctness. This feature exists solely to allow users to manually add and remove courses from their depth list.

The implementer has flexibility in how these details are implemented, provided the behaviour remains consistent with the overall application design.

The necessary models and API endpoints already exist. If a backend error is encountered during implementation, please create a new issue and link it accordingly.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions