Understanding Course Structure
Understanding Course Structure
In this lesson, we’ll explore the structure of a git.nrw course and its various components. Understanding this structure is crucial for creating well-organized and effective courses.
Course Components
A typical git.nrw course consists of the following components:
- Course Overview Page
- Lessons
- Course Sections
- Media and Resources
Let’s dive into each of these components in detail.
1. Course Overview Page
The course overview page (_index.md) serves as the main entry point for your course. It contains:
- Course metadata (title, description, tags, etc.)
- Course objectives
- Prerequisites
- A brief introduction to the course
2. Lessons
Lessons are individual markdown files that contain the actual course content. Each lesson should:
- Have a clear title and description
- Be part of a course section
- Include relevant content, examples, and exercises
Recommended lesson anatomy
Not every lesson needs the exact same template. A better rule is to use a small set of building blocks intentionally:
- a short opening lead that tells learners what this lesson is about
## Goalonly when the lesson has a concrete operational task## Dofor the main explanation or task sequence## Takeawayfor one compact rule or mental model## Checkas the final self-check section of the lesson
This keeps lessons consistent without making them feel mechanical.
When to use Goal
Use ## Goal when learners are about to do something concrete, for example:
- install a tool
- configure access
- create or edit files
- validate or run a workflow
You do not need ## Goal in every lesson. For short conceptual lessons, a concise opening paragraph is often enough.
Where Check belongs
If you use ## Check, place it at the end of the lesson as the final content block.
## Takeaway should come before ## Check, not after it.
That order works well:
- explain or demonstrate the topic
- condense it into a takeaway
- let learners check whether they can explain or apply it
Capstone or exercise lessons
For larger exercise lessons, it helps to separate operational verification from reflective self-check:
- use a block such as
## Verify your resultfor concrete completion criteria - use
## Checkfor reflection questions or short self-test prompts
That avoids overloading one section with two different purposes.
3. Course Sections
Course sections help organize lessons into logical groups. They can represent:
- Chapters in your course
- Skill levels (e.g., beginner, intermediate, advanced)
- Thematic units
4. Media and Resources
To enhance your course, you can include:
- Images
- Videos
- Downloadable resources (e.g., PDFs, code samples)
File Structure
A typical course file structure looks like this:
content/
└── en/
└── courses/
└── your-course-name/
├── _index.md
├── 010-010-introduction.md
├── 010-020-getting-started.md
├── 020-010-advanced-topic.md
└── ...
For multi-section courses, a nested structure is often easier to maintain:
content/
└── en/
└── courses/
└── your-course-name/
├── _index.md
├── 10-getting-started/
│ ├── _index.md
│ ├── 10-first-step.md
│ └── 20-second-step.md
├── 20-core-workflow/
│ ├── _index.md
│ └── 10-main-task.md
└── 30-final-exercise/
├── _index.md
└── 10-capstone.md
This structure is especially useful when you want course sections to appear clearly in the sidebar and when several lessons belong to one coherent phase.
Next Steps
Now that you understand the structure of a git.nrw course, we’ll move on to planning your course content in the next lesson. This will help you organize your ideas and create a roadmap for your course development.