education/classroom

View on GitHub
docs/connect-to-lms.md

Summary

Maintainability
Test Coverage
## Integrating with a learning management system (LMS)

GitHub Classroom integrates with learning management systems (LMS) such as Brightspace, Canvas, Moodle, and others. GitHub Classroom supports:

- [Roster provisioning](/help/import-roster-from-lms)
- Assignment creation (Planned)
- Submission syncing (Planned)

GitHub Classroom works with learning management systems that use the Learning Tools Interoperability (LTI) standard. Using LTI keeps your information safe and secure. LTI is an industry-standard protocol and GitHub Classroom's use of LTI is certified by the Instructional Management System Global Learning Consortium.

For the GitHub Classroom and LMS integration to work, we require that your LMS supports:

- LTI version 1.0 and/or 1.1
- LTI Names and Roles Provisioning 1.X

**Note**: Blackboard and Brightspace course rosters aren't compatible with GitHub Classroom yet. We are working to support Blackboard and Brightspace in the near future!
{: class="flash"}

### Setup guide

This guide will walk you through linking GitHub Classroom and your LMS.

#### Part 1: Generate your configuration credentials

To connect your LMS to GitHub Classroom, you need credentials from GitHub Classroom. The steps for this are the same for all learning management systems:

[Generating your configuration credentials on GitHub Classroom](/help/generate-lms-credentials)

#### Part 2: Connect GitHub Classroom to your LMS

From within your LMS, connect to GitHub Classroom. Follow the guide for your LMS:

- [Configuring Canvas for GitHub Classroom](/help/setup-canvas)
- [Configuring Moodle for GitHub Classroom](/help/setup-moodle)
- [Configuring another learning management system for GitHub Classroom](/help/setup-generic-lms)