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.

Building: Content for the catalog

GitHub Learning Lab is no longer accepting new public courses from outside of GitHub.

The course-details.md and config.yml files in your course reposiory are used to list your course in the Learning Lab catalog. Think of course-details.md as the marketing page for your course! In this section, we'll share some tips on making these pages great:

GitHub Learning Lab's mascot A course on GitHub Learning Lab can guide you through this step.

Introduction to the config.yml file

Adding or editing catalog content

In the config.yml

The fields in the config.yml file are used throughout Learning Lab - in course cards and on the course page.

Field Required Description
title The title of your course
description A slightly longer description of your course

Here's an example of a course's config.yml with these fields.

If you use the course creator in Learning Lab, these fields are automatically created in the config.yml and just need to be customized for your course.

In the course-details.md

The content in the course-details.md file is used to describe your course on the course landing page.

You can use the following template to build a strong course-details.md file:

# Course description

Start with a short paragraph describing what you'll teach. Be sure to include information on how the course is relevant to the learner. This paragraph should answer the question, "Why should I take this course?"

# What you'll learn

We'll answer common questions like:
- What questions would a user have before taking your course?
- List them all here as bullets

When you're done, you'll be able to:
- Describe the things a learner will be able to do after taking your course
- Break it down into actionable tasks

# What you'll build

Add a GIF of the completed project

See it in action here <-- link to deployed demo of the working project

# Prerequisites

What should the learner do or know before taking this course?

# Project used

This course makes use of the following open source projects:

- Link to projects here
- And here

# Audience

Who should take this course?

Adding a custom course image

Learning Lab will automatically include your course repository's social preview image on the course landing page. You can add this image in the repository settings. For best results, your image should be 1280x640px.

Connecting with users

By default, Learning Lab will instruct learners to look for help in the GitHub Community Forum. You can provide an alternate link by adding the following fields to your config.yml file, customized for your course:


helpUrl: Post on the GitHub Community Forum
helpText: https://github.community/c/education/github-learning-lab/34/l/latest

Views of the catalog fields

Learning Lab displays the catalog fields in different ways, depending on the state of the course and the context of the information.

View Screenshot
Course catalog cards
Course landing page, unregistered
Course landing page, registered