Kursdateien erstellen

Inhalte erstellen

Kursdateien erstellen

Aus dem Kursumriss werden jetzt Dateien: eine Kursübersicht und je eine Datei pro Lektion. Diese Lektion zeigt die Hugo-Befehle dafür und erklärt das Frontmatter.

Die Kursübersichtsdatei erstellen

  1. in das Projektverzeichnis wechseln
  2. den Kurs mit dem Hugo-Befehl anlegen:
hugo new courses/<kebab-style-course-name>/_index.md
  1. die Datei _index.md öffnen und das Frontmatter ausfüllen:
---
title: "Ihr Kurs Titel"
description: "Eine kurze Beschreibung Ihres Kurses"
summary: "Eine Zusammenfassung der Kursinhalte"
type: "Kurse"
layout: "kurs"
date: YYYY-MM-DD
# lastUpdated: "Juli 2026"             # Optionaler Anzeige-Override
tags: ["tag1", "tag2", "tag3"]
levels: "anfänger/fortgeschrittene/expert"
video:
  youtube: YOUR_VIDEO_ID              # YouTube Video-ID (empfohlen)
  # vimeo: 123456789                  # oder Vimeo Video-ID
  # tibav: 42061                      # oder TIB AV-Portal ID
image: kurs-thumbnail.png             # Bild aus dem _media/-Ordner
# duration: 90                        # Optionaler Kurs-Override in Minuten
lessonCount: X
firstLessonURL: "/de/courses/your-course-name/lesson1/"
featured: true/false
certificate: true/false
objectives:
  - "Ziel 1"
  - "Ziel 2"
prerequisites:
  - "Voraussetzung 1"
  - "Voraussetzung 2"
programmingLanguages:
  - "Sprache 1"
  - "Sprache 2"
authors:
  - name: "Ihr Name"
    role: "Ihre Rolle"
    avatar: "/images/placeholders/avatar.svg"
---

# Kursinhalt kommt hier hin

Ohne duration im Kursindex summiert die Kursseite automatisch alle Lektionsdauern. Eine numerische Minutenzahl dort überschreibt die berechnete Gesamtdauer. Ebenso zeigt die Kursseite ohne lastUpdated automatisch die jüngste Git-Änderung des Kursindex oder einer Lektion an.

Lektionsdateien erstellen

  1. für jede Lektion eine neue Datei anlegen:
hugo new courses/<kebab-style-course-name>/<prefix>-<kebab-style-lesson-name>.md
  1. jede Lektionsdatei öffnen und das Frontmatter ausfüllen:
---
title: "Lektion Titel"
description: "Kurze Beschreibung der Lektion"
type: "Kurse"
course: "ihr-kurs-name"
layout: "lektion"
lessonNumber: X
courseSection: "Kurs Abschnitt Name"
duration: X                           # Optional: geschätzte Minuten
image: erste-schritte/lektion-thumbnail.png  # Bild aus _media/-Unterordner
video:
  youtube: YOUR_VIDEO_ID              # YouTube Video-ID (empfohlen)
  # vimeo: 123456789                  # oder Vimeo Video-ID
---

# Lektionsinhalt kommt hier hin

duration: 5 ist die Kurzform für fünf Minuten. Für genauere Angaben lassen sich die Komponenten einzeln angeben:

duration:
  hours: 1
  minutes: 2
  seconds: 30
  factor: 1.5                       # Optionaler positiver Multiplikator

Alle Komponenten und factor sind optional; ohne Faktor gilt 1. Mit ausschließlich factor: 2 wird die automatisch geschätzte Dauer verdoppelt. Ohne explizite Lektionsdauer schätzt Hugo die Zeit aus Fließtext, Codeblöcken und Bildern. Die Kursseite addiert die exakten Werte und rundet erst die Gesamtdauer auf volle Minuten auf.

Dateien organisieren

Die empfohlene Struktur sieht so aus:

content/
└── de/
    └── courses/
        └── ihr-kurs-name/
            ├── _index.md
            ├── _media/
            │   ├── index.md
            │   ├── kurs-thumbnail.png
            │   └── erste-schritte/
            │       └── lektion-thumbnail.png
            ├── 10-erste-schritte/
            │   ├── _index.md
            │   ├── 10-einfuehrung.md
            │   └── 20-erste-schritte.md
            ├── 20-fortgeschrittene-themen/
            │   ├── _index.md
            │   └── 10-fortgeschrittenes-thema.md
            └── ...

Übung: Kursdateien erstellen

  1. die Kursübersichtsdatei für den geplanten Kurs anlegen
  2. mindestens drei Lektionsdateien nach der Namenskonvention anlegen
  3. das Frontmatter jeder Datei ausfüllen

Die nächste Lektion behandelt das Schreiben der eigentlichen Kursinhalte in Markdown.

Optionales Feedback