Prepare slide for brachytherapy role for physio theraphy in Cervical cancer

Checking Date & Time
Reading File
Reading File
Reading File
Finding Sources
Finding Sources
Reading File
Finding Sources
Finding Sources
Reading File
Finding Sources
Finding Sources
Reading File
Finding Sources
Finding Sources
Reading File
Searching Images

brachytherapy cervical cancer intracavitary applicator tandem ring

Reading File
Searching Images

physiotherapy rehabilitation after cervical cancer pelvic floor exercises

Reading File
Running Command

mkdir -p /home/daytona/workspace/brachytherapy-cervical-ppt && ls /home/daytona/workspace/

Writing File

~/brachytherapy-cervical-ppt/create_presentation.js

const pptxgen = require("pptxgenjs");
const { execSync } = require("child_process");

const pres = new pptxgen();
pres.layout = "LAYOUT_16x9";
pres.title = "Brachytherapy Role in Physiotherapy for Cervical Cancer";
pres.author = "Orris Medical AI";

// ─── Color Palette ─────────────────────────────────────────────────────────────
const TEAL       = "006D77";  // dominant deep teal
const TEAL_DARK  = "004E57";  // darker teal for header bands
const TEAL_MED   = "218089";  // medium teal for accents
const TEAL_LIGHT = "83C5BE";  // light teal for dividers
const CREAM      = "EDF6F9";  // near-white slide background
const SAND       = "FFDDD2";  // warm accent (highlight boxes)
const ORANGE_ACC = "E29578";  // orange accent
const WHITE      = "FFFFFF";
const DARK_TEXT  = "1A1A2E";
const GRAY_TEXT  = "4A5568";

// ─── Reusable helpers ───────────────────────────────────────────────────────────

function addStyledSlide(titleText, subtitleText) {
  const slide = pres.addSlide();

  // Full background
  slide.addShape(pres.shapes.RECTANGLE, {
    x: 0, y: 0, w: 10, h: 5.625,
    fill: { color: CREAM },
    line: { color: CREAM }
  });

  // Top header band
  slide.addShape(pres.shapes.RECTANGLE, {
    x: 0, y: 0, w: 10, h: 1.1,
    fill: { color: TEAL_DARK },
    line: { color: TEAL_DARK }
  });

  // Teal accent stripe
  slide.addShape(pres.shapes.RECTANGLE, {
    x: 0, y: 1.1, w: 10, h: 0.08,
    fill: { color: TEAL_LIGHT },
    line: { color: TEAL_LIGHT }
  });

  // Title text
  slide.addText(titleText, {
    x: 0.4, y: 0.1, w: 9.2, h: 0.9,
    fontSize: 26, bold: true, color: WHITE, fontFace: "Calibri",
    valign: "middle", margin: 0
  });

  if (subtitleText) {
    slide.addText(subtitleText, {
      x: 0.4, y: 1.2, w: 9.2, h: 0.4,
      fontSize: 13, color: TEAL, fontFace: "Calibri", italic: true, margin: 0
    });
  }

  return slide;
}

function addBulletBox(slide, items, x, y, w, h, bgColor, textColor, fontSize) {
  slide.addShape(pres.shapes.ROUNDED_RECTANGLE, {
    x, y, w, h,
    fill: { color: bgColor || WHITE },
    line: { color: TEAL_LIGHT, pt: 1 },
    rectRadius: 0.08,
    shadow: { type: "outer", color: "000000", blur: 4, offset: 2, angle: 135, opacity: 0.08 }
  });

  const textItems = items.map((item, i) => {
    if (item.startsWith("##")) {
      return {
        text: item.replace("##", "").trim(),
        options: { bold: true, color: TEAL_DARK, fontSize: (fontSize || 13) + 1, breakLine: true }
      };
    }
    return {
      text: item,
      options: { bullet: { code: "25CF", color: ORANGE_ACC }, color: textColor || DARK_TEXT, fontSize: fontSize || 13, breakLine: i < items.length - 1 }
    };
  });

  slide.addText(textItems, {
    x: x + 0.15, y: y + 0.1, w: w - 0.3, h: h - 0.2,
    valign: "top", fontFace: "Calibri"
  });
}

function addIconBox(slide, iconChar, label, desc, x, y) {
  // Card bg
  slide.addShape(pres.shapes.ROUNDED_RECTANGLE, {
    x, y, w: 2.8, h: 1.8,
    fill: { color: WHITE }, line: { color: TEAL_LIGHT, pt: 1 }, rectRadius: 0.1,
    shadow: { type: "outer", color: "000000", blur: 6, offset: 2, angle: 135, opacity: 0.1 }
  });
  // Icon bg circle
  slide.addShape(pres.shapes.OVAL, {
    x: x + 0.95, y: y + 0.12, w: 0.9, h: 0.9,
    fill: { color: SAND }, line: { color: ORANGE_ACC, pt: 1 }
  });
  slide.addText(iconChar, { x: x + 0.95, y: y + 0.13, w: 0.9, h: 0.85, fontSize: 22, align: "center", valign: "middle", fontFace: "Segoe UI Emoji" });
  slide.addText(label, { x: x + 0.1, y: y + 1.08, w: 2.6, h: 0.32, fontSize: 11.5, bold: true, color: TEAL_DARK, align: "center", fontFace: "Calibri" });
  slide.addText(desc, { x: x + 0.1, y: y + 1.38, w: 2.6, h: 0.35, fontSize: 10, color: GRAY_TEXT, align: "center", fontFace: "Calibri" });
}

// ═══════════════════════════════════════════════════════════════════════════════
// SLIDE 1 — TITLE SLIDE
// ═══════════════════════════════════════════════════════════════════════════════
{
  const slide = pres.addSlide();

  // Full teal background
  slide.addShape(pres.shapes.RECTANGLE, {
    x: 0, y: 0, w: 10, h: 5.625,
    fill: { color: TEAL_DARK }, line: { color: TEAL_DARK }
  });

  // Diagonal accent
  slide.addShape(pres.shapes.RECTANGLE, {
    x: 6.5, y: 0, w: 3.5, h: 5.625,
    fill: { color: TEAL_MED }, line: { color: TEAL_MED }
  });

  // Vertical accent line
  slide.addShape(pres.shapes.RECTANGLE, {
    x: 6.3, y: 0, w: 0.15, h: 5.625,
    fill: { color: TEAL_LIGHT }, line: { color: TEAL_LIGHT }
  });

  // Decorative circles
  slide.addShape(pres.shapes.OVAL, { x: 7.2, y: 0.3, w: 1.4, h: 1.4, fill: { color: TEAL_DARK, transparency: 40 }, line: { color: TEAL_DARK } });
  slide.addShape(pres.shapes.OVAL, { x: 8.1, y: 3.8, w: 1.8, h: 1.8, fill: { color: TEAL_DARK, transparency: 40 }, line: { color: TEAL_DARK } });

  // Top label
  slide.addShape(pres.shapes.RECTANGLE, {
    x: 0.4, y: 0.45, w: 2.8, h: 0.35,
    fill: { color: ORANGE_ACC }, line: { color: ORANGE_ACC }
  });
  slide.addText("ONCOLOGY PHYSIOTHERAPY", {
    x: 0.4, y: 0.45, w: 2.8, h: 0.35,
    fontSize: 9, color: WHITE, bold: true, align: "center", valign: "middle", fontFace: "Calibri"
  });

  // Main title
  slide.addText("Brachytherapy", {
    x: 0.4, y: 1.05, w: 5.7, h: 0.9,
    fontSize: 38, bold: true, color: WHITE, fontFace: "Calibri", valign: "bottom"
  });

  slide.addText("Role in Physiotherapy", {
    x: 0.4, y: 1.85, w: 5.7, h: 0.65,
    fontSize: 28, bold: false, color: TEAL_LIGHT, fontFace: "Calibri"
  });

  slide.addText("for Cervical Cancer", {
    x: 0.4, y: 2.4, w: 5.7, h: 0.65,
    fontSize: 28, bold: true, color: SAND, fontFace: "Calibri"
  });

  // Divider line
  slide.addShape(pres.shapes.RECTANGLE, {
    x: 0.4, y: 3.2, w: 5.5, h: 0.04,
    fill: { color: ORANGE_ACC }, line: { color: ORANGE_ACC }
  });

  slide.addText("Comprehensive Management & Rehabilitation", {
    x: 0.4, y: 3.35, w: 5.5, h: 0.4,
    fontSize: 13, color: CREAM, fontFace: "Calibri", italic: true
  });

  slide.addText("April 2026", {
    x: 0.4, y: 5.1, w: 2, h: 0.3,
    fontSize: 10, color: TEAL_LIGHT, fontFace: "Calibri"
  });
}

// ═══════════════════════════════════════════════════════════════════════════════
// SLIDE 2 — OVERVIEW OF CERVICAL CANCER & RADIATION
// ═══════════════════════════════════════════════════════════════════════════════
{
  const slide = addStyledSlide("Cervical Cancer: Overview & Radiation Rationale", "Background & Clinical Context");

  // Two-column layout
  addBulletBox(slide, [
    "## Epidemiology",
    "4th most common female malignancy worldwide",
    "Squamous cell carcinoma: ~70-80% of cases",
    "Adenocarcinoma: ~20-25% of cases",
    "5-year survival: ~70% stage I, ~60% stage II, ~45% stage III"
  ], 0.3, 1.65, 4.5, 2.6, WHITE, DARK_TEXT, 12);

  addBulletBox(slide, [
    "## Why Radiation?",
    "Radiotherapy can treat ALL stages of cervical cancer",
    "Comparable outcomes to surgery for early-stage disease",
    "Allows organ preservation (vs. radical surgery)",
    "Chemoradiation is standard for advanced disease (IIB–IV)",
    "EBRT + Brachytherapy: cornerstone of curative intent"
  ], 5.0, 1.65, 4.65, 2.6, WHITE, DARK_TEXT, 12);

  // Bottom info bar
  slide.addShape(pres.shapes.RECTANGLE, {
    x: 0.3, y: 4.5, w: 9.4, h: 0.85,
    fill: { color: TEAL }, line: { color: TEAL }, rectRadius: 0.06
  });
  slide.addText("Key Principle:  External beam radiation (EBRT) reduces tumor bulk → Brachytherapy delivers high-dose boost directly to residual tumor", {
    x: 0.5, y: 4.55, w: 9.0, h: 0.72,
    fontSize: 12.5, color: WHITE, fontFace: "Calibri", bold: false, valign: "middle"
  });
}

// ═══════════════════════════════════════════════════════════════════════════════
// SLIDE 3 — WHAT IS BRACHYTHERAPY?
// ═══════════════════════════════════════════════════════════════════════════════
{
  const slide = addStyledSlide("What is Brachytherapy?", "Radiation from Within");

  // Definition box
  slide.addShape(pres.shapes.RECTANGLE, {
    x: 0.3, y: 1.65, w: 9.4, h: 0.75,
    fill: { color: TEAL }, line: { color: TEAL }
  });
  slide.addText([
    { text: "Definition: ", options: { bold: true, color: SAND } },
    { text: "A form of radiation therapy where a radioactive source is placed onto or inside the treatment volume (tumour). Dose falls off rapidly (inverse square law), sparing healthy tissues.", options: { color: WHITE } }
  ], { x: 0.5, y: 1.68, w: 9.0, h: 0.68, fontSize: 12.5, fontFace: "Calibri", valign: "middle" });

  // 3 key feature cards
  const features = [
    ["📍", "Localised Action", "Radiation confined\nnear the source"],
    ["🔢", "Inverse Square Law", "Dose drops sharply\nwith distance"],
    ["💊", "High-Dose Delivery", "Very high doses\nto tumour target"],
    ["⚕️", "OAR Sparing", "Bladder & rectum\nprotected"]
  ];

  const startX = [0.3, 2.75, 5.2, 7.65];
  features.forEach((f, i) => {
    addIconBox(slide, f[0], f[1], f[2], startX[i], 2.6);
  });

  // Bottom note
  slide.addText("Greek: brachy = short distance | Isotope: Iridium-192 (HDR) most common in modern practice", {
    x: 0.4, y: 5.12, w: 9.2, h: 0.35,
    fontSize: 10.5, color: TEAL_MED, italic: true, fontFace: "Calibri", align: "center"
  });
}

// ═══════════════════════════════════════════════════════════════════════════════
// SLIDE 4 — TYPES OF BRACHYTHERAPY
// ═══════════════════════════════════════════════════════════════════════════════
{
  const slide = addStyledSlide("Types of Brachytherapy for Cervical Cancer", "Techniques & Delivery Methods");

  // LDR box
  addBulletBox(slide, [
    "## LDR — Low Dose Rate",
    "Dose rate < 0.4 Gy/hour",
    "Isotope: Cesium-137 (Cs-137)",
    "Inpatient admission required (1-3 days)",
    "Patient immobilized during treatment",
    "DVT prophylaxis and radiation shielding needed",
    "Largely replaced by HDR in modern practice"
  ], 0.3, 1.65, 4.5, 2.8, WHITE, DARK_TEXT, 12);

  // HDR box
  addBulletBox(slide, [
    "## HDR — High Dose Rate",
    "Dose rate > 12 Gy/hour",
    "Isotope: Iridium-192 (Ir-192) via remote afterloader",
    "Outpatient — treatment takes only minutes",
    "4–5 fractions over the treatment course",
    "No prolonged immobilization",
    "Modern standard: image-guided (CT/MRI)"
  ], 5.0, 1.65, 4.65, 2.8, WHITE, DARK_TEXT, 12);

  // Interstitial note
  slide.addShape(pres.shapes.RECTANGLE, {
    x: 0.3, y: 4.62, w: 9.4, h: 0.75,
    fill: { color: SAND }, line: { color: ORANGE_ACC, pt: 1 }
  });
  slide.addText([
    { text: "Interstitial Brachytherapy: ", options: { bold: true, color: TEAL_DARK } },
    { text: "Hollow needles implanted directly into the tumour — used for bulky/irregular tumours where intracavitary applicators cannot achieve adequate coverage.", options: { color: DARK_TEXT } }
  ], { x: 0.5, y: 4.65, w: 9.0, h: 0.68, fontSize: 12, fontFace: "Calibri", valign: "middle" });
}

// ═══════════════════════════════════════════════════════════════════════════════
// SLIDE 5 — TREATMENT PROTOCOL
// ═══════════════════════════════════════════════════════════════════════════════
{
  const slide = addStyledSlide("Brachytherapy Treatment Protocol", "Sequence, Dosimetry & Planning");

  // Timeline arrows
  const steps = [
    { label: "EBRT", sub: "25-28 fractions\n5 weeks pelvic radiation" },
    { label: "Week 4", sub: "Brachytherapy\nintroduced concurrently" },
    { label: "Applicator\nPlacement", sub: "Tandem + ring/ovoid\nunder anesthesia" },
    { label: "3D Imaging", sub: "CT or MRI with\napplicators in situ" },
    { label: "HDR\nFraction", sub: "Remote Ir-192\nsource delivery" }
  ];

  const boxW = 1.75;
  const startX = 0.25;
  const gap = 0.12;
  const y = 1.75;
  const h = 1.4;

  steps.forEach((s, i) => {
    const x = startX + i * (boxW + gap);
    // Arrow shape bg
    slide.addShape(pres.shapes.ROUNDED_RECTANGLE, {
      x, y, w: boxW, h,
      fill: { color: i % 2 === 0 ? TEAL : TEAL_MED },
      line: { color: TEAL_DARK },
      rectRadius: 0.07
    });
    slide.addText(s.label, {
      x: x + 0.05, y: y + 0.1, w: boxW - 0.1, h: 0.5,
      fontSize: 13, bold: true, color: WHITE, align: "center", fontFace: "Calibri"
    });
    slide.addText(s.sub, {
      x: x + 0.05, y: y + 0.6, w: boxW - 0.1, h: 0.75,
      fontSize: 10, color: CREAM, align: "center", fontFace: "Calibri"
    });

    // Arrow connector
    if (i < steps.length - 1) {
      slide.addShape(pres.shapes.RIGHT_ARROW, {
        x: x + boxW, y: y + 0.55, w: gap + 0.05, h: 0.3,
        fill: { color: ORANGE_ACC }, line: { color: ORANGE_ACC }
      });
    }
  });

  // Dosimetry box
  addBulletBox(slide, [
    "## Modern 3D Image-Guided Adaptive Brachytherapy (IGABT)",
    "HR-CTV D90: 8,500–9,500 cGy cumulative (GEC-ESTRO guidelines)",
    "Bladder constraint: D2cc < 90 Gy EQD2 | Rectum/Sigmoid: D2cc < 75 Gy EQD2",
    "Imaging at each insertion: plan adapted to tumour shrinkage",
    "Tumour control dose depends on tumour volume"
  ], 0.3, 3.3, 9.4, 2.05, WHITE, DARK_TEXT, 12);
}

// ═══════════════════════════════════════════════════════════════════════════════
// SLIDE 6 — PHYSIOTHERAPY ROLE: OVERVIEW
// ═══════════════════════════════════════════════════════════════════════════════
{
  const slide = addStyledSlide("Role of Physiotherapy in Brachytherapy", "Pre-, Peri- and Post-Treatment Rehabilitation");

  // Phase banner
  const phases = [
    { label: "PRE-TREATMENT", color: TEAL_DARK, sub: "Assessment &\nConditioning" },
    { label: "DURING BT", color: TEAL_MED, sub: "Comfort &\nSafety" },
    { label: "ACUTE POST", color: ORANGE_ACC, sub: "Early Rehab\n& Education" },
    { label: "LONG-TERM", color: TEAL, sub: "Chronic Sequelae\nManagement" }
  ];

  phases.forEach((p, i) => {
    const x = 0.3 + i * 2.38;
    slide.addShape(pres.shapes.RECTANGLE, {
      x, y: 1.65, w: 2.2, h: 0.5,
      fill: { color: p.color }, line: { color: p.color }
    });
    slide.addText(p.label, { x, y: 1.65, w: 2.2, h: 0.5, fontSize: 10.5, bold: true, color: WHITE, align: "center", valign: "middle", fontFace: "Calibri" });
    slide.addShape(pres.shapes.RECTANGLE, {
      x, y: 2.15, w: 2.2, h: 0.6,
      fill: { color: CREAM }, line: { color: p.color, pt: 1 }
    });
    slide.addText(p.sub, { x: x + 0.05, y: 2.15, w: 2.1, h: 0.6, fontSize: 10, color: p.color, align: "center", valign: "middle", fontFace: "Calibri", bold: true });
  });

  // Core roles
  addBulletBox(slide, [
    "## Key Physiotherapy Domains",
    "Pelvic floor rehabilitation: strengthening and coordination after radiation damage",
    "Lymphoedema management: compression therapy for lower limb/genital oedema",
    "Vaginal stenosis prevention: education on use of vaginal dilators post-RT",
    "Pain management: manual therapy, TENS, heat/cold modalities",
    "Functional mobility and fatigue management",
    "Bladder & bowel dysfunction rehabilitation (incontinence, urgency)"
  ], 0.3, 2.95, 9.4, 2.4, WHITE, DARK_TEXT, 12);
}

// ═══════════════════════════════════════════════════════════════════════════════
// SLIDE 7 — PELVIC FLOOR REHABILITATION
// ═══════════════════════════════════════════════════════════════════════════════
{
  const slide = addStyledSlide("Pelvic Floor Rehabilitation Post-Brachytherapy", "Targeting Radiation-Induced Pelvic Dysfunction");

  addBulletBox(slide, [
    "## Radiation Effects on Pelvic Floor",
    "Radiation-induced vasculitis and fibrosis → pelvic floor weakness",
    "Bladder fistula rate: 1.4–5.3% after pelvic RT",
    "Other serious toxicity (stricture, stenosis): 6.4–8.1%",
    "Vaginal fibrosis and stenosis — especially in postmenopausal patients"
  ], 0.3, 1.65, 4.5, 2.5, WHITE, DARK_TEXT, 12);

  addBulletBox(slide, [
    "## Physiotherapy Interventions",
    "Kegel (pelvic floor muscle) exercises: progressive resistance programme",
    "Biofeedback-assisted pelvic floor training",
    "Vaginal dilator programme: prevents stenosis, maintains sexual function",
    "Bladder retraining protocols for urgency/frequency",
    "Bowel management: dietary advice + core stabilisation",
    "Coordinate with multidisciplinary team (oncologist, nurse specialist)"
  ], 5.0, 1.65, 4.65, 2.5, WHITE, DARK_TEXT, 12);

  // Acute vs chronic box
  slide.addShape(pres.shapes.RECTANGLE, {
    x: 0.3, y: 4.32, w: 4.5, h: 1.02,
    fill: { color: SAND }, line: { color: ORANGE_ACC, pt: 1 }
  });
  slide.addText([
    { text: "ACUTE (during/after RT): ", options: { bold: true, color: TEAL_DARK } },
    { text: "Diarrhoea, bladder cramps, nausea, frequency — managed with dietary modification, antispasmodics, physio support", options: { color: DARK_TEXT } }
  ], { x: 0.45, y: 4.35, w: 4.2, h: 0.96, fontSize: 11, fontFace: "Calibri", valign: "middle" });

  slide.addShape(pres.shapes.RECTANGLE, {
    x: 5.0, y: 4.32, w: 4.65, h: 1.02,
    fill: { color: TEAL }, line: { color: TEAL_DARK, pt: 1 }
  });
  slide.addText([
    { text: "CHRONIC (months–years post-RT): ", options: { bold: true, color: SAND } },
    { text: "Fibrosis, fistulae, lymphoedema — require ongoing physio, specialist MDT, and sometimes surgical management", options: { color: WHITE } }
  ], { x: 5.15, y: 4.35, w: 4.35, h: 0.96, fontSize: 11, fontFace: "Calibri", valign: "middle" });
}

// ═══════════════════════════════════════════════════════════════════════════════
// SLIDE 8 — LYMPHOEDEMA & MOBILITY
// ═══════════════════════════════════════════════════════════════════════════════
{
  const slide = addStyledSlide("Lymphoedema Management & Functional Mobility", "Secondary Physiotherapy Priorities");

  // Left column
  addBulletBox(slide, [
    "## Lower Limb Lymphoedema",
    "Pelvic node irradiation disrupts lymphatic drainage",
    "Affects up to 30% of patients after pelvic RT + lymphadenectomy",
    "Complete Decongestive Therapy (CDT):",
    "  → Manual lymphatic drainage (MLD)",
    "  → Multilayer compression bandaging",
    "  → Therapeutic exercises",
    "  → Skin and nail care"
  ], 0.3, 1.65, 4.5, 3.1, WHITE, DARK_TEXT, 11.5);

  // Right column
  addBulletBox(slide, [
    "## Fatigue & Functional Rehabilitation",
    "Cancer-related fatigue: most common patient complaint",
    "Graded aerobic exercise programme (walking, cycling)",
    "Resistance training: lower limb and core strengthening",
    "Energy conservation strategies and activity pacing",
    "Hip flexor and iliopsoas stretching post-pelvic RT",
    "Gait retraining if lymphoedema affects mobility",
    "Return-to-work & activity-of-daily-life planning"
  ], 5.0, 1.65, 4.65, 3.1, WHITE, DARK_TEXT, 11.5);

  slide.addShape(pres.shapes.RECTANGLE, {
    x: 0.3, y: 4.92, w: 9.4, h: 0.45,
    fill: { color: TEAL_MED }, line: { color: TEAL_MED }
  });
  slide.addText("Evidence base: Supervised exercise programmes reduce fatigue, improve QoL and functional outcomes in gynaecological cancer survivors", {
    x: 0.4, y: 4.94, w: 9.2, h: 0.4,
    fontSize: 11, color: WHITE, fontFace: "Calibri", italic: true, valign: "middle"
  });
}

// ═══════════════════════════════════════════════════════════════════════════════
// SLIDE 9 — RADIATION COMPLICATIONS & PHYSIO ROLE
// ═══════════════════════════════════════════════════════════════════════════════
{
  const slide = addStyledSlide("Managing Radiation Complications", "Physiotherapy Contribution to Side-Effect Management");

  // 3-column complication cards
  const cols = [
    {
      title: "Radiation Proctopathy",
      color: TEAL_DARK,
      items: [
        "Rectal bleeding post-pelvic RT",
        "Bowel urgency & incontinence",
        "Physio role: bowel retraining",
        "Pelvic floor coordination training",
        "MDT with gastroenterologist",
        "Dietary fibre modification education"
      ]
    },
    {
      title: "Bladder Dysfunction",
      color: TEAL_MED,
      items: [
        "Urgency, frequency, incontinence",
        "Radiation cystitis symptoms",
        "Physio role: bladder diary keeping",
        "Bladder retraining schedule",
        "Pelvic floor muscle training",
        "Biofeedback for sphincter control"
      ]
    },
    {
      title: "Vaginal Stenosis & Sexual Health",
      color: ORANGE_ACC,
      items: [
        "Fibrosis → vaginal narrowing",
        "Sexual dysfunction common post-RT",
        "Physio role: dilator therapy programme",
        "Pelvic floor relaxation techniques",
        "Patient education on lubricants",
        "Sexual health counselling referral"
      ]
    }
  ];

  cols.forEach((col, i) => {
    const x = 0.3 + i * 3.22;
    slide.addShape(pres.shapes.RECTANGLE, {
      x, y: 1.65, w: 3.0, h: 0.42,
      fill: { color: col.color }, line: { color: col.color }
    });
    slide.addText(col.title, {
      x, y: 1.65, w: 3.0, h: 0.42,
      fontSize: 11.5, bold: true, color: WHITE, align: "center", valign: "middle", fontFace: "Calibri"
    });
    addBulletBox(slide, col.items, x, 2.07, 3.0, 3.25, WHITE, DARK_TEXT, 11);
  });
}

// ═══════════════════════════════════════════════════════════════════════════════
// SLIDE 10 — POSITIONING & IMMOBILISATION DURING BT
// ═══════════════════════════════════════════════════════════════════════════════
{
  const slide = addStyledSlide("Physiotherapy During Brachytherapy Procedures", "Patient Positioning, Comfort & DVT Prevention");

  addBulletBox(slide, [
    "## During LDR Brachytherapy (Inpatient)",
    "Patient immobilised for 1–3 days with applicators in situ",
    "DVT prophylaxis: LMWH, compression stockings, ankle exercises",
    "Physiotherapist role: supervised gentle ankle pumps & isometrics",
    "Pressure ulcer prevention: repositioning within permitted range",
    "Respiratory exercises: deep breathing, coughing techniques",
    "Psychological support: managing anxiety during confinement"
  ], 0.3, 1.65, 4.5, 3.25, WHITE, DARK_TEXT, 12);

  addBulletBox(slide, [
    "## During HDR Brachytherapy (Outpatient)",
    "Treatment takes only minutes — minimal immobilisation",
    "Pre-procedure: relaxation techniques to reduce anxiety",
    "Post-procedure: assist patient to mobilise safely",
    "Nausea & discomfort: TENS, positioning advice",
    "Pain management after applicator placement",
    "Education on what to expect between fractions",
    "Home exercise programme maintenance during treatment"
  ], 5.0, 1.65, 4.65, 3.25, WHITE, DARK_TEXT, 12);

  slide.addShape(pres.shapes.RECTANGLE, {
    x: 0.3, y: 5.07, w: 9.4, h: 0.33,
    fill: { color: TEAL }, line: { color: TEAL }
  });
  slide.addText("Intraoperative real-time ultrasound guidance during tandem placement: Reduces uterine perforation (~9% risk) — physiotherapist assists with patient positioning", {
    x: 0.45, y: 5.08, w: 9.1, h: 0.3,
    fontSize: 10.5, color: WHITE, fontFace: "Calibri", valign: "middle"
  });
}

// ═══════════════════════════════════════════════════════════════════════════════
// SLIDE 11 — MULTIDISCIPLINARY TEAM
// ═══════════════════════════════════════════════════════════════════════════════
{
  const slide = addStyledSlide("Multidisciplinary Team & Physiotherapy Integration", "The Physio as Core MDT Member");

  // Central circle
  slide.addShape(pres.shapes.OVAL, {
    x: 3.9, y: 2.1, w: 2.2, h: 1.4,
    fill: { color: TEAL_DARK }, line: { color: TEAL_DARK }
  });
  slide.addText("PATIENT\n& MDT", {
    x: 3.9, y: 2.1, w: 2.2, h: 1.4,
    fontSize: 13, bold: true, color: WHITE, align: "center", valign: "middle", fontFace: "Calibri"
  });

  // Surrounding roles
  const roles = [
    { x: 0.2, y: 1.65, label: "Radiation\nOncologist", sub: "EBRT & BT planning,\ndose prescription" },
    { x: 3.8, y: 1.35, label: "Medical\nPhysicist", sub: "Dosimetry, inverse\nsquare law calcs" },
    { x: 7.3, y: 1.65, label: "Gynaecologic\nOncologist", sub: "Surgery, staging,\nstent placement" },
    { x: 0.2, y: 3.6, label: "Physiotherapist", sub: "Rehab, pelvic floor,\nlymphoedema, mobility" },
    { x: 3.8, y: 4.15, label: "Oncology\nNurse", sub: "Care co-ordination,\npatient education" },
    { x: 7.3, y: 3.6, label: "Psycho-\nOncologist", sub: "Anxiety, depression,\nsexual health" }
  ];

  roles.forEach(r => {
    slide.addShape(pres.shapes.ROUNDED_RECTANGLE, {
      x: r.x, y: r.y, w: 2.3, h: 1.15,
      fill: { color: r.label.includes("Physio") ? SAND : WHITE },
      line: { color: r.label.includes("Physio") ? ORANGE_ACC : TEAL_LIGHT, pt: r.label.includes("Physio") ? 2 : 1 },
      rectRadius: 0.08
    });
    slide.addText(r.label, {
      x: r.x + 0.05, y: r.y + 0.08, w: 2.2, h: 0.45,
      fontSize: 11.5, bold: true, color: r.label.includes("Physio") ? TEAL_DARK : TEAL, align: "center", fontFace: "Calibri"
    });
    slide.addText(r.sub, {
      x: r.x + 0.05, y: r.y + 0.53, w: 2.2, h: 0.58,
      fontSize: 9.5, color: GRAY_TEXT, align: "center", fontFace: "Calibri"
    });
  });
}

// ═══════════════════════════════════════════════════════════════════════════════
// SLIDE 12 — SUMMARY & KEY TAKEAWAYS
// ═══════════════════════════════════════════════════════════════════════════════
{
  const slide = pres.addSlide();

  slide.addShape(pres.shapes.RECTANGLE, {
    x: 0, y: 0, w: 10, h: 5.625,
    fill: { color: TEAL_DARK }, line: { color: TEAL_DARK }
  });

  slide.addShape(pres.shapes.RECTANGLE, {
    x: 0, y: 0, w: 10, h: 1.05,
    fill: { color: TEAL }, line: { color: TEAL }
  });
  slide.addText("Summary & Key Takeaways", {
    x: 0.4, y: 0.1, w: 9.2, h: 0.85,
    fontSize: 26, bold: true, color: WHITE, valign: "middle", fontFace: "Calibri"
  });

  const points = [
    ["01", "Brachytherapy is ESSENTIAL", "Intracavitary/interstitial BT delivers the crucial dose boost to the cervical tumour — modern 3D IGABT has halved toxicity vs. 2D"],
    ["02", "Physiotherapy spans the continuum", "From pre-treatment conditioning to long-term chronic side-effect management — physio is involved at every stage"],
    ["03", "Pelvic floor is central", "Radiation causes fibrosis, incontinence, stenosis — targeted PFMT and dilator therapy prevent significant disability"],
    ["04", "Lymphoedema demands specialist care", "CDT (MLD + compression + exercise) must be initiated early; affects up to 30% post-pelvic RT"],
    ["05", "MDT collaboration is non-negotiable", "Physiotherapist must work with radiation oncologist, gynaecologist, and nurse to deliver safe, timely rehabilitation"]
  ];

  points.forEach((p, i) => {
    const y = 1.2 + i * 0.85;
    // Number badge
    slide.addShape(pres.shapes.OVAL, {
      x: 0.3, y: y + 0.12, w: 0.55, h: 0.55,
      fill: { color: ORANGE_ACC }, line: { color: ORANGE_ACC }
    });
    slide.addText(p[0], {
      x: 0.3, y: y + 0.12, w: 0.55, h: 0.55,
      fontSize: 12, bold: true, color: WHITE, align: "center", valign: "middle", fontFace: "Calibri"
    });

    slide.addText(p[1] + ": ", {
      x: 1.0, y: y + 0.14, w: 8.7, h: 0.3,
      fontSize: 12.5, bold: true, color: SAND, fontFace: "Calibri"
    });
    slide.addText(p[2], {
      x: 1.0, y: y + 0.42, w: 8.7, h: 0.36,
      fontSize: 11, color: CREAM, fontFace: "Calibri"
    });
  });

  slide.addText("Source: Berek & Novak's Gynecology | Grainger & Allison's Diagnostic Radiology | Berek & Novak's Gynecology, pp. 2252–2265", {
    x: 0.3, y: 5.28, w: 9.4, h: 0.25,
    fontSize: 8.5, color: TEAL_LIGHT, italic: true, fontFace: "Calibri", align: "center"
  });
}

// ─── Write file ─────────────────────────────────────────────────────────────────
pres.writeFile({ fileName: "/home/daytona/workspace/brachytherapy-cervical-ppt/Brachytherapy_Cervical_Cancer_Physiotherapy.pptx" })
  .then(() => console.log("✅ Presentation saved successfully!"))
  .catch(err => { console.error("❌ Error:", err); process.exit(1); });
Running Command

cd /home/daytona/workspace/brachytherapy-cervical-ppt && node create_presentation.js

Running Command

ls -lh /home/daytona/workspace/brachytherapy-cervical-ppt/

Your presentation is ready!

Brachytherapy Cervical Cancer Physiotherapy

Presentation · PPTX


Presentation Overview — 12 Slides

The deck uses a professional deep teal + warm orange accent colour palette and covers:
SlideTitle
1Title Slide — Brachytherapy Role in Physiotherapy for Cervical Cancer
2Cervical Cancer Overview & Radiation Rationale — epidemiology, why radiation
3What is Brachytherapy? — definition, inverse square law, dose localisation
4Types of Brachytherapy — LDR vs HDR vs Interstitial
5Treatment Protocol — EBRT → BT sequence, 3D IGABT dosimetry, GEC-ESTRO guidelines
6Role of Physiotherapy: Overview — Pre/Peri/Post phases, key domains
7Pelvic Floor Rehabilitation — radiation effects, Kegel training, vaginal dilators, biofeedback
8Lymphoedema & Functional Mobility — CDT, cancer fatigue, graded exercise
9Managing Radiation Complications — proctopathy, bladder dysfunction, vaginal stenosis
10Physiotherapy During BT Procedures — DVT prevention during LDR, comfort during HDR
11Multidisciplinary Team — Physiotherapist's role within the full MDT
12Summary & Key Takeaways — 5 core messages
Sources: Berek & Novak's Gynecology (pp. 2252–2265) and Grainger & Allison's Diagnostic Radiology.

Prepare presenation for brachytherapy in Cervical cancer for physio theraphy role

I already prepared this exact presentation in our previous turn! You can download it here:

Brachytherapy Cervical Cancer Physiotherapy

Presentation · PPTX


What's Inside (12 Slides)

#Slide Topic
1Title Slide
2Cervical Cancer Overview & Radiation Rationale
3What is Brachytherapy?
4Types — LDR vs HDR vs Interstitial
5Treatment Protocol & 3D IGABT Dosimetry
6Physiotherapy Role Overview (Pre/Peri/Post phases)
7Pelvic Floor Rehabilitation
8Lymphoedema & Functional Mobility
9Managing Radiation Complications
10Physiotherapy During BT Procedures (DVT, positioning)
11Multidisciplinary Team Integration
12Summary & Key Takeaways
If you'd like any changes — additional slides, different content focus, specific stage of cervical cancer, or a different design — just let me know!

additional slides focus for physiotherapist role -add more Evidence based article

Your credits are exhausted. Your daily credits reset tomorrow, or you can purchase a top-up for more.
This is a shared conversation. Sign in to Orris to start your own chat.