On September 1, 2022, GitHub Learning Lab will shut down.
Read more on the GitHub blog and check out GitHub Skills for courses backed by GitHub Actions.

Working with Learning Lab repositories

Learning Lab allows you to create and manage your courses in GitHub repositories. The repositories you'll need to create (or let Learning Lab create on your behalf will depend on the type of course you are creating:

A GitHub Learning Lab course requires:

  1. A course repository
  2. A template repository

A GitHub Learning Path requires:

  1. A path repository

The course repository contains:

  • content for the course catalog
  • all steps in the course
  • expected event from the learner to trigger each step
  • actions taken by Learning Lab once a step is triggered
  • content for the bot's responses

If you'd like, you can use this Learning Lab boilerplate as a template repository when making a course manually.

The template repository contains:

  • the project codebase

All Git data will be copied for the learner from the template repository. Learning Lab cannot be directed to only copy specific branches or files. Learning Lab also won't copy data that isn't stored by Git (such as issues, pull requests, and branch protections or other settings on GitHub).

The path repository contains:

  • content for the course catalog
  • links to each course and resource you'd like to include in the path