Paper presentation on Impect assessment of rota virus vaccine on acute gastroenteritis and it's safety with focus on intussuception for pedia resident
rotavirus vaccine efficacy acute gastroenteritis children
rotavirus vaccine intussusception risk safety
rotavirus vaccine global impact acute gastroenteritis mortality reduction 2024 WHO
PMID: 33970192
PMID: 34049735
PMID: 35184924
mkdir -p /home/daytona/workspace/rotavirus-pptx && ls /home/daytona/workspace/rotavirus-pptx/
~/rotavirus-pptx/build.js
const pptxgen = require("pptxgenjs");
const pres = new pptxgen();
pres.layout = "LAYOUT_16x9";
pres.author = "Pediatric Residency Conference";
pres.title = "Impact of Rotavirus Vaccine on Acute Gastroenteritis & Intussusception Safety";
// ─────────────────────────────────────────────
// COLOR PALETTE
// Primary dark navy: 0D1B2A
// Accent teal: 1AABAB
// Light slate bg: EEF3F7
// Warm yellow accent: F0A500
// Text dark: 1E2D3D
// Text light: FFFFFF
// Subtle gray: 9EAEBF
// ─────────────────────────────────────────────
const NAVY = "0D1B2A";
const TEAL = "1AABAB";
const LBKG = "EEF3F7";
const YELLOW = "F0A500";
const DARK = "1E2D3D";
const WHITE = "FFFFFF";
const GRAY = "9EAEBF";
const LTEAL = "D8F0F0";
// helper: slide with dark bg
function darkSlide(title, opts) {
const s = pres.addSlide();
s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: NAVY } });
if (title) {
s.addText(title, {
x: 0.5, y: 0.3, w: 9, h: 0.7,
fontSize: 28, bold: true, color: TEAL, fontFace: "Calibri", margin: 0
});
}
return s;
}
// helper: slide with light bg + teal header bar
function lightSlide(title) {
const s = pres.addSlide();
s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: LBKG } });
s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 0.85, fill: { color: NAVY } });
s.addShape(pres.ShapeType.rect, { x: 0, y: 0.85, w: 2.2, h: 0.07, fill: { color: TEAL } });
s.addText(title, {
x: 0.4, y: 0.08, w: 9.2, h: 0.7,
fontSize: 22, bold: true, color: WHITE, fontFace: "Calibri", margin: 0
});
return s;
}
// helper: add a bullet block
function addBullets(slide, items, x, y, w, h, opts) {
opts = opts || {};
const fontSize = opts.fontSize || 16;
const color = opts.color || DARK;
const textArr = items.map((item, i) => ({
text: item,
options: {
bullet: { type: "bullet", indent: opts.indent || 12 },
breakLine: i < items.length - 1,
fontSize,
color,
fontFace: "Calibri",
paraSpaceAfter: 4
}
}));
slide.addText(textArr, { x, y, w, h, valign: "top" });
}
// ─── SLIDE 1: TITLE ───────────────────────────────────────────────────────────
{
const s = pres.addSlide();
s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: NAVY } });
// teal decorative bar
s.addShape(pres.ShapeType.rect, { x: 0, y: 3.5, w: 10, h: 0.08, fill: { color: TEAL } });
s.addShape(pres.ShapeType.rect, { x: 0, y: 3.62, w: 4.5, h: 0.06, fill: { color: YELLOW } });
s.addText("ROTAVIRUS VACCINE", {
x: 0.6, y: 0.6, w: 8.8, h: 0.8,
fontSize: 36, bold: true, color: TEAL, fontFace: "Calibri",
charSpacing: 3, align: "center", margin: 0
});
s.addText("Impact on Acute Gastroenteritis &\nIntussusception Safety", {
x: 0.6, y: 1.5, w: 8.8, h: 1.2,
fontSize: 24, bold: false, color: WHITE, fontFace: "Calibri",
align: "center"
});
s.addText("A Review for Pediatric Residents", {
x: 0.6, y: 2.85, w: 8.8, h: 0.55,
fontSize: 16, color: GRAY, fontFace: "Calibri", align: "center", italic: true
});
s.addText("Sources: Red Book 2021 | JAMA Pediatr 2021 | Vaccine 2022 | Rosen's EM | Sleisenger & Fordtran", {
x: 0.6, y: 4.9, w: 8.8, h: 0.4,
fontSize: 10, color: GRAY, fontFace: "Calibri", align: "center"
});
}
// ─── SLIDE 2: OUTLINE ─────────────────────────────────────────────────────────
{
const s = lightSlide("Presentation Outline");
const items = [
"1. Rotavirus & Acute Gastroenteritis — the burden",
"2. Vaccines available: RV1 (Rotarix) & RV5 (RotaTeq)",
"3. Immunization schedule & mechanism",
"4. Impact on hospitalization & mortality — global data",
"5. Impact in low/middle-income vs high-income countries",
"6. Real-world effectiveness meta-analysis (JAMA Pediatr 2021)",
"7. Intussusception — background & baseline risk",
"8. Intussusception risk with RotaShield (withdrawn 1999)",
"9. Post-licensure surveillance — current vaccines",
"10. Risk–benefit analysis",
"11. Contraindications & precautions",
"12. Take-home messages"
];
addBullets(s, items, 0.5, 1.0, 9, 4.3, { fontSize: 14, color: DARK });
}
// ─── SLIDE 3: DISEASE BURDEN ──────────────────────────────────────────────────
{
const s = lightSlide("Rotavirus: Global Disease Burden");
// left column — stats boxes
const boxes = [
{ label: "Deaths/year pre-vaccine", val: "~528,000", sub: "children <5 worldwide" },
{ label: "Deaths/year by 2013", val: "~215,000", sub: "85% in Africa & Asia" },
{ label: "Hospital admissions", val: "30–70%", sub: "of all pediatric AGE" },
];
boxes.forEach((b, i) => {
const bx = 0.3;
const by = 1.05 + i * 1.35;
s.addShape(pres.ShapeType.roundRect, { x: bx, y: by, w: 4, h: 1.1, fill: { color: NAVY }, rectRadius: 0.12 });
s.addText(b.val, { x: bx + 0.15, y: by + 0.05, w: 3.7, h: 0.55, fontSize: 26, bold: true, color: TEAL, fontFace: "Calibri", margin: 0 });
s.addText(b.label, { x: bx + 0.15, y: by + 0.58, w: 3.7, h: 0.28, fontSize: 11, color: WHITE, fontFace: "Calibri", margin: 0 });
s.addText(b.sub, { x: bx + 0.15, y: by + 0.8, w: 3.7, h: 0.22, fontSize: 10, color: GRAY, fontFace: "Calibri", italic: true, margin: 0 });
});
// right column — key facts
s.addText("Key Epidemiology", { x: 4.8, y: 1.0, w: 4.8, h: 0.38, fontSize: 14, bold: true, color: NAVY, fontFace: "Calibri", margin: 0 });
addBullets(s, [
"Nearly ubiquitous in children <5 yrs globally",
"Infection rates similar in developed & developing world",
"Incubation: 1–3 days; inoculum as low as 1–10 virions",
"Watery diarrhea, vomiting, fever in ~1/3",
"Illness duration: 5–7 days on average",
"Seizures (afebrile) in 2–3% of infected children",
"Seasonality: peaks in cooler months (Jan–May in USA)",
"Leading cause of diarrheal death in <5 globally"
], 4.8, 1.45, 4.8, 3.9, { fontSize: 13, color: DARK });
s.addText("Sleisenger & Fordtran's GI & Liver Disease; Rosen's EM", {
x: 0.3, y: 5.3, w: 9.4, h: 0.25, fontSize: 9, color: GRAY, italic: true, fontFace: "Calibri"
});
}
// ─── SLIDE 4: THE VACCINES ────────────────────────────────────────────────────
{
const s = lightSlide("Approved Rotavirus Vaccines");
// RV1 box
s.addShape(pres.ShapeType.roundRect, { x: 0.3, y: 1.0, w: 4.2, h: 4.3, fill: { color: NAVY }, rectRadius: 0.15 });
s.addText("Rotarix (RV1)", { x: 0.4, y: 1.05, w: 4.0, h: 0.5, fontSize: 18, bold: true, color: TEAL, fontFace: "Calibri", align: "center", margin: 0 });
s.addText("GlaxoSmithKline", { x: 0.4, y: 1.52, w: 4.0, h: 0.3, fontSize: 11, color: GRAY, fontFace: "Calibri", align: "center", italic: true, margin: 0 });
s.addShape(pres.ShapeType.line, { x: 0.5, y: 1.85, w: 3.8, h: 0, line: { color: TEAL, width: 1 } });
addBullets(s, [
"Live-attenuated monovalent human G1P[8]",
"2-dose oral series",
"Doses at 2 & 4 months of age",
"First dose: 6–14 wks 6 days",
"Min interval: 4 weeks",
"All doses by 8 months",
"Licensed in USA: 2008"
], 0.4, 2.0, 4.0, 3.0, { fontSize: 13, color: WHITE });
// RV5 box
s.addShape(pres.ShapeType.roundRect, { x: 5.1, y: 1.0, w: 4.5, h: 4.3, fill: { color: DARK }, rectRadius: 0.15 });
s.addText("RotaTeq (RV5)", { x: 5.2, y: 1.05, w: 4.3, h: 0.5, fontSize: 18, bold: true, color: YELLOW, fontFace: "Calibri", align: "center", margin: 0 });
s.addText("Merck & Co.", { x: 5.2, y: 1.52, w: 4.3, h: 0.3, fontSize: 11, color: GRAY, fontFace: "Calibri", align: "center", italic: true, margin: 0 });
s.addShape(pres.ShapeType.line, { x: 5.3, y: 1.85, w: 4.1, h: 0, line: { color: YELLOW, width: 1 } });
addBullets(s, [
"Pentavalent human-bovine reassortant (G1–G4, P[8])",
"3-dose oral series",
"Doses at 2, 4 & 6 months of age",
"First dose: 6–14 wks 6 days",
"Min interval: 4 weeks",
"All doses by 8 months",
"Licensed in USA: 2006"
], 5.2, 2.0, 4.3, 3.0, { fontSize: 13, color: WHITE });
s.addText("Note: AAP & CDC express no preference between RV1 and RV5 | Red Book 2021", {
x: 0.3, y: 5.35, w: 9.4, h: 0.22, fontSize: 9, color: GRAY, italic: true, fontFace: "Calibri"
});
}
// ─── SLIDE 5: MECHANISM OF ACTION ────────────────────────────────────────────
{
const s = lightSlide("Mechanism of Action & Immunogenicity");
s.addText("How rotavirus vaccines work:", {
x: 0.5, y: 1.0, w: 9, h: 0.4,
fontSize: 16, bold: true, color: NAVY, fontFace: "Calibri", margin: 0
});
const steps = [
{ num: "1", text: "Live-attenuated vaccine virus replicates in the gut mucosa" },
{ num: "2", text: "Stimulates secretory IgA (sIgA) in intestinal lamina propria" },
{ num: "3", text: "Memory B & T cells generated; cross-serotype protection conferred" },
{ num: "4", text: "Serum IgA titers correlate strongly with vaccine protection\n(coefficient −1.599; R² = 99.7% — JAMA Pediatr 2021)" },
];
steps.forEach((st, i) => {
const bx = 0.4;
const by = 1.5 + i * 0.92;
s.addShape(pres.ShapeType.ellipse, { x: bx, y: by + 0.07, w: 0.45, h: 0.45, fill: { color: TEAL } });
s.addText(st.num, { x: bx, y: by + 0.06, w: 0.45, h: 0.45, fontSize: 16, bold: true, color: WHITE, fontFace: "Calibri", align: "center", valign: "middle", margin: 0 });
s.addText(st.text, { x: bx + 0.6, y: by, w: 8.6, h: 0.6, fontSize: 15, color: DARK, fontFace: "Calibri", valign: "middle" });
if (i < steps.length - 1) {
s.addShape(pres.ShapeType.line, { x: bx + 0.22, y: by + 0.52, w: 0, h: 0.35, line: { color: TEAL, width: 1.5 } });
}
});
s.addText("Rotavac, Rotasiil, Lanzhou Lamb (LLR) — additional WHO-prequalified vaccines used in Asia/Africa", {
x: 0.5, y: 5.3, w: 9, h: 0.25, fontSize: 10, color: GRAY, italic: true, fontFace: "Calibri"
});
}
// ─── SLIDE 6: IMPACT ON AGE (GLOBAL) ─────────────────────────────────────────
{
const s = lightSlide("Impact on Acute Gastroenteritis — Global Evidence");
// Headline stat
s.addShape(pres.ShapeType.roundRect, { x: 0.3, y: 1.0, w: 9.4, h: 0.85, fill: { color: TEAL }, rectRadius: 0.1 });
s.addText("Median 67% reduction in rotavirus AGE hospitalizations across 27 countries | 38% reduction in all-cause AGE hospitalizations", {
x: 0.4, y: 1.05, w: 9.2, h: 0.75, fontSize: 15, bold: true, color: WHITE, fontFace: "Calibri", align: "center", valign: "middle"
});
// Three country-group columns
const cols = [
{ label: "Low child mortality", hospit: "41%", rvage: "71%", color: "205A8C" },
{ label: "Medium child mortality", hospit: "30%", rvage: "59%", color: "127A7A" },
{ label: "High child mortality\n(Africa & Asia)", hospit: "46%", rvage: "60%", color: NAVY },
];
cols.forEach((c, i) => {
const cx = 0.3 + i * 3.2;
s.addShape(pres.ShapeType.roundRect, { x: cx, y: 2.05, w: 3.1, h: 2.95, fill: { color: c.color }, rectRadius: 0.12 });
s.addText(c.label, { x: cx + 0.1, y: 2.1, w: 2.9, h: 0.6, fontSize: 13, bold: true, color: TEAL, fontFace: "Calibri", align: "center" });
s.addText("All-cause AGE\nhospitalization ↓", { x: cx + 0.1, y: 2.75, w: 2.9, h: 0.45, fontSize: 11, color: GRAY, fontFace: "Calibri", align: "center" });
s.addText(c.hospit, { x: cx + 0.1, y: 3.2, w: 2.9, h: 0.6, fontSize: 28, bold: true, color: YELLOW, fontFace: "Calibri", align: "center", margin: 0 });
s.addText("RV-specific AGE\nhospitalization ↓", { x: cx + 0.1, y: 3.85, w: 2.9, h: 0.4, fontSize: 11, color: GRAY, fontFace: "Calibri", align: "center" });
s.addText(c.rvage, { x: cx + 0.1, y: 4.25, w: 2.9, h: 0.55, fontSize: 26, bold: true, color: WHITE, fontFace: "Calibri", align: "center", margin: 0 });
});
s.addText("Parashar et al., J Infect Dis 2017 (57 articles, 27 countries)", {
x: 0.3, y: 5.3, w: 9.4, h: 0.25, fontSize: 9, color: GRAY, italic: true, fontFace: "Calibri"
});
}
// ─── SLIDE 7: USA DATA ────────────────────────────────────────────────────────
{
const s = lightSlide("Impact in the United States (Post-2006)");
s.addShape(pres.ShapeType.roundRect, { x: 0.3, y: 1.0, w: 9.4, h: 0.75, fill: { color: NAVY }, rectRadius: 0.1 });
s.addText("RotaTeq licensed 2006 · Rotarix licensed 2008 → norovirus became leading AGE cause in US children", {
x: 0.4, y: 1.05, w: 9.2, h: 0.65, fontSize: 13, color: WHITE, fontFace: "Calibri", align: "center", valign: "middle", italic: true
});
const usFacts = [
{ icon: "↓ 60–90%", label: "annual hospitalizations in children <5 yrs" },
{ icon: "177,000", label: "hospitalizations averted since vaccine introduction" },
{ icon: "242,000", label: "ED visits averted" },
{ icon: "1.1 million", label: "outpatient visits averted" },
{ icon: "Biennial", label: "seasonal pattern emerged (short, late winter/spring seasons)" },
];
usFacts.forEach((f, i) => {
const fx = 0.4;
const fy = 1.95 + i * 0.67;
s.addShape(pres.ShapeType.roundRect, { x: fx, y: fy, w: 9.2, h: 0.58, fill: { color: i % 2 === 0 ? LTEAL : "D9EBF5" }, rectRadius: 0.07 });
s.addText(f.icon, { x: fx + 0.15, y: fy + 0.06, w: 1.7, h: 0.46, fontSize: 16, bold: true, color: NAVY, fontFace: "Calibri", valign: "middle", margin: 0 });
s.addText(f.label, { x: fx + 1.9, y: fy + 0.06, w: 7.2, h: 0.46, fontSize: 13.5, color: DARK, fontFace: "Calibri", valign: "middle", margin: 0 });
});
s.addText("Rosen's Emergency Medicine (2022); CDC surveillance data", {
x: 0.3, y: 5.33, w: 9.4, h: 0.22, fontSize: 9, color: GRAY, italic: true, fontFace: "Calibri"
});
}
// ─── SLIDE 8: JAMA META-ANALYSIS ──────────────────────────────────────────────
{
const s = lightSlide("Vaccine Efficacy Meta-Analysis | JAMA Pediatrics 2021");
s.addText("Sun et al., JAMA Pediatr 2021 — 20 RCTs + 38 case-control studies (PMID: 33970192)", {
x: 0.4, y: 0.95, w: 9.2, h: 0.38, fontSize: 12, color: TEAL, italic: true, fontFace: "Calibri", margin: 0
});
const headers = ["Vaccine", "Outcome", "Risk Ratio / OR", "95% CI"];
const rows = [
["Rotarix (RV1)", "RVGE reduction", "RR 0.316", "0.224–0.345"],
["Rotarix (RV1)", "RVGE hospitalization", "OR 0.347", "0.279–0.432"],
["RotaTeq (RV5)", "RVGE reduction", "RR 0.350", "0.275–0.445"],
["RotaTeq (RV5)", "RVGE hospitalization", "OR 0.272", "0.197–0.376"],
["Rotavac", "RVGE reduction", "RR 0.664", "0.548–0.804"],
["Rotasiil", "RVGE reduction", "RR 0.705", "0.605–0.821"],
];
const colW = [2.0, 2.4, 2.0, 1.9];
const colX = [0.35, 2.4, 4.85, 6.9];
const rowH = 0.48;
// Header row
headers.forEach((h, ci) => {
s.addShape(pres.ShapeType.rect, { x: colX[ci], y: 1.42, w: colW[ci], h: 0.42, fill: { color: NAVY } });
s.addText(h, { x: colX[ci] + 0.05, y: 1.42, w: colW[ci] - 0.1, h: 0.42, fontSize: 12, bold: true, color: WHITE, fontFace: "Calibri", valign: "middle", align: ci > 1 ? "center" : "left", margin: 0 });
});
rows.forEach((row, ri) => {
const ry = 1.88 + ri * rowH;
const fill = ri % 2 === 0 ? WHITE : "E8F4F4";
row.forEach((cell, ci) => {
s.addShape(pres.ShapeType.rect, { x: colX[ci], y: ry, w: colW[ci], h: rowH - 0.02, fill: { color: fill } });
const isStat = ci > 1;
s.addText(cell, {
x: colX[ci] + 0.07, y: ry + 0.02, w: colW[ci] - 0.1, h: rowH - 0.06,
fontSize: 12.5, color: isStat ? (ci === 2 ? "1A5276" : DARK) : DARK,
bold: ci === 2, fontFace: "Calibri", valign: "middle", align: isStat ? "center" : "left", margin: 0
});
});
});
s.addText("All vaccines: no significant increase in serious adverse events | RV1 & RV5 showed comparable protection (adjusted indirect comparison)", {
x: 0.35, y: 5.2, w: 9.2, h: 0.3, fontSize: 10.5, color: NAVY, bold: true, fontFace: "Calibri"
});
}
// ─── SLIDE 9: INTUSSUSCEPTION BACKGROUND ─────────────────────────────────────
{
const s = lightSlide("Intussusception — Background");
// left: definition box
s.addShape(pres.ShapeType.roundRect, { x: 0.3, y: 1.0, w: 4.5, h: 4.35, fill: { color: NAVY }, rectRadius: 0.12 });
s.addText("What is intussusception?", { x: 0.4, y: 1.05, w: 4.3, h: 0.45, fontSize: 15, bold: true, color: TEAL, fontFace: "Calibri", margin: 0 });
addBullets(s, [
"Telescoping of one bowel segment into adjacent segment",
"Most common cause of intestinal obstruction in infants",
"Peak age: 5–12 months",
"Classic triad: colicky pain, vomiting, currant-jelly stools",
"Diagnosis: ultrasound (target/doughnut sign)",
"Treatment: pneumatic/hydrostatic enema or surgery",
"Background rate: ~1–3/1,000 live births (varies by country)"
], 0.4, 1.55, 4.3, 3.6, { fontSize: 13, color: WHITE });
// right: why it matters
s.addText("Why it matters for vaccine safety:", {
x: 5.1, y: 1.0, w: 4.5, h: 0.4,
fontSize: 15, bold: true, color: NAVY, fontFace: "Calibri", margin: 0
});
addBullets(s, [
"1998 RotaShield (RRV-TV) was withdrawn after detected ~1/10,000 intussusception risk",
"Temporal clustering: within 1–2 weeks post-dose",
"Raised the standard for all subsequent rotavirus vaccines",
"Pre-licensure trials of RV1 & RV5 each enrolled >60,000 infants specifically to detect this signal",
"Post-marketing surveillance is ongoing globally via VAERS, VSD, and international registries"
], 5.1, 1.5, 4.5, 3.9, { fontSize: 13, color: DARK });
s.addText("Rosen's Emergency Medicine; Sleisenger & Fordtran", {
x: 0.3, y: 5.33, w: 9.4, h: 0.22, fontSize: 9, color: GRAY, italic: true, fontFace: "Calibri"
});
}
// ─── SLIDE 10: ROTASHIELD LESSON ──────────────────────────────────────────────
{
const s = darkSlide("Historical Context: RotaShield (RRV-TV) — 1999");
s.addShape(pres.ShapeType.roundRect, { x: 0.4, y: 1.0, w: 9.2, h: 0.7, fill: { color: "8B0000" }, rectRadius: 0.08 });
s.addText("RotaShield WITHDRAWN from US market in October 1999", {
x: 0.5, y: 1.05, w: 9.0, h: 0.6, fontSize: 17, bold: true, color: WHITE, fontFace: "Calibri", align: "center", valign: "middle"
});
addBullets(s, [
"First licensed US rotavirus vaccine (Wyeth-Lederle) — 1998",
"Rhesus-human reassortant tetravalent oral vaccine",
"Post-licensure: VSD detected ~1 excess intussusception per 10,000 vaccinated infants",
"Risk concentrated in the 2 weeks following dose 1 & dose 2",
"Estimated: 1 excess intussusception per 5,000–10,000 vaccines administered",
"ACIP vote July 1999 → CDC withdrawal recommendation",
"KEY LESSON: Drove requirement for massive pre-licensure safety trials for RV1 & RV5",
"No similar excess risk found in RotaTeq (60,000 infant trial) or Rotarix (63,000 infant trial)"
], 0.5, 1.85, 9.0, 3.5, { fontSize: 14, color: WHITE });
s.addText("This withdrawal fundamentally changed the vaccine safety evaluation paradigm for enteric vaccines", {
x: 0.4, y: 5.1, w: 9.2, h: 0.4, fontSize: 12, color: TEAL, bold: true, fontFace: "Calibri", align: "center"
});
}
// ─── SLIDE 11: POST-LICENSURE INTUSSUSCEPTION RISK ────────────────────────────
{
const s = lightSlide("Post-Licensure Intussusception Risk — Current Vaccines");
s.addText("Pre-licensure RCTs (n > 60,000 each): NO excess intussusception signal", {
x: 0.4, y: 1.0, w: 9.2, h: 0.38, fontSize: 14, bold: true, color: "205A8C", fontFace: "Calibri", margin: 0
});
s.addText("Post-marketing surveillance findings:", {
x: 0.4, y: 1.5, w: 9.2, h: 0.36, fontSize: 14, bold: true, color: NAVY, fontFace: "Calibri", margin: 0
});
// Two columns
const leftData = [
"Studies showing NO increased risk:",
" • United States (multiple studies)",
" • Canada",
" • Korea",
" • Africa (multiple countries)",
" • Brazil",
" • Taiwan",
"",
"Vaccine 2022 (Henschke et al.):",
" • 4 WHO-prequalified vaccines",
" • NO intussusception increase in high-mortality African & Asian settings"
];
const rightData = [
"Studies finding SMALL increased risk:",
" • USA (VAERS, VSD): ~1–5 excess cases per 100,000 vaccinated",
" • Australia (up to 21 days post dose 1)",
" • Mexico, Brazil",
"",
"Risk characteristics when found:",
" • Primarily within first 7 days post-dose",
" • Mainly after dose 1 or 2",
" • Highest excess: ~6 per 100,000 (Aus. data)",
" • Red Book 2021: 1–5 excess cases/100,000 vaccinated (US estimate)"
];
addBullets(s, leftData, 0.4, 1.95, 4.6, 3.2, { fontSize: 12.5, color: DARK });
addBullets(s, rightData, 5.1, 1.95, 4.6, 3.2, { fontSize: 12.5, color: DARK });
// Divider line
s.addShape(pres.ShapeType.line, { x: 4.9, y: 1.95, w: 0, h: 3.0, line: { color: GRAY, width: 1 } });
s.addText("Red Book 2021; Rosen's EM; Vaccine 2022 | Gidengil et al. Vaccine 2021: moderate SoE for NO increased risk at latest follow-up", {
x: 0.3, y: 5.3, w: 9.4, h: 0.25, fontSize: 9, color: GRAY, italic: true, fontFace: "Calibri"
});
}
// ─── SLIDE 12: RISK-BENEFIT ───────────────────────────────────────────────────
{
const s = lightSlide("Risk–Benefit Analysis");
// Header
s.addShape(pres.ShapeType.roundRect, { x: 0.3, y: 1.0, w: 9.4, h: 0.65, fill: { color: TEAL }, rectRadius: 0.09 });
s.addText("CDC, WHO, AAP, IAP all recommend rotavirus vaccination — benefits far outweigh risks", {
x: 0.4, y: 1.05, w: 9.2, h: 0.55, fontSize: 14, bold: true, color: WHITE, fontFace: "Calibri", align: "center", valign: "middle"
});
// vs table
const colX2 = [0.3, 5.0];
const colW2 = [4.5, 4.7];
const hdrs = ["RISK (Intussusception)", "BENEFIT (AGE prevention)"];
const hdColors = ["8B2020", "0A5C36"];
const items2 = [
["1–5 excess cases per 100,000 vaccinated (US)", "67% reduction in RV AGE hospitalizations"],
["Risk window: mainly 7 days post dose 1 or 2", "177,000 hospitalizations averted/year in USA"],
["Self-limited with prompt treatment in most", "60–90% reduction in US pediatric RV hospitalizations"],
["No excess mortality from intussusception in trials", "528,000 → 215,000 global deaths avoided/year"],
["Background intussusception rate: ~1–3/1,000", "46% reduction in high-mortality countries"],
["Baseline cases occur without vaccine", "Prevents severe dehydration, ICU admissions, death"],
];
hdrs.forEach((h, ci) => {
s.addShape(pres.ShapeType.roundRect, { x: colX2[ci] + 0.05, y: 1.73, w: colW2[ci] - 0.1, h: 0.43, fill: { color: hdColors[ci] }, rectRadius: 0.07 });
s.addText(h, { x: colX2[ci] + 0.1, y: 1.73, w: colW2[ci] - 0.2, h: 0.43, fontSize: 13, bold: true, color: WHITE, fontFace: "Calibri", valign: "middle", align: "center", margin: 0 });
});
items2.forEach((row, ri) => {
const ry = 2.2 + ri * 0.48;
const fill = ri % 2 === 0 ? "FAE8E8" : "E8FAF0";
const fillRight = ri % 2 === 0 ? "E8F5ED" : "FEFAF2";
row.forEach((cell, ci) => {
s.addShape(pres.ShapeType.rect, {
x: colX2[ci] + 0.05, y: ry, w: colW2[ci] - 0.1, h: 0.44,
fill: { color: ci === 0 ? fill : fillRight }
});
s.addText(cell, {
x: colX2[ci] + 0.12, y: ry + 0.02, w: colW2[ci] - 0.24, h: 0.4,
fontSize: 11.5, color: DARK, fontFace: "Calibri", valign: "middle", margin: 0
});
});
});
s.addText("Parent counseling: inform of signs/symptoms of intussusception (colicky crying, vomiting, blood in stool) and need for prompt evaluation", {
x: 0.3, y: 5.2, w: 9.4, h: 0.3, fontSize: 10, color: NAVY, bold: true, fontFace: "Calibri"
});
}
// ─── SLIDE 13: CONTRAINDICATIONS ──────────────────────────────────────────────
{
const s = lightSlide("Contraindications, Precautions & Special Situations");
// Absolute CI
s.addShape(pres.ShapeType.roundRect, { x: 0.3, y: 1.0, w: 4.5, h: 3.1, fill: { color: "FAE5E5" }, rectRadius: 0.1 });
s.addShape(pres.ShapeType.rect, { x: 0.3, y: 1.0, w: 4.5, h: 0.45, fill: { color: "C0392B" } });
s.addText("CONTRAINDICATIONS", { x: 0.35, y: 1.0, w: 4.4, h: 0.45, fontSize: 13, bold: true, color: WHITE, fontFace: "Calibri", valign: "middle", margin: 0 });
addBullets(s, [
"History of intussusception",
"Severe combined immunodeficiency (SCID)",
"Severe allergic reaction to prior dose",
"Do NOT initiate first dose ≥15 weeks 0 days of age",
"Uncorrected congenital malformation of GI tract"
], 0.4, 1.52, 4.3, 2.45, { fontSize: 13, color: DARK });
// Precautions
s.addShape(pres.ShapeType.roundRect, { x: 5.1, y: 1.0, w: 4.6, h: 3.1, fill: { color: "FFF9E6" }, rectRadius: 0.1 });
s.addShape(pres.ShapeType.rect, { x: 5.1, y: 1.0, w: 4.6, h: 0.45, fill: { color: "E67E22" } });
s.addText("PRECAUTIONS", { x: 5.15, y: 1.0, w: 4.5, h: 0.45, fontSize: 13, bold: true, color: WHITE, fontFace: "Calibri", valign: "middle", margin: 0 });
addBullets(s, [
"Defer if moderate-to-severe acute illness",
"Defer if active gastroenteritis or febrile illness",
"Premature infants: vaccinate at chronological age (not corrected) per schedule",
"Immunocompromised (not SCID): discuss with specialist"
], 5.2, 1.52, 4.4, 2.45, { fontSize: 13, color: DARK });
// Special situations
s.addShape(pres.ShapeType.roundRect, { x: 0.3, y: 4.2, w: 9.4, h: 1.05, fill: { color: LTEAL }, rectRadius: 0.1 });
s.addText("Special situations:", {
x: 0.4, y: 4.22, w: 2.2, h: 0.3, fontSize: 12, bold: true, color: NAVY, fontFace: "Calibri", margin: 0
});
addBullets(s, [
"SCID: severe gastroenteritis + prolonged viral shedding reported with live oral RV vaccines — consult ID before vaccinating any immunodeficient infant",
"HIV: WHO does not contraindicate; weigh benefits vs. risks individually"
], 0.4, 4.53, 9.2, 0.65, { fontSize: 11.5, color: DARK });
}
// ─── SLIDE 14: GLOBAL DEPLOYMENT & WHO ───────────────────────────────────────
{
const s = lightSlide("Global Deployment & WHO Recommendations");
s.addText("WHO (2009 / updated 2021): All countries should include rotavirus vaccine in national immunization schedules", {
x: 0.4, y: 1.0, w: 9.2, h: 0.5, fontSize: 14, bold: true, color: NAVY, fontFace: "Calibri", margin: 0
});
const points = [
["Priority regions", "Sub-Saharan Africa, South Asia, Southeast Asia (highest mortality burden)"],
["Coverage 2024", ">120 countries have introduced rotavirus vaccine (WHO)"],
["4 WHO-prequalified\nvaccines", "RV1 (Rotarix), RV5 (RotaTeq), Rotavac (India), Rotasiil (India)"],
["Efficacy in\nhigh-mortality settings", "48–57% against severe RVGE in year 1; 29–54% in year 2 (Henschke 2022)"],
["China Expert\nConsensus 2024", "All WHO-prequalified vaccines show favorable safety profiles; highlight intussusception risk in programs"],
["Complementary measures", "Exclusive breastfeeding, hand hygiene, ORS + zinc supplementation for management"],
];
points.forEach((p, i) => {
const px = 0.4;
const py = 1.6 + i * 0.63;
s.addShape(pres.ShapeType.roundRect, { x: px, y: py, w: 9.2, h: 0.58, fill: { color: i % 2 === 0 ? "D8EEF5" : LTEAL }, rectRadius: 0.07 });
s.addText(p[0], { x: px + 0.1, y: py + 0.05, w: 2.0, h: 0.48, fontSize: 12, bold: true, color: NAVY, fontFace: "Calibri", valign: "middle", margin: 0 });
s.addText(p[1], { x: px + 2.2, y: py + 0.05, w: 7.0, h: 0.48, fontSize: 12, color: DARK, fontFace: "Calibri", valign: "middle", margin: 0 });
});
s.addText("WHO Position Paper July 2021; China Consensus 2024; Henschke et al. Vaccine 2022 (PMID 35184924)", {
x: 0.3, y: 5.33, w: 9.4, h: 0.22, fontSize: 9, color: GRAY, italic: true, fontFace: "Calibri"
});
}
// ─── SLIDE 15: TAKE-HOME / CONCLUSIONS ───────────────────────────────────────
{
const s = pres.addSlide();
s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: NAVY } });
s.addShape(pres.ShapeType.rect, { x: 0, y: 1.0, w: 0.18, h: 4.3, fill: { color: TEAL } });
s.addText("Key Take-Home Messages", {
x: 0.4, y: 0.2, w: 9.2, h: 0.65,
fontSize: 26, bold: true, color: TEAL, fontFace: "Calibri", margin: 0
});
s.addShape(pres.ShapeType.line, { x: 0.4, y: 0.88, w: 9.2, h: 0, line: { color: TEAL, width: 1.5 } });
const msgs = [
{ num: "01", text: "Rotavirus was the leading cause of pediatric AGE globally before vaccines; now mortality has halved." },
{ num: "02", text: "RV1 (Rotarix) & RV5 (RotaTeq): ~65–70% reduction in RVGE and RVGE hospitalizations in fully vaccinated children." },
{ num: "03", text: "In the USA: 60–90% fewer hospitalizations, 177,000 hospitalizations + 242,000 ED visits averted annually." },
{ num: "04", text: "RotaShield was withdrawn (1999) due to ~1/10,000 intussusception risk. Current vaccines have a far smaller signal." },
{ num: "05", text: "Current estimates: 1–5 excess intussusception cases per 100,000 vaccinated infants; risk within 7 days of doses 1–2." },
{ num: "06", text: "Benefits overwhelmingly outweigh risks — CDC, WHO, AAP, IAP all recommend universal infant vaccination." },
{ num: "07", text: "Counsel parents: recognize intussusception (colicky crying, bilious vomiting, currant-jelly stool) → seek immediate care." },
];
msgs.forEach((m, i) => {
const mx = 0.4;
const my = 1.05 + i * 0.6;
s.addShape(pres.ShapeType.ellipse, { x: mx, y: my + 0.05, w: 0.42, h: 0.42, fill: { color: TEAL } });
s.addText(m.num, { x: mx, y: my + 0.04, w: 0.42, h: 0.42, fontSize: 11, bold: true, color: NAVY, fontFace: "Calibri", align: "center", valign: "middle", margin: 0 });
s.addText(m.text, { x: mx + 0.56, y: my, w: 9.0, h: 0.52, fontSize: 13, color: WHITE, fontFace: "Calibri", valign: "middle" });
});
}
// ─── WRITE FILE ───────────────────────────────────────────────────────────────
pres.writeFile({ fileName: "/home/daytona/workspace/rotavirus-pptx/Rotavirus_Vaccine_Impact_Peds.pptx" })
.then(() => console.log("SUCCESS: PPTX written"))
.catch(e => { console.error("ERROR:", e); process.exit(1); });
cd /home/daytona/workspace/rotavirus-pptx && node build.js 2>&1
ls -lh /home/daytona/workspace/rotavirus-pptx/
Rotavirus Vaccine Impact Peds
Presentation · PPTX
| # | Slide | Key content |
|---|---|---|
| 1 | Title slide | Dark navy/teal design, full title |
| 2 | Outline | Numbered roadmap for the talk |
| 3 | Global Disease Burden | ~528,000 → ~215,000 deaths/yr; 30–70% of AGE hospitalizations pre-vaccine |
| 4 | The Vaccines | RV1 (Rotarix) vs. RV5 (RotaTeq) — side-by-side comparison of schedule, composition, manufacturer |
| 5 | Mechanism of Action | Gut mucosal sIgA induction, memory response, immunogenicity-protection correlation (R² = 99.7%) |
| 6 | Global AGE Impact | 67% reduction in RV hospitalizations; breakdown by low/medium/high-mortality countries |
| 7 | US-Specific Impact | 60–90% hospitalization reduction; 177k hospitalizations + 242k ED visits averted/year |
| 8 | Meta-Analysis Table | JAMA Pediatr 2021 (PMID 33970192) — RR/OR data for all major vaccines; no serious AEs |
| 9 | Intussusception Background | Definition, peak age, diagnosis, baseline rate ~1–3/1,000; why it matters for vaccine safety |
| 10 | RotaShield Lesson | 1999 withdrawal story; ~1/10,000 risk; how it shaped RV1/RV5 trial design |
| 11 | Post-Licensure Surveillance | Split view: countries with NO signal vs. those detecting 1–5 excess cases/100,000; risk window |
| 12 | Risk–Benefit Analysis | Head-to-head table — intussusception risk vs. lives and hospitalizations saved |
| 13 | Contraindications & Precautions | History of intussusception, SCID, age cutoffs, immunocompromised management |
| 14 | Global Deployment & WHO | 120+ countries, WHO 2021 position, China 2024 consensus, Rotavac/Rotasiil in Asia/Africa |
| 15 | Take-Home Messages | 7 numbered key points for residents to remember |