CoolFace
Apppublic

smart-models/Placebo_AI

sourceHugging Faceupdated 3mo agoView on Hugging Face
0likes
generate_deck.js651 linesDownload Raw Back to scripts
1const pptxgen = require("pptxgenjs");2 3// ── THEME ──────────────────────────────────────────────────────────────────4const C = {5  dark:    "0A1628",   // deep navy6  mid:     "0E3460",   // mid navy7  accent:  "1B9AAA",   // teal accent8  accent2: "0D9488",   // teal-green9  light:   "E8F4F8",   // pale blue-white10  white:   "FFFFFF",11  muted:   "94A3B8",12  text:    "1E293B",13  green:   "059669",14  gold:    "D97706",15};16 17function makeShadow(opacity = 0.14) {18  return { type: "outer", color: "000000", blur: 8, offset: 3, angle: 45, opacity };19}20 21function statCard(slide, x, y, w, h, value, label, color) {22  slide.addShape("rect", {23    x, y, w, h,24    fill: { color: C.dark },25    shadow: makeShadow(0.2),26    rectRadius: 0.08,27  });28  slide.addText(value, {29    x: x + 0.12, y: y + 0.12, w: w - 0.24, h: h * 0.55,30    fontSize: 28, bold: true, color: color || C.accent,31    align: "center", valign: "middle", margin: 0,32  });33  slide.addText(label, {34    x: x + 0.1, y: y + h * 0.62, w: w - 0.2, h: h * 0.32,35    fontSize: 9.5, color: C.muted,36    align: "center", valign: "top", margin: 0, wrap: true,37  });38}39 40function sectionCard(slide, x, y, w, h, title, body, iconChar) {41  slide.addShape("rect", {42    x, y, w, h,43    fill: { color: C.white },44    shadow: makeShadow(0.12),45    rectRadius: 0.08,46  });47  // circle for icon48  slide.addShape("ellipse", {49    x: x + 0.18, y: y + 0.15, w: 0.44, h: 0.44,50    fill: { color: C.accent },51  });52  slide.addText(iconChar, {53    x: x + 0.18, y: y + 0.15, w: 0.44, h: 0.44,54    fontSize: 18, color: C.white, align: "center", valign: "middle", margin: 0, bold: true,55  });56  slide.addText(title, {57    x: x + 0.72, y: y + 0.18, w: w - 0.82, h: 0.38,58    fontSize: 12, bold: true, color: C.dark, margin: 0,59  });60  slide.addText(body, {61    x: x + 0.18, y: y + 0.7, w: w - 0.3, h: h - 0.82,62    fontSize: 10.5, color: "475569", margin: 0, wrap: true,63  });64}65 66async function buildDeck() {67  const pres = new pptxgen();68  pres.layout = "LAYOUT_WIDE"; // 13.3" × 7.5"69  pres.title = "Placebo Academic Repository – Pitch Deck";70 71  // SLIDE 1 – COVER72  {73    const s = pres.addSlide();74    s.background = { color: C.dark };75 76    s.addShape("ellipse", { x: 9.8, y: -1.5, w: 5, h: 5, fill: { color: C.accent, transparency: 82 } });77    s.addShape("ellipse", { x: 10.6, y: -0.4, w: 2.8, h: 2.8, fill: { color: C.accent, transparency: 70 } });78 79    s.addShape("ellipse", { x: -0.8, y: 5.5, w: 3.5, h: 3.5, fill: { color: C.accent2, transparency: 85 } });80 81    s.addShape("rect", { x: 0.5, y: 0.55, w: 0.06, h: 1.3, fill: { color: C.accent } });82    s.addText("PLACEBO", {83      x: 0.7, y: 0.55, w: 5, h: 0.55,84      fontSize: 28, bold: true, color: C.white, margin: 0, charSpacing: 6,85    });86    s.addText("EDUCATION SOLUTIONS", {87      x: 0.7, y: 1.05, w: 5, h: 0.35,88      fontSize: 11, color: C.accent, margin: 0, charSpacing: 4,89    });90 91    s.addText("The Most Comprehensive\nAcademic Knowledge Repository", {92      x: 0.5, y: 2.05, w: 8.5, h: 1.6,93      fontSize: 38, bold: true, color: C.white, margin: 0,94      align: "left",95    });96    s.addText("for Medical & Pharmacy Education", {97      x: 0.5, y: 3.6, w: 8.5, h: 0.65,98      fontSize: 26, color: C.accent, margin: 0,99    });100 101    s.addShape("rect", { x: 0.5, y: 4.45, w: 4, h: 0.04, fill: { color: C.accent, transparency: 30 } });102 103    s.addText("Prepared by Placebo Education Solutions   ·   June 2026", {104      x: 0.5, y: 4.65, w: 8, h: 0.35,105      fontSize: 11, color: C.muted, margin: 0,106    });107    s.addText("Strictly Private & Confidential", {108      x: 0.5, y: 5.05, w: 8, h: 0.3,109      fontSize: 10, color: "475569", margin: 0, italic: true,110    });111 112    s.addText("350+", { x: 9.8, y: 1.6, w: 3.2, h: 0.9, fontSize: 48, bold: true, color: C.accent, align: "center", margin: 0 });113    s.addText("PDFs Ingested", { x: 9.8, y: 2.45, w: 3.2, h: 0.32, fontSize: 12, color: C.muted, align: "center", margin: 0 });114 115    s.addText("250K+", { x: 9.8, y: 3.1, w: 3.2, h: 0.9, fontSize: 48, bold: true, color: C.accent2, align: "center", margin: 0 });116    s.addText("Pages Analyzed", { x: 9.8, y: 3.95, w: 3.2, h: 0.32, fontSize: 12, color: C.muted, align: "center", margin: 0 });117 118    s.addText("1.2M+", { x: 9.8, y: 4.6, w: 3.2, h: 0.9, fontSize: 48, bold: true, color: C.gold, align: "center", margin: 0 });119    s.addText("Academic References", { x: 9.8, y: 5.45, w: 3.2, h: 0.32, fontSize: 12, color: C.muted, align: "center", margin: 0 });120 121    s.addNotes("Welcome slide. Introduce the platform and highlight the scale of the repository.");122  }123 124  // SLIDE 2 – INDUSTRY CHALLENGE125  {126    const s = pres.addSlide();127    s.background = { color: "F8FAFC" };128 129    s.addShape("rect", { x: 0, y: 0, w: 13.3, h: 1.05, fill: { color: C.dark } });130    s.addText("THE INDUSTRY CHALLENGE", {131      x: 0.5, y: 0.15, w: 10, h: 0.7,132      fontSize: 26, bold: true, color: C.white, margin: 0,133    });134    s.addText("PROBLEM STATEMENT", {135      x: 10, y: 0.28, w: 3, h: 0.45,136      fontSize: 11, color: C.accent, align: "right", margin: 0, charSpacing: 2,137    });138 139    s.addText("Medical & Pharmacy students are drowning in data — but starved for accessible knowledge.", {140      x: 0.5, y: 1.25, w: 12.3, h: 0.5,141      fontSize: 15, color: "475569", italic: true, margin: 0,142    });143 144    const pains = [145      { icon: "📚", title: "Fragmented Materials", body: "Study resources scattered across dozens of physical books and unconnected digital formats, with no unified access point." },146      { icon: "🔍", title: "Low Search Efficiency", body: "Hours spent flipping through 1,000-page textbooks to find a single clinical definition or dosage chart." },147      { icon: "⚠️", title: "Unverified Notes", body: "Students increasingly rely on scattered, unvetted notes rather than peer-reviewed standard textbooks." },148      { icon: "💰", title: "High Institutional Cost", body: "Institutions pay significant overheads for fragmented digital library subscriptions with low utilization rates." },149      { icon: "📉", title: "Academic Inconsistency", body: "Different students access different quality resources, creating unequal academic baselines across the cohort." },150      { icon: "⏰", title: "Wasted Faculty Time", body: "Educators spend excessive hours gathering authoritative materials for curriculum planning and lecture preparation." },151    ];152 153    const cols = 3, rows = 2;154    const cw = 3.95, ch = 1.6;155    const xStart = 0.4, yStart = 2.0;156    pains.forEach((p, i) => {157      const col = i % cols, row = Math.floor(i / cols);158      const x = xStart + col * (cw + 0.24);159      const y = yStart + row * (ch + 0.22);160      sectionCard(s, x, y, cw, ch, p.title, p.body, p.icon);161    });162 163    s.addNotes("Describe how medical education suffers from information overload and fragmented access to quality resources.");164  }165 166  // SLIDE 3 – SOLUTION OVERVIEW167  {168    const s = pres.addSlide();169    s.background = { color: C.dark };170 171    s.addShape("ellipse", { x: 9.5, y: -2, w: 7, h: 7, fill: { color: C.accent, transparency: 88 } });172 173    s.addText("OUR SOLUTION", {174      x: 0.55, y: 0.45, w: 6, h: 0.38,175      fontSize: 12, color: C.accent, margin: 0, charSpacing: 4, bold: true,176    });177    s.addText("The Placebo Academic Repository", {178      x: 0.55, y: 0.82, w: 9, h: 1.1,179      fontSize: 36, bold: true, color: C.white, margin: 0,180    });181    s.addText("A singular, institutional-grade knowledge platform that transforms how medical sciences are studied.", {182      x: 0.55, y: 1.95, w: 8.5, h: 0.5,183      fontSize: 14, color: C.muted, margin: 0,184    });185 186    const features = [187      { num: "01", title: "Centralized Knowledge", body: "Every standard textbook, reference manual, and clinical guide in one unified platform." },188      { num: "02", title: "Curriculum-Aligned", body: "Content mapped to University and Medical Council syllabi — semester by semester." },189      { num: "03", title: "Instant Retrieval", body: "Find the exact page, diagram, or clinical definition in seconds, not hours." },190      { num: "04", title: "Gold-Standard Sources", body: "Exclusively peer-reviewed, globally mandated textbooks — zero unverified content." },191    ];192 193    features.forEach((f, i) => {194      const x = 0.4 + (i % 2) * 6.3;195      const y = 2.7 + Math.floor(i / 2) * 2.05;196      s.addShape("rect", {197        x, y, w: 5.9, h: 1.82,198        fill: { color: C.mid },199        shadow: makeShadow(0.25),200        rectRadius: 0.1,201      });202      s.addText(f.num, { x: x + 0.18, y: y + 0.18, w: 0.7, h: 0.55, fontSize: 24, bold: true, color: C.accent, margin: 0 });203      s.addText(f.title, { x: x + 0.95, y: y + 0.2, w: 4.7, h: 0.45, fontSize: 14, bold: true, color: C.white, margin: 0 });204      s.addText(f.body, { x: x + 0.95, y: y + 0.68, w: 4.65, h: 0.9, fontSize: 11, color: C.muted, margin: 0, wrap: true });205    });206 207    s.addNotes("Walk through the four core pillars of the Placebo platform solution.");208  }209 210  // SLIDE 4 – PLATFORM SCALE (BIG NUMBERS)211  {212    const s = pres.addSlide();213    s.background = { color: "F1F5F9" };214 215    s.addShape("rect", { x: 0, y: 0, w: 13.3, h: 1.05, fill: { color: C.dark } });216    s.addText("PLATFORM SCALE", { x: 0.5, y: 0.15, w: 8, h: 0.7, fontSize: 26, bold: true, color: C.white, margin: 0 });217    s.addText("COMBINED REPOSITORY", { x: 8.5, y: 0.28, w: 4.3, h: 0.45, fontSize: 11, color: C.accent, align: "right", margin: 0, charSpacing: 2 });218 219    s.addText("The ultimate healthcare education platform — MBBS + Pharmacy, unified under one roof.", {220      x: 0.5, y: 1.18, w: 12.3, h: 0.42,221      fontSize: 14, color: "475569", italic: true, margin: 0,222    });223 224    const stats = [225      { val: "34",     label: "Total Subjects\nCovered",         color: C.accent  },226      { val: "520",    label: "Total PDFs\nIngested",            color: C.accent2  },227      { val: "346K+",  label: "Total Pages\nAnalyzed",          color: C.gold    },228      { val: "49.3 GB",label: "Total Content\nSize",            color: "A78BFA"  },229      { val: "1.2M+",  label: "Academic\nReferences",           color: C.green   },230      { val: "250K+",  label: "Data Points\nIndexed",           color: "F472B6"  },231    ];232 233    stats.forEach((st, i) => {234      const x = 0.4 + (i % 3) * 4.18;235      const y = 1.88 + Math.floor(i / 3) * 2.35;236      statCard(s, x, y, 3.88, 2.08, st.val, st.label, st.color);237    });238 239    s.addNotes("Emphasize the sheer scale of the content repository and what it means for institutional purchasing.");240  }241 242  // SLIDE 5 – MBBS CURRICULUM COVERAGE243  {244    const s = pres.addSlide();245    s.background = { color: C.dark };246 247    s.addShape("ellipse", { x: -1, y: -1.2, w: 5, h: 5, fill: { color: C.accent, transparency: 90 } });248 249    s.addText("MBBS CURRICULUM COVERAGE", {250      x: 0.5, y: 0.35, w: 9, h: 0.4,251      fontSize: 12, color: C.accent, margin: 0, charSpacing: 4, bold: true,252    });253    s.addText("19 Subjects · 324 PDFs · 211,050 Pages · 31.5 GB", {254      x: 0.5, y: 0.78, w: 10, h: 0.55,255      fontSize: 28, bold: true, color: C.white, margin: 0,256    });257 258    const phases = [259      { phase: "Pre-Clinical", pages: "38,450", color: C.accent },260      { phase: "Para-Clinical", pages: "42,000", color: C.accent2 },261      { phase: "Clinical", pages: "130,600", color: C.gold },262    ];263    phases.forEach((p, i) => {264      const x = 0.4 + i * 4.27;265      s.addShape("rect", {266        x, y: 1.55, w: 3.95, h: 1.1,267        fill: { color: C.mid },268        rectRadius: 0.08,269      });270      s.addText(p.pages, { x: x + 0.12, y: 1.6, w: 3.7, h: 0.55, fontSize: 26, bold: true, color: p.color, align: "center", margin: 0 });271      s.addText(p.phase + " Pages", { x: x + 0.12, y: 2.12, w: 3.7, h: 0.32, fontSize: 10, color: C.muted, align: "center", margin: 0 });272    });273 274    s.addChart(pres.charts.PIE, [{275      name: "Phase Distribution",276      labels: ["Pre-Clinical (18%)", "Para-Clinical (20%)", "Clinical (62%)"],277      values: [18, 20, 62],278    }], {279      x: 0.3, y: 2.85, w: 4.5, h: 4.3,280      chartColors: [C.accent, C.accent2, C.gold],281      chartArea: { fill: { color: C.dark } },282      showLegend: true, legendPos: "b",283      legendFontColor: C.muted, legendFontSize: 9,284      showPercent: true, dataLabelColor: C.white, dataLabelFontSize: 10,285    });286 287    const subjects = [288      ["Subject", "PDFs", "Pages"],289      ["Anatomy", "25", "15,200"],290      ["Physiology", "18", "12,450"],291      ["Biochemistry", "15", "10,800"],292      ["Pathology", "22", "16,500"],293      ["Pharmacology", "20", "14,200"],294      ["General Medicine", "30", "22,000"],295      ["General Surgery", "28", "20,500"],296      ["OB & Gynecology", "20", "15,600"],297      ["Pediatrics", "18", "13,400"],298    ];299    const tData = subjects.map((row, ri) =>300      row.map((cell, ci) => ({301        text: cell,302        options: {303          bold: ri === 0,304          color: ri === 0 ? C.white : (ci === 0 ? "CBD5E1" : C.muted),305          fill: { color: ri === 0 ? C.accent : (ri % 2 === 0 ? "0B2545" : C.mid) },306          fontSize: ri === 0 ? 10 : 9.5,307          align: ci === 0 ? "left" : "center",308        },309      }))310    );311    s.addTable(tData, {312      x: 5.0, y: 2.85, w: 7.9, h: 4.3,313      colW: [3.6, 1.8, 2.5],314      border: { pt: 0.5, color: "1E3A5F" },315      rowH: 0.42,316    });317 318    s.addNotes("Highlight the breadth and depth of the MBBS curriculum, especially the clinical phase dominance.");319  }320 321  // SLIDE 6 – PHARMACY CURRICULUM COVERAGE322  {323    const s = pres.addSlide();324    s.background = { color: "F1F5F9" };325 326    s.addShape("rect", { x: 0, y: 0, w: 13.3, h: 1.05, fill: { color: C.dark } });327    s.addText("PHARMACY CURRICULUM COVERAGE", { x: 0.5, y: 0.15, w: 9.5, h: 0.7, fontSize: 26, bold: true, color: C.white, margin: 0 });328    s.addText("PHARM.D & B.PHARM", { x: 9.8, y: 0.28, w: 3, h: 0.45, fontSize: 11, color: C.accent, align: "right", margin: 0, charSpacing: 2 });329 330    s.addText("15 Subjects · 196 PDFs · 135,500 Pages · 17.8 GB", {331      x: 0.5, y: 1.18, w: 12, h: 0.45,332      fontSize: 18, bold: true, color: C.dark, margin: 0,333    });334 335    s.addChart(pres.charts.BAR, [{336      name: "PDFs",337      labels: ["Pharmacology", "Pharmaceutics", "Medicinal Chem", "Clinical Pharm", "Pharm Analysis", "Pharmacognosy", "Anatomy & Phys", "Microbiology", "Biochemistry", "Biopharmaceu.", "Industrial Ph.", "Hospital Ph.", "Pharm. Jurisp.", "Pharmacovigi."],338      values: [22, 18, 16, 15, 14, 14, 12, 12, 10, 10, 12, 10, 8, 8],339    }], {340      x: 0.4, y: 1.82, w: 7.5, h: 4.4,341      barDir: "bar",342      chartColors: [C.accent],343      chartArea: { fill: { color: C.white }, roundedCorners: true },344      catAxisLabelColor: C.text, catAxisLabelFontSize: 8,345      valAxisLabelColor: "64748B",346      valGridLine: { color: "E2E8F0", size: 0.5 },347      catGridLine: { style: "none" },348      showValue: true, dataLabelFontSize: 8, dataLabelColor: C.text,349      showLegend: false,350      showTitle: true, title: "PDFs per Subject", titleColor: C.dark, titleFontSize: 11,351    });352 353    const pharmStats = [354      { val: "15", label: "Pharmacy\nDisciplines", color: C.accent },355      { val: "196", label: "Total PDFs\nIngested", color: C.accent2 },356      { val: "135K+", label: "Total Pages\nAnalyzed", color: C.gold },357      { val: "450K+", label: "Drug Interactions\n& Profiles Indexed", color: C.green },358    ];359    pharmStats.forEach((st, i) => {360      const x = 8.2;361      const y = 1.8 + i * 1.17;362      statCard(s, x, y, 4.7, 1.0, st.val, st.label, st.color);363    });364 365    s.addNotes("Highlight the pharmacy curriculum depth and the 450,000+ drug interactions indexed.");366  }367 368  // SLIDE 7 – TEXTBOOK COVERAGE369  {370    const s = pres.addSlide();371    s.background = { color: C.dark };372 373    s.addShape("ellipse", { x: 10.5, y: 3.5, w: 4.5, h: 4.5, fill: { color: C.accent, transparency: 90 } });374 375    s.addText("TEXTBOOK COVERAGE", { x: 0.5, y: 0.35, w: 9, h: 0.4, fontSize: 12, color: C.accent, margin: 0, charSpacing: 4, bold: true });376    s.addText("Built on Gold-Standard Academic References", { x: 0.5, y: 0.78, w: 10, h: 0.6, fontSize: 30, bold: true, color: C.white, margin: 0 });377    s.addText("Zero reliance on unverified internet data. Every reference is globally mandated and peer-reviewed.", {378      x: 0.5, y: 1.45, w: 10.5, h: 0.4, fontSize: 13, color: C.muted, margin: 0,379    });380 381    s.addShape("rect", { x: 0.4, y: 2.05, w: 6.1, h: 4.9, fill: { color: C.mid }, rectRadius: 0.1 });382    s.addShape("rect", { x: 0.4, y: 2.05, w: 6.1, h: 0.5, fill: { color: C.accent }, rectRadius: 0.1 });383    s.addText("MBBS CORE REFERENCES", { x: 0.55, y: 2.1, w: 5.8, h: 0.38, fontSize: 12, bold: true, color: C.white, margin: 0 });384 385    const mbbsRefs = [386      ["Anatomy", "Gray's Anatomy, BD Chaurasia, AK Datta"],387      ["Physiology", "Guyton & Hall, Ganong, GK Pal"],388      ["Pathology", "Robbins & Cotran Pathologic Basis of Disease"],389      ["Medicine", "Harrison's Principles of Internal Medicine"],390      ["Surgery", "Bailey & Love's Short Practice of Surgery"],391      ["Community Med", "Park's Textbook of Preventive & Social Medicine"],392      ["Pediatrics", "Nelson Textbook of Pediatrics"],393    ];394    mbbsRefs.forEach(([subj, ref], i) => {395      const y = 2.72 + i * 0.58;396      s.addText(subj + ":", { x: 0.6, y, w: 1.5, h: 0.45, fontSize: 10, bold: true, color: C.accent, margin: 0 });397      s.addText(ref, { x: 2.1, y, w: 4.2, h: 0.45, fontSize: 9.5, color: "CBD5E1", margin: 0, wrap: true });398    });399 400    s.addShape("rect", { x: 6.8, y: 2.05, w: 6.1, h: 4.9, fill: { color: C.mid }, rectRadius: 0.1 });401    s.addShape("rect", { x: 6.8, y: 2.05, w: 6.1, h: 0.5, fill: { color: C.accent2 }, rectRadius: 0.1 });402    s.addText("PHARMACY CORE REFERENCES", { x: 6.95, y: 2.1, w: 5.8, h: 0.38, fontSize: 12, bold: true, color: C.white, margin: 0 });403 404    const pharmRefs = [405      ["General Pharmacy", "Remington: Science & Practice of Pharmacy"],406      ["Pharmacology", "Goodman & Gilman's Pharmacology"],407      ["Pharmacology", "Katzung Basic & Clinical Pharmacology"],408      ["Pharmaceutics", "Lachman's Theory & Practice (Industrial)"],409      ["Physical Pharm", "Martin's Physical Pharmacy & Pharm Sciences"],410      ["Pharmacognosy", "Trease and Evans Pharmacognosy"],411      ["Medicinal Chem", "Foye's Principles of Medicinal Chemistry"],412    ];413    pharmRefs.forEach(([subj, ref], i) => {414      const y = 2.72 + i * 0.58;415      s.addText(subj + ":", { x: 7.0, y, w: 1.6, h: 0.45, fontSize: 10, bold: true, color: C.accent2, margin: 0 });416      s.addText(ref, { x: 8.6, y, w: 4.1, h: 0.45, fontSize: 9.5, color: "CBD5E1", margin: 0, wrap: true });417    });418 419    s.addNotes("Stress the academic credibility of the source material — only globally mandated, peer-reviewed textbooks.");420  }421 422  // SLIDE 8 – IMPACT: STUDENTS, FACULTY & INSTITUTIONS423  {424    const s = pres.addSlide();425    s.background = { color: "F1F5F9" };426 427    s.addShape("rect", { x: 0, y: 0, w: 13.3, h: 1.05, fill: { color: C.dark } });428    s.addText("IMPACT & BENEFITS", { x: 0.5, y: 0.15, w: 8, h: 0.7, fontSize: 26, bold: true, color: C.white, margin: 0 });429    s.addText("WHO BENEFITS", { x: 8.5, y: 0.28, w: 4.3, h: 0.45, fontSize: 11, color: C.accent, align: "right", margin: 0, charSpacing: 2 });430 431    const columns = [432      {433        title: "👨🎓 Students",434        color: C.accent,435        items: [436          "Consolidates hours of library searching into seconds",437          "Multiple textbook perspectives on complex topics simultaneously",438          "Streamlined exam preparation with grouped curriculum concepts",439          "Study time focused on understanding, not finding materials",440          "Better clinical preparedness and higher pass rates",441        ],442      },443      {444        title: "🏫 Faculty",445        color: C.accent2,446        items: [447          "Instant access to authoritative diagrams and texts for lectures",448          "Massive, unified digital library available from the faculty desk",449          "Easier syllabus tracking across multiple standard texts",450          "Ensures all students study from the same high-quality baseline",451          "Reduces lecture-prep overhead significantly",452        ],453      },454      {455        title: "🏛️ Institutions",456        color: C.gold,457        items: [458          "Elevates overall standard of education provided",459          "Equal access to expensive textbooks for all enrolled students",460          "Demonstrates digital learning investment for accreditation",461          "Reduces multiple fragmented digital library subscriptions",462          "Correlates with better student outcomes & exam performance",463        ],464      },465    ];466 467    columns.forEach((col, ci) => {468      const x = 0.4 + ci * 4.27;469      s.addShape("rect", { x, y: 1.22, w: 3.98, h: 0.6, fill: { color: col.color }, rectRadius: 0.08 });470      s.addText(col.title, { x: x + 0.1, y: 1.26, w: 3.78, h: 0.5, fontSize: 14, bold: true, color: C.white, align: "center", margin: 0 });471 472      col.items.forEach((item, ii) => {473        const iy = 1.98 + ii * 1.03;474        s.addShape("rect", {475          x, y: iy, w: 3.98, h: 0.9,476          fill: { color: C.white },477          shadow: makeShadow(0.09),478          rectRadius: 0.07,479        });480        s.addShape("ellipse", { x: x + 0.14, y: iy + 0.3, w: 0.14, h: 0.14, fill: { color: col.color } });481        s.addText(item, {482          x: x + 0.35, y: iy + 0.08, w: 3.52, h: 0.74,483          fontSize: 9.5, color: C.text, margin: 0, wrap: true, valign: "middle",484        });485      });486    });487 488    s.addNotes("Walk through the benefits for each stakeholder group. Emphasize that all three groups win.");489  }490 491  // SLIDE 9 – PLATFORM vs TRADITIONAL LIBRARY492  {493    const s = pres.addSlide();494    s.background = { color: C.dark };495 496    s.addShape("ellipse", { x: 11.5, y: -2, w: 5, h: 5, fill: { color: C.accent, transparency: 88 } });497 498    s.addText("PLACEBO vs TRADITIONAL LIBRARY", { x: 0.5, y: 0.35, w: 10, h: 0.4, fontSize: 12, color: C.accent, margin: 0, charSpacing: 4, bold: true });499    s.addText("Why Institutions Choose Placebo", { x: 0.5, y: 0.78, w: 10, h: 0.55, fontSize: 30, bold: true, color: C.white, margin: 0 });500 501    const headers = ["Metric", "Traditional Library", "Placebo Platform"];502    const rows = [503      ["Accessibility", "Limited by physical copies", "Infinite concurrent users"],504      ["Searchability", "Manual index scanning", "Instant digital retrieval"],505      ["Subject Coverage", "Fragmented", "34 Unified Subjects"],506      ["Total Pages", "Physically bound volumes", "346,550 Fully Indexed"],507      ["References", "Static, non-searchable", "1.2M+ Dynamic & Linked"],508      ["Cost Model", "High per-volume overhead", "Single institutional license"],509      ["Updates", "New editions require purchase", "Continuously expanded"],510    ];511 512    const tData = [513      headers.map((h, ci) => ({514        text: h,515        options: {516          bold: true, color: C.white,517          fill: { color: ci === 0 ? C.mid : ci === 1 ? "334155" : C.accent },518          fontSize: 11, align: "center",519        },520      })),521      ...rows.map((row, ri) =>522        row.map((cell, ci) => ({523          text: cell,524          options: {525            color: ci === 0 ? "CBD5E1" : ci === 1 ? C.muted : C.accent,526            fill: { color: ri % 2 === 0 ? C.mid : "0B2545" },527            bold: ci === 2,528            fontSize: 10.5,529            align: ci === 0 ? "left" : "center",530          },531        }))532      ),533    ];534 535    s.addTable(tData, {536      x: 0.5, y: 1.65, w: 12.3, h: 5.3,537      colW: [3.2, 4.2, 4.9],538      border: { pt: 0.5, color: "1E3A5F" },539      rowH: 0.62,540    });541 542    s.addNotes("Use this slide to directly address procurement committees. Emphasize cost consolidation and scale.");543  }544 545  // SLIDE 10 – GROWTH ROADMAP546  {547    const s = pres.addSlide();548    s.background = { color: "F1F5F9" };549 550    s.addShape("rect", { x: 0, y: 0, w: 13.3, h: 1.05, fill: { color: C.dark } });551    s.addText("CONTENT GROWTH ROADMAP", { x: 0.5, y: 0.15, w: 9, h: 0.7, fontSize: 26, bold: true, color: C.white, margin: 0 });552    s.addText("5-YEAR PLAN", { x: 9.5, y: 0.28, w: 3.3, h: 0.45, fontSize: 11, color: C.accent, align: "right", margin: 0, charSpacing: 2 });553 554    s.addShape("rect", { x: 0.7, y: 3.1, w: 11.9, h: 0.06, fill: { color: C.accent, transparency: 50 } });555 556    const milestones = [557      { year: "Year 1", title: "Core Baseline", body: "MBBS & B.Pharm curriculum fully ingested — 520 PDFs, 346K pages live.", color: C.accent, x: 0.5 },558      { year: "Year 2", title: "Allied Health", body: "Expansion into Nursing, Physiotherapy, and Allied Health Sciences curricula.", color: C.accent2, x: 3.05 },559      { year: "Year 3", title: "Postgraduate", body: "MD / MS specialty content including advanced clinical subspecialties.", color: C.gold, x: 5.6 },560      { year: "Year 4", title: "Research Layer", body: "Peer-reviewed journal integration and clinical trial database access.", color: C.green, x: 8.15 },561      { year: "Year 5", title: "Live Clinical", body: "Real-time updates, hospital formulary integration, and live clinical references.", color: "A78BFA", x: 10.7 },562    ];563 564    milestones.forEach((m, i) => {565      const cx = m.x + 1.2;566      s.addShape("ellipse", { x: cx - 0.22, y: 2.88, w: 0.44, h: 0.44, fill: { color: m.color } });567      s.addText(String(i + 1), { x: cx - 0.22, y: 2.88, w: 0.44, h: 0.44, fontSize: 13, bold: true, color: C.white, align: "center", valign: "middle", margin: 0 });568 569      s.addShape("rect", { x: m.x, y: 1.3, w: 2.4, h: 1.52, fill: { color: C.white }, shadow: makeShadow(0.12), rectRadius: 0.08 });570      s.addShape("rect", { x: m.x, y: 1.3, w: 2.4, h: 0.36, fill: { color: m.color }, rectRadius: 0.08 });571      s.addText(m.year, { x: m.x + 0.08, y: 1.33, w: 2.24, h: 0.28, fontSize: 11, bold: true, color: C.white, margin: 0 });572      s.addText(m.title, { x: m.x + 0.1, y: 1.72, w: 2.22, h: 0.3, fontSize: 10.5, bold: true, color: C.dark, margin: 0 });573      s.addText(m.body, { x: m.x + 0.1, y: 2.04, w: 2.22, h: 0.72, fontSize: 8.5, color: "475569", margin: 0, wrap: true });574 575      s.addText(m.year, { x: m.x, y: 3.42, w: 2.4, h: 0.35, fontSize: 10, bold: true, color: m.color, align: "center", margin: 0 });576    });577 578    s.addText("INSTITUTIONAL ROI HIGHLIGHTS", { x: 0.5, y: 4.05, w: 12, h: 0.38, fontSize: 11, bold: true, color: C.dark, margin: 0, charSpacing: 2 });579 580    const rois = [581      { icon: "📉", label: "Cost Reduction", val: "Consolidates multiple library subscriptions into one institutional license" },582      { icon: "⏱️", label: "Time Saved", val: "Returns thousands of faculty & student hours annually to active learning" },583      { icon: "📊", label: "Pass Rates", val: "Direct correlation between resource access and improved exam performance" },584      { icon: "🏆", label: "Accreditation", val: "Demonstrates digital investment to accreditation bodies and regulatory councils" },585    ];586    rois.forEach((r, i) => {587      const x = 0.4 + i * 3.12;588      s.addShape("rect", { x, y: 4.52, w: 2.88, h: 2.5, fill: { color: C.dark }, shadow: makeShadow(0.18), rectRadius: 0.08 });589      s.addText(r.icon, { x: x + 0.1, y: 4.62, w: 2.68, h: 0.55, fontSize: 26, align: "center", margin: 0 });590      s.addText(r.label, { x: x + 0.1, y: 5.2, w: 2.68, h: 0.35, fontSize: 11, bold: true, color: C.accent, align: "center", margin: 0 });591      s.addText(r.val, { x: x + 0.1, y: 5.57, w: 2.68, h: 1.32, fontSize: 9, color: C.muted, align: "center", margin: 0, wrap: true });592    });593 594    s.addNotes("Walk through the 5-year roadmap to show long-term value. Connect ROI to procurement decision.");595  }596 597  // SLIDE 11 – CONCLUSION / CTA598  {599    const s = pres.addSlide();600    s.background = { color: C.dark };601 602    s.addShape("ellipse", { x: 8.5, y: -2.5, w: 8, h: 8, fill: { color: C.accent, transparency: 90 } });603    s.addShape("ellipse", { x: 9.5, y: -0.5, w: 5, h: 5, fill: { color: C.accent2, transparency: 82 } });604    s.addShape("ellipse", { x: -1.5, y: 3.5, w: 4, h: 4, fill: { color: C.accent, transparency: 90 } });605 606    s.addShape("rect", { x: 0.5, y: 0.55, w: 0.06, h: 1.3, fill: { color: C.accent } });607    s.addText("PLACEBO", { x: 0.7, y: 0.55, w: 5, h: 0.55, fontSize: 28, bold: true, color: C.white, margin: 0, charSpacing: 6 });608    s.addText("EDUCATION SOLUTIONS", { x: 0.7, y: 1.05, w: 5, h: 0.35, fontSize: 11, color: C.accent, margin: 0, charSpacing: 4 });609 610    s.addText("A single, comprehensive academic repository covering the complete\nspectrum of MBBS and Pharmacy education — structured,\ncurriculum-aligned, and built for institutional scale.", {611      x: 0.5, y: 1.85, w: 9.2, h: 2.1,612      fontSize: 20, color: C.white, italic: true, margin: 0, align: "left",613    });614 615    s.addShape("rect", { x: 0.5, y: 4.05, w: 4.5, h: 0.04, fill: { color: C.accent, transparency: 40 } });616 617    s.addText("Bridge the gap between heavy traditional textbooks and\nthe modern demand for instant, verified medical knowledge.", {618      x: 0.5, y: 4.3, w: 8.5, h: 0.7,619      fontSize: 14, color: C.muted, margin: 0,620    });621 622    s.addShape("rect", { x: 0.5, y: 5.15, w: 6.5, h: 1.85, fill: { color: C.accent }, rectRadius: 0.1, shadow: makeShadow(0.3) });623    s.addText("Ready to Partner?", { x: 0.7, y: 5.3, w: 6.1, h: 0.5, fontSize: 18, bold: true, color: C.white, margin: 0 });624    s.addText("Contact Placebo Education Solutions to schedule an institutional demo\nand explore partnership models tailored to your institution.", {625      x: 0.7, y: 5.82, w: 6.1, h: 1.0,626      fontSize: 11, color: "E0F2F1", margin: 0,627    });628 629    const finalStats = [630      { val: "34", lbl: "Subjects" },631      { val: "520", lbl: "PDFs" },632      { val: "49.3 GB", lbl: "Content" },633      { val: "1.2M+", lbl: "References" },634    ];635    finalStats.forEach((st, i) => {636      const x = 7.4 + (i % 2) * 2.8;637      const y = 4.0 + Math.floor(i / 2) * 1.5;638      s.addShape("rect", { x, y, w: 2.55, h: 1.3, fill: { color: C.mid }, rectRadius: 0.08 });639      s.addText(st.val, { x: x + 0.1, y: y + 0.08, w: 2.35, h: 0.65, fontSize: 26, bold: true, color: C.accent, align: "center", margin: 0 });640      s.addText(st.lbl, { x: x + 0.1, y: y + 0.72, w: 2.35, h: 0.42, fontSize: 10, color: C.muted, align: "center", margin: 0 });641    });642 643    s.addNotes("Close with the vision and a clear call to action. Ask for next steps — demo or proposal.");644  }645 646  await pres.writeFile({ fileName: "d:/sample chatbot/Placebo_Pitch_Deck.pptx" });647  console.log("Deck written successfully to d:/sample chatbot/Placebo_Pitch_Deck.pptx");648}649 650buildDeck().catch(console.error);651