GitHub Classroom is a teaching tool that lets teachers and school administrators create and manage digital classrooms and assignments. You can create assignments for individual students or groups of students, set due dates, and track assignments on your teacher dashboard. Additionally, GitHub Classroom has many features that simplify tasks like providing feedback, grading assignments, and integrating your existing teaching tools.
GitHub Classroom offers a variety of features to simplify both teaching and learning.
With GitHub Classroom, you can create assignments that use template repositories with boilerplate code, documentation, and other resources that you think will be useful to your students. Assignments with template repositories create assignment repositories with starter code for your students. For more information, see "Create an assignment from a template repository."
Through GitHub Classroom, you can configure tests to automatically grade the work of each student every time that student pushes to their assignment repository. To learn more about autograding with GitHub Classroom, see "Use autograding."
Optionally, you can connect a learning management system (LMS) to GitHub Classroom to import a student identifier roster for your classroom. For more information, see "Connect a learning management system course to a classroom."
Optionally, you can enable feedback pull requests on assignments. If you enable this feature for an assignment, GitHub Classroom creates a special pull request titled Feedback in the assignment repository for each student or group. For more information, see "Leave feedback with pull requests."
You can integrate a classroom with an IDE. Students can make changes to their assignment repositories through the IDE, or by checking out and running code locally with the appropriate software. For more information, see "Integrate GitHub Classroom with an IDE."