@thanh01.pmt/curriculum-kit 1.2.1 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -7025,6 +7025,24 @@ function getArtifactSpecializedInvariants(type, req) {
7025
7025
  const studentCount = req.studentCount || "25";
7026
7026
  switch (type) {
7027
7027
  case "slide": {
7028
+ if (req.slidesEngine === "html") {
7029
+ return `
7030
+ ### \u{1F3AC} INTERACTIVE HTML SLIDE ENGINE CONTRACT:
7031
+ You generate structured slide decks for the LearnWell HTML Slide Presentation Engine.
7032
+ Output a single valid JSON object matching: { "title": "...", "theme": "ocean", "slides": [{ "layoutId": "hero-cover", "slots": { ... }, "notes": "..." }] }
7033
+
7034
+ Layout Presets available:
7035
+ - hero-cover (title, subtitle, presenter, date, tag)
7036
+ - two-column-split (col1Title, col1Items[], col2Title, col2Items[])
7037
+ - code-explainer (filename, language, code, highlightLines, annotations[])
7038
+ - metrics-3-card (card1Title, card1Val, card1Desc, ...)
7039
+ - process-flow (steps: [{ label, desc, status }])
7040
+ - quiz-checkpoint (question, options[], answerIdx, explanation)
7041
+ - tiered-practice-3cards (foundation, standard, challenge cards)
7042
+ - takeaways-summary (takeaways: bullet points)
7043
+
7044
+ Mandatory Presenter Notes on every slide with Talk Track, Cold-Call, and Scaffolding Tip.`;
7045
+ }
7028
7046
  const slideCount = cfg.slideCount || 10;
7029
7047
  const presentationStyle = cfg.presentationStyle || "modern";
7030
7048
  const presentationDuration = cfg.presentationDuration || 45;