GitHub Classroom is a tool teachers can use to handle assignment distribution and autograding when they teach CS50.
CS50 use https://github.com/classroom50 to store template repositories for teachers to use with GitHub Classroom. You’re welcome to make your own, too! This guide will walk you through how to do it.
Every repository starts with a blank canvas! Go to your GitHub organization and create a new repository inside that organization.
Classroom50’s Homepage
As of July 18, 2022, CS50 uses the following scheme to name template repositories:
year-term-problem[-comfort]
where [-comfort]
indicates an optional inclusion of a problem’s comfort level, if the more- and less-comfortable have the same name.
If a problem was previously done in C but is now being done in Python, we prefix the name with sentimental-
Examples
2022-fall-cash
2022-fall-filter-less
2022-fall-sentimental-cash
Configuring the template repository is straightforward. After inputting a name, change the visibility to Public. Additional initialization steps such as a README.md
, a .gitignore
, etc. should be left out.
Configuring a template repository
Once the repository has been created, you’re not quite yet done! Be sure to go to Settings, then check Template repository.