{ "$schema": "../../schemas/code-crispies-module-schema.json", "id": "welcome", "title": "Willkommen", "description": "Lerne, wie du Code Crispies nutzt und starte mit interaktiven Webentwicklungs-Lektionen", "mode": "html", "difficulty": "beginner", "lessons": [ { "id": "what-is-code-crispies", "title": "Was ist Code Crispies?", "description": "Code Crispies ist eine kostenlose Open-Source-Plattform zum Erlernen von Webentwicklung durch praktische Übungen.

Du lernst:
- HTML - Semantisches Markup und native Elemente
- CSS - Styling und Layout-Techniken
- Tailwind - Utility-First CSS Framework

Kein Konto erforderlich - einfach loslegen!", "task": "Probiere es aus! Tippe <h1>Hallo Welt</h1> in den Editor und beobachte die Vorschau.", "previewHTML": "", "previewBaseCSS": "body { font-family: system-ui, sans-serif; padding: 20px; text-align: center; } h1 { color: #6366f1; }", "sandboxCSS": "", "initialCode": "", "solution": "

Hallo Welt

", "previewContainer": "preview-area", "validations": [ { "type": "element_exists", "value": "h1", "message": "Füge ein <h1> Überschrift-Element hinzu" }, { "type": "contains", "value": "Hallo", "message": "Füge den Text 'Hallo' in deine Überschrift ein" } ] }, { "id": "how-lessons-work", "title": "Wie Lektionen funktionieren", "description": "Jede Lektion hat:

1. Anweisungen - Lies die Aufgabe links
2. Editor - Schreibe deinen Code unter den Anweisungen
3. Vorschau - Sieh Ergebnisse sofort rechts
4. Hinweise - Bekomme Feedback beim Ausführen

Wenn alle Validierungen bestanden sind, siehst du eine Erfolgsmeldung!", "task": "Erstelle einen Absatz mit dem Text 'Ich lerne!' mit <p> Tags.", "previewHTML": "", "previewBaseCSS": "body { font-family: system-ui, sans-serif; padding: 20px; } p { background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); color: white; padding: 20px; border-radius: 8px; text-align: center; font-size: 1.2em; }", "sandboxCSS": "", "initialCode": "", "solution": "

Ich lerne!

", "previewContainer": "preview-area", "validations": [ { "type": "element_exists", "value": "p", "message": "Füge ein <p> Absatz-Element hinzu" }, { "type": "contains", "value": "lerne", "message": "Füge das Wort 'lerne' in deinen Absatz ein" } ] }, { "id": "navigation-tips", "title": "Navigations-Tipps", "description": "Nutze diese Steuerungen zur Navigation:

Menü-Button (oben links) - Alle Lektionsmodule durchsuchen
Zurück / Weiter Buttons - Zwischen Lektionen wechseln
Lösung zeigen - Das Zielergebnis anzeigen
Zurücksetzen - Lektion neu starten

Tastenkürzel:
Strg+Enter - Code ausführen
Strg+Z - Rückgängig
Strg+Umschalt+Z - Wiederholen", "task": "Erstelle ein Button-Element mit dem Text 'Klick mich!' mit <button> Tags.", "previewHTML": "", "previewBaseCSS": "body { font-family: system-ui, sans-serif; padding: 20px; display: flex; justify-content: center; align-items: center; min-height: 80px; } button { background: #6366f1; color: white; border: none; padding: 12px 24px; border-radius: 6px; font-size: 1em; cursor: pointer; transition: transform 0.2s; } button:hover { transform: scale(1.05); }", "sandboxCSS": "", "initialCode": "", "solution": "", "previewContainer": "preview-area", "validations": [ { "type": "element_exists", "value": "button", "message": "Füge ein <button> Element hinzu" }, { "type": "contains", "value": "Klick", "message": "Füge den Text 'Klick mich!' in den Button ein" } ] }, { "id": "ready-to-learn", "title": "Bereit zum Lernen!", "description": "Du bist startklar! Hier ist, was du als nächstes erkunden kannst:

HTML Module - Lerne semantische Elemente, Formulare, Tabellen
CSS Module - Meistere Selektoren, Box-Model, Flexbox
Fortgeschrittene Themen - Animationen, Responsives Design

Öffne das Menü, um alle verfügbaren Module zu durchsuchen. Dein Fortschritt wird automatisch gespeichert!", "task": "Erstelle eine einfache Karte mit Überschrift und Absatz:
1. Füge <h2> mit 'Fertig!' hinzu
2. Füge <p> mit 'Los geht's!' hinzu", "previewHTML": "", "previewBaseCSS": "body { font-family: system-ui, sans-serif; padding: 20px; } h2, p { background: white; margin: 0; } h2 { color: #6366f1; padding: 20px 20px 10px; border-radius: 8px 8px 0 0; border: 2px solid #e5e7eb; border-bottom: none; } p { padding: 10px 20px 20px; border-radius: 0 0 8px 8px; border: 2px solid #e5e7eb; border-top: none; color: #4b5563; }", "sandboxCSS": "", "initialCode": "", "solution": "

Fertig!

\n

Los geht's!

", "previewContainer": "preview-area", "validations": [ { "type": "element_exists", "value": "h2", "message": "Füge eine <h2> Überschrift hinzu" }, { "type": "element_exists", "value": "p", "message": "Füge einen <p> Absatz hinzu" }, { "type": "contains", "value": "Fertig", "message": "Füge 'Fertig!' in deine Überschrift ein" } ] } ] }