kindly make a ppt of "information management during pandemics

Reading File
Searching the Web

information management during pandemics key strategies infodemic health communication

Reading File
Running Command

mkdir -p /home/daytona/workspace/pandemic-info-mgmt

Writing File

~/pandemic-info-mgmt/create_ppt.js

const pptxgen = require("pptxgenjs");

const pres = new pptxgen();
pres.layout = "LAYOUT_16x9";
pres.title = "Information Management During Pandemics";
pres.author = "Orris";

// ─── Color palette ───────────────────────────────────────────────────────────
const C = {
  navy:    "0D1B2A",   // dominant dark
  teal:    "1B7FA0",   // accent / section headers
  sky:     "3AB4D1",   // highlight text
  white:   "FFFFFF",
  offwhite:"EAF4F8",
  lightgrey:"D4E8F0",
  coral:   "E05C5C",   // warning / emphasis
  amber:   "F4A422",   // callout
  dark:    "0A1520",
};

// ─── HELPERS ─────────────────────────────────────────────────────────────────

function titleSlide(pres) {
  const slide = pres.addSlide();

  // Full-bleed dark background
  slide.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.navy } });

  // Top accent bar
  slide.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 0.12, fill: { color: C.teal } });

  // Diagonal accent shape
  slide.addShape(pres.ShapeType.rect, { x: 6.8, y: 0, w: 3.2, h: 5.625, fill: { color: C.dark }, line: { color: C.dark } });
  slide.addShape(pres.ShapeType.rightTriangle, { x: 5.5, y: 0, w: 1.4, h: 5.625, fill: { color: C.dark }, line: { color: C.dark } });

  // Teal vertical accent
  slide.addShape(pres.ShapeType.rect, { x: 0.4, y: 1.0, w: 0.08, h: 2.6, fill: { color: C.teal } });

  // Main title
  slide.addText("INFORMATION MANAGEMENT", {
    x: 0.65, y: 1.0, w: 7, h: 0.75,
    fontSize: 28, bold: true, color: C.white,
    fontFace: "Calibri", charSpacing: 3, margin: 0,
  });
  slide.addText("DURING PANDEMICS", {
    x: 0.65, y: 1.75, w: 7, h: 0.75,
    fontSize: 36, bold: true, color: C.sky,
    fontFace: "Calibri", charSpacing: 3, margin: 0,
  });

  // Subtitle
  slide.addText("Strategies · Challenges · Lessons Learned", {
    x: 0.65, y: 2.7, w: 7, h: 0.45,
    fontSize: 14, color: C.lightgrey, fontFace: "Calibri", italic: true, margin: 0,
  });

  // Bottom info strip
  slide.addShape(pres.ShapeType.rect, { x: 0, y: 5.25, w: 10, h: 0.375, fill: { color: C.teal } });
  slide.addText("WHO · CDC · Global Health Preparedness  |  2026", {
    x: 0.5, y: 5.27, w: 9, h: 0.33,
    fontSize: 10, color: C.white, fontFace: "Calibri", align: "center", margin: 0,
  });
}

function sectionHeader(pres, number, title, subtitle) {
  const slide = pres.addSlide();
  slide.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.teal } });
  slide.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 0.5, h: 5.625, fill: { color: C.navy } });
  slide.addShape(pres.ShapeType.rect, { x: 0, y: 5.3, w: 10, h: 0.325, fill: { color: C.navy } });

  slide.addText(number, {
    x: 1.2, y: 1.2, w: 2, h: 1.5,
    fontSize: 80, bold: true, color: C.white,
    fontFace: "Calibri", align: "left", transparency: 30, margin: 0,
  });
  slide.addText(title, {
    x: 1.2, y: 2.5, w: 7.5, h: 0.75,
    fontSize: 30, bold: true, color: C.white, fontFace: "Calibri", margin: 0,
  });
  if (subtitle) {
    slide.addText(subtitle, {
      x: 1.2, y: 3.3, w: 7.5, h: 0.5,
      fontSize: 15, color: C.offwhite, fontFace: "Calibri", italic: true, margin: 0,
    });
  }
  return slide;
}

function contentSlide(pres, title, bullets, notes) {
  const slide = pres.addSlide();

  // Background
  slide.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.offwhite } });

  // Left side panel
  slide.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 2.8, h: 5.625, fill: { color: C.navy } });
  slide.addShape(pres.ShapeType.rect, { x: 2.8, y: 0, w: 0.06, h: 5.625, fill: { color: C.teal } });

  // Title on left panel
  slide.addText(title, {
    x: 0.15, y: 0.5, w: 2.5, h: 4.5,
    fontSize: 18, bold: true, color: C.white, fontFace: "Calibri",
    align: "left", valign: "top", wrap: true, margin: 0,
  });

  // Teal accent line under each title
  slide.addShape(pres.ShapeType.rect, { x: 0.15, y: 0.45, w: 2.4, h: 0.04, fill: { color: C.teal } });

  // Bullet content
  const bulletItems = bullets.map((b, i) => ({
    text: b,
    options: {
      bullet: { code: "25A0", color: C.teal, indent: 18 },
      color: i === 0 ? C.navy : "2C3E50",
      fontSize: 14,
      bold: i === 0,
      breakLine: i < bullets.length - 1,
      paraSpaceAfter: 6,
    },
  }));

  slide.addText(bulletItems, {
    x: 3.1, y: 0.55, w: 6.6, h: 4.8,
    fontFace: "Calibri", valign: "top",
  });

  // Notes / callout box if provided
  if (notes) {
    slide.addShape(pres.ShapeType.rect, { x: 3.1, y: 4.75, w: 6.6, h: 0.6, fill: { color: C.amber }, rounding: 0.08 });
    slide.addText("💡  " + notes, {
      x: 3.2, y: 4.78, w: 6.4, h: 0.54,
      fontSize: 11, color: C.navy, fontFace: "Calibri", bold: false, margin: 0,
    });
  }

  return slide;
}

function twoColumnSlide(pres, title, leftHead, leftItems, rightHead, rightItems) {
  const slide = pres.addSlide();

  // Background
  slide.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.navy } });
  slide.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 0.9, fill: { color: C.teal } });

  slide.addText(title, {
    x: 0.4, y: 0.12, w: 9.2, h: 0.65,
    fontSize: 22, bold: true, color: C.white, fontFace: "Calibri", align: "center", margin: 0,
  });

  // Left column
  slide.addShape(pres.ShapeType.rect, { x: 0.3, y: 1.05, w: 4.4, h: 4.2, fill: { color: "0F2535" }, rounding: 0.1 });
  slide.addShape(pres.ShapeType.rect, { x: 0.3, y: 1.05, w: 4.4, h: 0.45, fill: { color: C.teal }, rounding: 0.1 });
  slide.addText(leftHead, {
    x: 0.4, y: 1.07, w: 4.2, h: 0.4,
    fontSize: 14, bold: true, color: C.white, fontFace: "Calibri", align: "center", margin: 0,
  });
  const leftBullets = leftItems.map((t, i) => ({
    text: t,
    options: { bullet: { code: "2022", color: C.sky }, color: C.offwhite, fontSize: 13, breakLine: i < leftItems.length - 1, paraSpaceAfter: 5 },
  }));
  slide.addText(leftBullets, { x: 0.5, y: 1.6, w: 4.0, h: 3.5, fontFace: "Calibri", valign: "top" });

  // Right column
  slide.addShape(pres.ShapeType.rect, { x: 5.3, y: 1.05, w: 4.4, h: 4.2, fill: { color: "0F2535" }, rounding: 0.1 });
  slide.addShape(pres.ShapeType.rect, { x: 5.3, y: 1.05, w: 4.4, h: 0.45, fill: { color: C.coral }, rounding: 0.1 });
  slide.addText(rightHead, {
    x: 5.4, y: 1.07, w: 4.2, h: 0.4,
    fontSize: 14, bold: true, color: C.white, fontFace: "Calibri", align: "center", margin: 0,
  });
  const rightBullets = rightItems.map((t, i) => ({
    text: t,
    options: { bullet: { code: "2022", color: C.coral }, color: C.offwhite, fontSize: 13, breakLine: i < rightItems.length - 1, paraSpaceAfter: 5 },
  }));
  slide.addText(rightBullets, { x: 5.4, y: 1.6, w: 4.0, h: 3.5, fontFace: "Calibri", valign: "top" });
}

function statSlide(pres, title, stats) {
  // stats = [{value, label, color}]
  const slide = pres.addSlide();
  slide.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.dark } });
  slide.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 0.85, fill: { color: C.teal } });
  slide.addText(title, {
    x: 0.4, y: 0.1, w: 9.2, h: 0.65,
    fontSize: 22, bold: true, color: C.white, fontFace: "Calibri", align: "center", margin: 0,
  });

  const colW = 10 / stats.length;
  stats.forEach((s, i) => {
    const cx = i * colW;
    slide.addShape(pres.ShapeType.rect, {
      x: cx + 0.25, y: 1.15, w: colW - 0.5, h: 3.9,
      fill: { color: "122030" }, rounding: 0.15,
    });
    slide.addShape(pres.ShapeType.rect, {
      x: cx + 0.25, y: 1.15, w: colW - 0.5, h: 0.08,
      fill: { color: s.color || C.teal },
    });
    slide.addText(s.value, {
      x: cx + 0.25, y: 1.6, w: colW - 0.5, h: 1.5,
      fontSize: 42, bold: true, color: s.color || C.sky,
      fontFace: "Calibri", align: "center", margin: 0,
    });
    slide.addText(s.label, {
      x: cx + 0.3, y: 3.2, w: colW - 0.6, h: 1.7,
      fontSize: 13, color: C.offwhite, fontFace: "Calibri",
      align: "center", wrap: true, margin: 0,
    });
  });
}

function timelineSlide(pres, title, steps) {
  const slide = pres.addSlide();
  slide.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.offwhite } });
  slide.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 0.85, fill: { color: C.navy } });
  slide.addText(title, {
    x: 0.4, y: 0.1, w: 9.2, h: 0.65,
    fontSize: 22, bold: true, color: C.white, fontFace: "Calibri", align: "center", margin: 0,
  });

  // Horizontal timeline bar
  slide.addShape(pres.ShapeType.rect, { x: 0.6, y: 2.75, w: 8.8, h: 0.08, fill: { color: C.teal } });

  const n = steps.length;
  const gap = 8.8 / (n - 1);
  const colors = [C.teal, C.sky, C.amber, C.coral, "#8E44AD", "#27AE60"];

  steps.forEach((s, i) => {
    const cx = 0.6 + i * gap;
    const above = i % 2 === 0;
    const col = colors[i % colors.length];

    // Circle
    slide.addShape(pres.ShapeType.ellipse, {
      x: cx - 0.18, y: 2.65, w: 0.36, h: 0.36,
      fill: { color: col }, line: { color: C.white, width: 2 },
    });

    // Connector line
    if (above) {
      slide.addShape(pres.ShapeType.rect, { x: cx - 0.01, y: 1.55, w: 0.02, h: 1.1, fill: { color: col } });
    } else {
      slide.addShape(pres.ShapeType.rect, { x: cx - 0.01, y: 2.83, w: 0.02, h: 1.1, fill: { color: col } });
    }

    // Step number
    slide.addText(`${i + 1}`, {
      x: cx - 0.18, y: 2.65, w: 0.36, h: 0.36,
      fontSize: 13, bold: true, color: C.white, fontFace: "Calibri", align: "center", valign: "middle", margin: 0,
    });

    // Label box
    const boxY = above ? 0.95 : 4.0;
    slide.addShape(pres.ShapeType.rect, {
      x: cx - 0.85, y: boxY, w: 1.7, h: 0.55,
      fill: { color: col }, rounding: 0.08,
    });
    slide.addText(s.phase, {
      x: cx - 0.85, y: boxY, w: 1.7, h: 0.55,
      fontSize: 11, bold: true, color: C.white, fontFace: "Calibri", align: "center", valign: "middle", margin: 0,
    });

    // Description
    const descY = above ? 1.55 : 3.45;
    slide.addText(s.desc, {
      x: cx - 0.88, y: descY, w: 1.75, h: above ? 1.1 : 0.55,
      fontSize: 10, color: C.navy, fontFace: "Calibri", align: "center", wrap: true, margin: 0,
    });
  });
}

function closingSlide(pres) {
  const slide = pres.addSlide();
  slide.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.navy } });
  slide.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 0.1, fill: { color: C.teal } });
  slide.addShape(pres.ShapeType.rect, { x: 0, y: 5.52, w: 10, h: 0.1, fill: { color: C.teal } });

  slide.addText("KEY TAKEAWAY", {
    x: 1, y: 0.7, w: 8, h: 0.55,
    fontSize: 13, color: C.sky, bold: true, fontFace: "Calibri", align: "center", charSpacing: 4, margin: 0,
  });
  slide.addText('"The infodemic is as dangerous as the epidemic.\nManaging information saves lives."', {
    x: 0.8, y: 1.35, w: 8.4, h: 1.6,
    fontSize: 22, color: C.white, fontFace: "Calibri", align: "center", italic: true, margin: 0,
  });
  slide.addShape(pres.ShapeType.rect, { x: 3.5, y: 3.0, w: 3, h: 0.06, fill: { color: C.teal } });
  slide.addText("— WHO Director-General, 2020", {
    x: 1, y: 3.1, w: 8, h: 0.45,
    fontSize: 13, color: C.lightgrey, fontFace: "Calibri", align: "center", margin: 0,
  });
  slide.addText("Information Management During Pandemics  |  Orris  |  2026", {
    x: 1, y: 5.1, w: 8, h: 0.35,
    fontSize: 11, color: C.teal, fontFace: "Calibri", align: "center", margin: 0,
  });
}

// ═══════════════════════════════════════════════════════════════════════
//  BUILD SLIDES
// ═══════════════════════════════════════════════════════════════════════

// 1. Title
titleSlide(pres);

// 2. Agenda
{
  const slide = pres.addSlide();
  slide.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.offwhite } });
  slide.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 1.0, fill: { color: C.navy } });
  slide.addText("AGENDA", {
    x: 0.4, y: 0.15, w: 9.2, h: 0.7,
    fontSize: 24, bold: true, color: C.white, fontFace: "Calibri", charSpacing: 5, align: "center", margin: 0,
  });

  const items = [
    ["01", "What is an Infodemic?", "The twin crisis of COVID-19"],
    ["02", "Information Challenges", "Misinformation, rumours & voids"],
    ["03", "WHO's Framework", "Prepare · Detect · Intervene · Strengthen"],
    ["04", "Key Strategies", "Technology, policy, communication"],
    ["05", "Case Studies", "COVID-19 lessons learned"],
    ["06", "Recommendations", "For governments, media & communities"],
  ];

  const cols = 2;
  items.forEach(([num, head, sub], i) => {
    const col = i % cols;
    const row = Math.floor(i / cols);
    const bx = col === 0 ? 0.3 : 5.2;
    const by = 1.15 + row * 1.35;

    slide.addShape(pres.ShapeType.rect, { x: bx, y: by, w: 4.5, h: 1.15, fill: { color: C.navy }, rounding: 0.1 });
    slide.addShape(pres.ShapeType.rect, { x: bx, y: by, w: 0.6, h: 1.15, fill: { color: C.teal }, rounding: 0.1 });
    slide.addText(num, { x: bx, y: by, w: 0.6, h: 1.15, fontSize: 16, bold: true, color: C.white, fontFace: "Calibri", align: "center", valign: "middle", margin: 0 });
    slide.addText(head, { x: bx + 0.7, y: by + 0.12, w: 3.7, h: 0.45, fontSize: 14, bold: true, color: C.sky, fontFace: "Calibri", margin: 0 });
    slide.addText(sub, { x: bx + 0.7, y: by + 0.58, w: 3.7, h: 0.4, fontSize: 11, color: C.lightgrey, fontFace: "Calibri", italic: true, margin: 0 });
  });
}

// 3. Section 1 header
sectionHeader(pres, "01", "What is an Infodemic?", "Information overload in the age of social media");

// 4. Infodemic definition
contentSlide(pres,
  "The Infodemic\nDefined",
  [
    "An infodemic is an overabundance of information — both accurate and inaccurate — during an epidemic.",
    "It spreads faster than the disease itself, causing confusion, fear, and harmful health behaviours.",
    "Coined by WHO in 2020, the term highlights a second crisis running parallel to COVID-19.",
    "Includes: misinformation (false, spread without intent), disinformation (false, spread deliberately), and malinformation (true info used to cause harm).",
    "Amplified by social media, messaging apps, and 24/7 news cycles.",
  ],
  "WHO: 'We're not just fighting an epidemic; we're fighting an infodemic.'"
);

// 5. Stats
statSlide(pres, "The Scale of the Problem — COVID-19 Infodemic in Numbers", [
  { value: "6,000+", label: "People hospitalised globally due to COVID misinformation-related harms (2020)", color: C.coral },
  { value: "800+", label: "Deaths linked to false COVID-19 information in first 3 months (Reuters)", color: C.amber },
  { value: "~50%", label: "Of adults in high-income countries encountered COVID vaccine misinformation online (WHO)", color: C.sky },
  { value: "116", label: "Countries deployed infodemic response teams (2020–2022)", color: C.teal },
]);

// 6. Section 2 header
sectionHeader(pres, "02", "Information Challenges During Pandemics", "What makes pandemic information management uniquely hard");

// 7. Two-column challenges
twoColumnSlide(pres,
  "Core Challenges: Supply vs. Demand of Information",
  "Information Overload (Supply Side)",
  [
    "Flood of unverified news from thousands of sources",
    "Social media algorithms amplify sensational content",
    "Pre-print scientific papers circulate before peer review",
    "Contradictory guidance from different health authorities",
    "Language and cultural barriers fragment messaging",
  ],
  "Information Voids (Demand Side)",
  [
    "Public seeks answers faster than science can provide them",
    "Lack of tailored information for marginalised groups",
    "Trust deficit in governments and health authorities",
    "Rumours fill the void when official answers are absent",
    "Digital divide excludes populations from reliable sources",
  ]
);

// 8. Timeline — WHO 4-pillar framework
timelineSlide(pres,
  "WHO Infodemic Management Framework",
  [
    { phase: "Prepare &\nMonitor", desc: "Build surveillance systems before outbreaks" },
    { phase: "Detect", desc: "Identify narratives, rumours & information voids" },
    { phase: "Intervene", desc: "Deploy evidence-based messaging & corrections" },
    { phase: "Strengthen", desc: "Build community resilience & health literacy" },
    { phase: "Evaluate", desc: "Measure impact of interventions" },
  ]
);

// 9. Section 3 header
sectionHeader(pres, "03", "Key Information Management Strategies", "Technology · Policy · Community");

// 10. Technology strategies
contentSlide(pres,
  "Technology & Digital Strategies",
  [
    "Social listening tools: Monitor social media platforms in real time to detect emerging rumours and misinformation trends.",
    "AI-powered fact-checking: Automated systems flag suspicious content at scale (e.g., ClaimBuster, WHO's chatbot).",
    "Platform partnerships: Collaborations with Twitter/X, Facebook, YouTube to label, demote, or remove false health content.",
    "WHO's 'EPI-WIN': Information network coordinating global risk communication rapidly.",
    "Open data portals: Transparent sharing of epidemiological data to reduce speculation and fill information voids.",
    "Contact-tracing apps: Provide direct, verified public health guidance to millions simultaneously.",
  ],
  "Technology is a double-edged sword — it spreads misinformation AND is our best tool to combat it."
);

// 11. Policy strategies
contentSlide(pres,
  "Policy & Governance Strategies",
  [
    "National infodemic response plans integrated into pandemic preparedness frameworks.",
    "Legal measures: Some governments enacted laws against deliberate spreading of false health information.",
    "Media regulation: Balancing free speech with harm reduction — a significant ethical challenge.",
    "Multi-sector coordination: Health, communications, education, and tech ministries working together.",
    "WHO Health Alert: Official WhatsApp chatbot providing verified information in 7 languages to 12M+ users.",
    "Risk communication guidelines: RCCE (Risk Communication & Community Engagement) frameworks standardised globally.",
  ],
  "Policy interventions must be transparent, proportionate, and rights-respecting."
);

// 12. Communication strategies
contentSlide(pres,
  "Communication & Community Strategies",
  [
    "Trusted messengers: Use community leaders, healthcare workers, and local influencers — not just officials.",
    "Prebunking: Inoculate the public against misinformation before it spreads by teaching critical thinking.",
    "Plain language: Translate complex science into accessible, culturally appropriate messages.",
    "Rumour management: Acknowledge, address, and correct false claims rapidly without amplifying them.",
    "Two-way communication: Listening to public concerns is as important as broadcasting guidance.",
    "Health literacy programmes: Long-term investment in educating populations to evaluate sources critically.",
  ],
  "Community engagement turns passive audiences into active defenders of accurate information."
);

// 13. Section 4 header
sectionHeader(pres, "04", "Case Studies — COVID-19 Lessons", "What worked, what didn't");

// 14. Case study 1 — WHO EPI-WIN
contentSlide(pres,
  "Case Study:\nWHO EPI-WIN Network",
  [
    "Launched Feb 2020 to build trusted networks for sharing authoritative health information.",
    "Targeted 9 audience sectors: agriculture, aviation, education, food, freight, health, mass gatherings, media, travel.",
    "Delivered regular briefings directly to 10,000+ partner organisations worldwide.",
    "Outcome: Reduced the window for misinformation to establish itself within professional networks.",
    "Key lesson: Sector-specific information bridges the gap between generic public health messaging and real-world needs.",
  ],
  "EPI-WIN became a model for sector-targeted communication in future outbreaks."
);

// 15. Case study 2 — Taiwan
contentSlide(pres,
  "Case Study:\nTaiwan's '0 Tolerance' Approach",
  [
    "Taiwan deployed a rapid counter-misinformation task force within 24 hours of the first COVID report (Dec 2019).",
    "Fact-check Centre: Government + civil society partnership issued corrections via LINE messaging app within 2 hours of rumour detection.",
    "Humour as medicine: Authorities used memes and cartoons to debunk myths — increasing shareability of correct info.",
    "Result: Taiwan kept COVID deaths among the lowest globally in the first 18 months.",
    "Key lesson: Speed, creativity, and pre-existing trust infrastructure are decisive factors.",
  ],
  "'Two-minute rule': Corrections posted within 2 minutes of rumour detection on monitored platforms."
);

// 16. Section 5 header
sectionHeader(pres, "05", "Recommendations", "For governments, media, and communities");

// 17. Two-column recommendations
twoColumnSlide(pres,
  "Recommendations for Future Pandemic Preparedness",
  "Governments & Health Authorities",
  [
    "Integrate infodemic management into national pandemic preparedness plans now — not during outbreaks",
    "Invest in dedicated infodemic monitoring infrastructure",
    "Build and maintain public trust before emergencies occur",
    "Establish rapid response communication teams",
    "Foster cross-sector and cross-border information sharing",
    "Mandate transparent, consistent data reporting",
  ],
  "Media, Tech & Communities",
  [
    "Media: Prioritise accuracy over speed; label unverified claims",
    "Tech platforms: Invest in proactive content moderation for health misinformation",
    "Educators: Embed media and health literacy into curricula at all levels",
    "Communities: Designate trusted local health champions to relay verified info",
    "Researchers: Publish findings rapidly but responsibly using preprint servers with clear caveats",
  ]
);

// 18. Closing
closingSlide(pres);

// ═══ WRITE FILE ═══════════════════════════════════════════════════════
const outPath = "/home/daytona/workspace/pandemic-info-mgmt/Information_Management_During_Pandemics.pptx";
pres.writeFile({ fileName: outPath })
  .then(() => console.log("SUCCESS: " + outPath))
  .catch(e => { console.error("ERROR:", e); process.exit(1); });
Running Command

cd /home/daytona/workspace/pandemic-info-mgmt && node create_ppt.js

Running Command

node -e "const p = require('pptxgenjs'); const pr = new p(); const sl = pr.addSl…

Running Command

node -e "const p = require('pptxgenjs'); const pr = new p(); console.log(Object.…

Editing File

~/pandemic-info-mgmt/create_ppt.js

Successfully replaced 1 instance(s) of the string in '/home/daytona/workspace/pandemic-info-mgmt/create_ppt.js'
Running Command

cd /home/daytona/workspace/pandemic-info-mgmt && node create_ppt.js

Your presentation is ready! Here is the download link:

Information Management During Pandemics

Presentation · PPTX


What's inside (18 slides):
#SlideFormat
1Title SlideDark navy with diagonal accent & teal bars
2Agenda6-topic grid with numbered cards
3Section Header"What is an Infodemic?"
4Infodemic DefinedLeft-panel layout with definition & types
5Statistics4 big-number stat cards (COVID-19 infodemic data)
6Section Header"Information Challenges"
7Core ChallengesTwo-column: Overload vs. Information Voids
8WHO FrameworkHorizontal timeline: Prepare → Detect → Intervene → Strengthen → Evaluate
9Section Header"Key Strategies"
10Technology StrategiesAI, platform partnerships, social listening
11Policy StrategiesNational plans, legal measures, RCCE framework
12Communication StrategiesTrusted messengers, prebunking, health literacy
13Section Header"Case Studies"
14WHO EPI-WINSector-targeted information network
15Taiwan's Approach2-minute rule, humour-based debunking
16Section Header"Recommendations"
17RecommendationsTwo-column: Governments vs. Media & Communities
18Closing QuoteWHO DG quote on infodemic
Design: Navy/teal/coral palette, bold section headers, stat cards, timeline diagram, and callout boxes throughout.
This is a shared conversation. Sign in to Orris to start your own chat.