CodeYourFuture / syllabus

Old Syllabus Website for CodeYourFuture
https://syllabus.codeyourfuture.io
154 stars 124 forks source link

Google Classroom Integration #318

Open ChrisOwen101 opened 3 years ago

ChrisOwen101 commented 3 years ago

Which module(s) and week(s) does this change affect? Module(s): All Week(s): All

What is the work that needs to be done?

Google Classroom has an API that would allow us to automate the process of adding coursework to different classes

https://developers.google.com/classroom

This would require a slightly involved process of

  1. Add a "Add To Google Classroom" button to every coursework page
  2. Parse the markdown on the page to get each individual coursework
  3. Open another page or a pop up to...
  4. Log into the Google Classroom with a Teacher Account (https://developers.google.com/classroom/guides/auth)
  5. Then selecting the class that they want to add the coursework to (https://developers.google.com/classroom/guides/manage-courses#retrieve_course_details)
  6. Then adding the coursework for that week (https://developers.google.com/classroom/guides/manage-classwork)

All of this could be done through the syllabus since we can write React component to do each of these steps.

The coursework details can be parsed from the Markdown directly by using the ## title headings as dividers.

Why is this work important to do?

Teachers often upload coursework incorrectly which leads to some confusion.

This would also standardise the way that coursework gets added to Google Classroom which is nice.

Additional context

I expect this work could take a knowledgable developer 15-20 hours to complete. A junior I'd expect 30+ hours.

SallyMcGrath commented 1 year ago

NOTE

This ticket will probably be obsoleted by https://docs.google.com/document/d/1zFx-RscN4Iy9hhLKPm_wZUxsTqPq7CNR4ZZp566b2uI/edit?usp=sharing

If by some chance someone is planning to take this ticket, please discuss first.