Building: Create the course
GitHub Learning Lab is no longer accepting new public courses from outside of GitHub.
Learning Lab courses are created and maintained in GitHub repositories. Learning Lab registers these repositories as courses and manages the course delivery.
The quickest (and easiest) way to create a course or Learning Path is through the course creation page. Select an owner and enter the form information. After you click Create course, Learning Lab will create a draft course (or path) on Learning Lab and the following repositories on GitHub:
||Learning Lab will create a course repository and template repository on the selected GitHub account. The course repository will include some template text to get you started.
||Learning Lab will create a path repository on the selected GitHub account.
- Learning Lab must be installed on the account you select
- The name of each course and learning path must be unique to your account
You're then ready to get started. Need advice on where to go from here? We'll cover that below.
Creating a Learning Path?
The information below is specific to courses. See Learning Paths for instructions on creating a Learning Path.
Manual repository setup
The course creation page is the quickest and simplest way to create a course's repositories. However, if you'd like to create these manually, you can follow the steps below. Read more about a course's required repositories in Course and template repositories, or jump right in with the course boilerplate.
1. Set up the course repository (manual option)
Let's create the required elements for a course:
- Create a repository that will house your course logic and metadata.
- In course repository, create a file titled
- In the course repository, create a file titled
course-details.yml and fill it with a short description of your course.
- In your course repository, create a folder titled
|Stores your courses metadata and logic, written in YAML.
|The full description of your course. This is what learners will use to decide whether or not they should take your course.
|Markdown files powering the bot's responses.
2. Designate the template repository (manual option)
- The template repository must be owned by the same organization or user as the course repository.
- The template repository should contain the starter code for your learners.
- In the course repository's
config.yml file, specify the template repository's title by editing the
repo: key inside of
template: (see an example).
3. Create the course on Learning Lab (manual option)
Until this step, you'll have two repositories that Learning Lab won't know about. Now, we'll tell Learning Lab to read these repositories and create a course from them. Missing elements from the course repository might result in errors during this step, so we recommend adding the required elements to the
config.yml before creating the course. The minimum required elements are those contained in the boilerplate.
- If you haven't already done so, install Learning Lab on the account that owns the course and template repositories.
- Navigate to
- Enter the title of your course repository.
- Click Create course.
Once the course is created, you can continue to edit it manually.