language: typescript and react
Students can access the published site publicly through their browser
Students can see a table that shows a single semester of courses
Students can see a table that shows multiples semesters of courses
Students can edit the name and description of a course in the plan
Students can clear out all the existing courses in a semester
Students can clear out all the existing semesters in a plan
Students can add or remove a semester to their plan
Students can add or remove a course in a semester
Students can save their current degree plan and load existing plans
Students are introduced to the application with a friendly message that clearly explains their goal and how they should get started
Students can establish that a course fulfills a degree requirement
"CISC220 is a required course for all degrees"
"The degree must have at least 3 technical electives
Students can establish that a course meets another course's prerequisite
"CISC108 serves as a prereq for CISC210"
Students can drag courses from one semester to another semester, or to a free-standing "pool of courses" to use later
Students can override the course's info
"CS101 (the experimental course number) could be set to 'Introduction to Data Science' and fulfill a Technical Elective"
Students can visualize the unfilled requirements of their degree plan
Students can export and import their plans as CSV files, suitable for sharing with advisers