Describe the natural history, presentation, course, complications and cause of death for common cancers. Make a presentation ppt based on this topic according to Harrison and davidson textbook based
mkdir -p /home/daytona/workspace/cancer-ppt && ls /home/daytona/workspace/
~/cancer-ppt/build.js
const pptxgen = require("pptxgenjs");
const pres = new pptxgen();
pres.layout = "LAYOUT_16x9";
pres.title = "Natural History & Course of Common Cancers";
pres.author = "Harrison's Principles of Internal Medicine 22E";
// ─── THEME COLOURS ─────────────────────────────────────────────────────────
const C = {
navy: "0D1B2A", // deep navy – dominant background
teal: "1A6B72", // mid-teal – accent panels
gold: "E8A838", // warm gold – headings / icons
offW: "F0F4F8", // off-white – body text
white: "FFFFFF",
grey: "B0BEC5", // muted grey – sub-bullets
red: "C0392B", // danger / death highlight
green: "27AE60", // favourable prognosis
darkBg: "071017", // darkest navy for title/end slides
};
// ─── HELPERS ───────────────────────────────────────────────────────────────
function addBg(slide, color) {
slide.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: "100%", h: "100%", fill: { color } });
}
function titleBanner(slide, text) {
// Dark teal banner across top
slide.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: "100%", h: 0.75, fill: { color: C.teal } });
slide.addText(text, {
x: 0.15, y: 0.05, w: 9.7, h: 0.65,
fontSize: 18, bold: true, color: C.white, fontFace: "Calibri",
valign: "middle", margin: 0,
});
}
function sectionTag(slide, tag, x, y) {
slide.addShape(pres.ShapeType.rect, { x, y, w: 1.5, h: 0.28, fill: { color: C.gold }, line: { color: C.gold } });
slide.addText(tag, { x, y: y + 0.02, w: 1.5, h: 0.28, fontSize: 8, bold: true, color: C.navy, align: "center", valign: "middle", margin: 0 });
}
function bullet(text, sub) {
return sub
? { text, options: { bullet: { code: "25AA" }, indentLevel: 1, color: C.grey, fontSize: 10.5, breakLine: true } }
: { text, options: { bullet: { code: "25CF" }, color: C.offW, fontSize: 11.5, bold: false, breakLine: true } };
}
function addContentSlide(cancer, icon, color, sections) {
// sections = [{label, bullets:[{text,sub?}]}]
const slide = pres.addSlide();
addBg(slide, C.navy);
// Coloured left stripe
slide.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 0.12, h: "100%", fill: { color } });
// Cancer name header
slide.addText(`${icon} ${cancer}`, {
x: 0.22, y: 0.1, w: 9.5, h: 0.55,
fontSize: 22, bold: true, color, fontFace: "Calibri", valign: "middle",
});
// Divider line
slide.addShape(pres.ShapeType.line, { x: 0.22, y: 0.72, w: 9.5, h: 0, line: { color, width: 1.5 } });
// Source tag
slide.addText("Source: Harrison's 22E (2025)", {
x: 0.22, y: 5.3, w: 9.5, h: 0.25, fontSize: 8, italic: true, color: C.grey, align: "right",
});
// Lay out sections in columns
const totalSecs = sections.length;
const cols = totalSecs <= 2 ? totalSecs : Math.ceil(totalSecs / 2);
const rows = Math.ceil(totalSecs / cols);
const colW = (9.5 - 0.1 * (cols - 1)) / cols;
const rowH = (4.3 - 0.1 * (rows - 1)) / rows;
sections.forEach((sec, idx) => {
const col = idx % cols;
const row = Math.floor(idx / cols);
const x = 0.22 + col * (colW + 0.1);
const y = 0.82 + row * (rowH + 0.1);
// Section box
slide.addShape(pres.ShapeType.rect, {
x, y, w: colW, h: rowH,
fill: { color: "0F2035" },
line: { color: C.teal, width: 0.5 },
});
// Section label
slide.addText(sec.label, {
x: x + 0.05, y: y + 0.05, w: colW - 0.1, h: 0.3,
fontSize: 10, bold: true, color, fontFace: "Calibri", valign: "middle",
});
// Bullet content
const items = sec.bullets.map(b =>
b.sub
? { text: b.text, options: { bullet: { code: "25AA" }, indentLevel: 1, color: C.grey, fontSize: 9.5, breakLine: true } }
: { text: b.text, options: { bullet: { code: "2023" }, color: C.offW, fontSize: 10.5, breakLine: true } }
);
slide.addText(items, {
x: x + 0.05, y: y + 0.38, w: colW - 0.1, h: rowH - 0.48,
valign: "top", fontFace: "Calibri", autoFit: true,
});
});
return slide;
}
// ═══════════════════════════════════════════════════════════════════════════
// SLIDE 1 – TITLE
// ═══════════════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
addBg(s, C.darkBg);
// Decorative gradient bar
s.addShape(pres.ShapeType.rect, { x: 0, y: 2.0, w: "100%", h: 0.06, fill: { color: C.gold } });
s.addText("Natural History, Presentation,\nCourse, Complications &\nCause of Death in Common Cancers", {
x: 0.6, y: 0.5, w: 8.8, h: 2.1,
fontSize: 32, bold: true, color: C.white, fontFace: "Calibri",
align: "center", valign: "middle",
});
s.addText("Based on Harrison's Principles of Internal Medicine, 22nd Edition (2025)\n& Davidson's Principles and Practice of Medicine", {
x: 0.6, y: 2.3, w: 8.8, h: 0.7,
fontSize: 13, italic: true, color: C.gold, fontFace: "Calibri", align: "center",
});
s.addText("Covering: Lung · Breast · Colorectal · Gastric · Prostate · Cervical · Lymphoma · Pancreatic", {
x: 0.6, y: 3.1, w: 8.8, h: 0.45,
fontSize: 12, color: C.grey, fontFace: "Calibri", align: "center",
});
s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 0.18, h: "100%", fill: { color: C.teal } });
s.addShape(pres.ShapeType.rect, { x: 9.82, y: 0, w: 0.18, h: "100%", fill: { color: C.teal } });
s.addText("For Educational Use · Medical Oncology", {
x: 0.6, y: 5.25, w: 8.8, h: 0.25,
fontSize: 8, color: C.grey, align: "center",
});
}
// ═══════════════════════════════════════════════════════════════════════════
// SLIDE 2 – OVERVIEW TABLE
// ═══════════════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
addBg(s, C.navy);
titleBanner(s, "Common Cancers – At a Glance");
const rows = [
["Cancer", "Incidence", "Peak Age", "Key Risk Factor", "5-yr Survival"],
["Lung", "#1 cause of cancer death (US)", "60–70 yrs", "Smoking (85%)", "~25% (all stages)"],
["Breast", "310,000 new cases/yr (US 2024)", "63 yrs (median)", "Estrogen, BRCA1/2", "91% (all stages)"],
["Colorectal", "153,000/yr (US 2024)", ">50 yrs", "Adenomatous polyps", "65% (all stages)"],
["Gastric", "Higher in Asia/E. Europe", "60–70 yrs", "H. pylori, diet", "~25% (all stages)"],
["Prostate", "299,010 new cases/yr (US 2024)", ">65 yrs", "Age, African-American", "~97% (localised)"],
["Cervical", "Declining in screened nations", "35–45 yrs", "HPV infection", "~67% (all stages)"],
["Pancreatic", "Poor prognosis cancer", "65–75 yrs", "Smoking, DM, obesity", "~12% (all stages)"],
["Lymphoma (NHL)", "Common haematologic malignancy", "Bimodal", "EBV, immunosuppression", "Variable"],
];
const colW = [1.8, 2.2, 1.2, 2.0, 1.6];
const startX = 0.15;
const startY = 0.85;
const rowH = 0.52;
rows.forEach((row, ri) => {
const y = startY + ri * rowH;
row.forEach((cell, ci) => {
const x = startX + colW.slice(0, ci).reduce((a, b) => a + b, 0);
const isHeader = ri === 0;
const isFirstCol = ci === 0;
s.addShape(pres.ShapeType.rect, {
x, y, w: colW[ci], h: rowH,
fill: { color: isHeader ? C.teal : isFirstCol ? "0F2035" : ri % 2 === 0 ? "0A1A2A" : "0D1E30" },
line: { color: "1A3550", width: 0.3 },
});
s.addText(cell, {
x: x + 0.05, y: y + 0.04, w: colW[ci] - 0.1, h: rowH - 0.08,
fontSize: isHeader ? 9.5 : 9,
bold: isHeader || isFirstCol,
color: isHeader ? C.white : isFirstCol ? C.gold : C.offW,
fontFace: "Calibri",
valign: "middle",
wrap: true,
});
});
});
}
// ═══════════════════════════════════════════════════════════════════════════
// SLIDE 3 – LUNG CANCER
// ═══════════════════════════════════════════════════════════════════════════
addContentSlide("Lung Cancer", "🫁", C.gold, [
{
label: "Natural History & Pathology",
bullets: [
{ text: "WHO classifies 4 types: SCLC, Adenocarcinoma, Squamous cell, Large cell" },
{ text: "Adenocarcinoma now most common (decline in smoking)" },
{ text: "Squamous & SCLC strongly linked to tobacco" },
{ text: "SCLC: small cells, neuroendocrine markers (CD56, synaptophysin)" },
{ text: "Driver mutations: EGFR, KRAS, ALK, BRAF, ROS1, MET", sub: true },
{ text: "TP53 + RB1 mutated in ~90% of SCLC", sub: true },
]
},
{
label: "Clinical Presentation",
bullets: [
{ text: "Central tumours: cough, haemoptysis, wheeze, obstructive pneumonia" },
{ text: "Regional spread: SVC syndrome, Horner's, hoarseness (recurrent laryngeal nerve)" },
{ text: "Pancoast syndrome: shoulder/ulnar pain + Horner's (apex tumour)" },
{ text: "Pleural effusion → pain, dyspnoea" },
{ text: "Constitutional: weight loss, anorexia, fever, night sweats" },
]
},
{
label: "Metastatic Course",
bullets: [
{ text: "Squamous: >50% extrathoracic mets at autopsy" },
{ text: "Adenocarcinoma/Large cell: >80% extrathoracic at autopsy" },
{ text: "SCLC: >95% extrathoracic at autopsy" },
{ text: "Brain: headache, seizures, focal deficits" },
{ text: "Bone: pain, pathological fractures, cord compression" },
{ text: "Liver: RUQ pain, hepatomegaly, jaundice" },
]
},
{
label: "Complications & Cause of Death",
bullets: [
{ text: "Respiratory failure (tumour bulk, lymphangitic spread)" },
{ text: "SVC obstruction → head/arm oedema" },
{ text: "Pericardial tamponade / arrhythmia" },
{ text: "Spinal cord compression (epidural mets)" },
{ text: "Haemoptysis, post-obstructive pneumonia, sepsis" },
{ text: "SCLC: rapid dissemination → death within months if untreated" },
{ text: "Paraneoplastic: SIADH, Cushing's, Lambert-Eaton (SCLC)", sub: true },
]
},
]);
// ═══════════════════════════════════════════════════════════════════════════
// SLIDE 4 – BREAST CANCER
// ═══════════════════════════════════════════════════════════════════════════
addContentSlide("Breast Cancer", "🎗", "E91E8C", [
{
label: "Natural History",
bullets: [
{ text: "Begins in lobular/ductal epithelium → atypia → DCIS → invasion → metastasis" },
{ text: "310,000 new cases; ~42,250 deaths/yr (US 2024)" },
{ text: "Estrogen-driven: early menarche, late menopause, late first pregnancy" },
{ text: "BRCA1/2 mutations confer lifetime risk 50–85%" },
{ text: "5-year survival: 91% (all stages), drops sharply with metastasis" },
]
},
{
label: "Presentation",
bullets: [
{ text: "Painless hard breast lump (most common)" },
{ text: "Skin changes: dimpling, peau d'orange (inflammatory BC)" },
{ text: "Nipple discharge / retraction" },
{ text: "Axillary lymphadenopathy" },
{ text: "DCIS: often mammography-detected (no palpable mass)" },
]
},
{
label: "Disease Course",
bullets: [
{ text: "Luminal A (ER+/PR+, HER2-): slow growing, best prognosis" },
{ text: "HER2+ subtype: aggressive, responds to trastuzumab" },
{ text: "Triple-negative (ER-/PR-/HER2-): aggressive, early visceral mets" },
{ text: "Median time to recurrence: 2–5 yrs (can recur decades later for luminal)" },
]
},
{
label: "Complications & Cause of Death",
bullets: [
{ text: "Bone mets (most common site): pain, hypercalcaemia, fractures" },
{ text: "Lung/pleural mets: dyspnoea, effusion" },
{ text: "Liver mets: jaundice, liver failure" },
{ text: "Brain mets (HER2+/TNBC): seizures, neurological decline" },
{ text: "Death: progressive metastatic disease, organ failure" },
{ text: "Lymphoedema (post-axillary dissection/radiation)", sub: true },
]
},
]);
// ═══════════════════════════════════════════════════════════════════════════
// SLIDE 5 – COLORECTAL CANCER
// ═══════════════════════════════════════════════════════════════════════════
addContentSlide("Colorectal Cancer", "🔴", "E67E22", [
{
label: "Natural History",
bullets: [
{ text: "153,000 new cases/yr (US 2024); 2nd most common cancer death" },
{ text: "Arises from adenomatous polyps (normal mucosa → polyp → carcinoma)" },
{ text: "Villous adenomas → cancer 3× more than tubular adenomas" },
{ text: "CIN pathway: APC mutation (most common); KRAS, BRAF follow" },
{ text: "MSI-high (Lynch syndrome): ↑ right-sided cancers, better prognosis" },
{ text: "Rising incidence in <50 yrs (esp. left-sided/rectal)" },
]
},
{
label: "Presentation",
bullets: [
{ text: "Right-sided: anaemia, occult blood loss, weight loss (often asymptomatic)" },
{ text: "Left-sided: change in bowel habit, rectal bleeding, obstruction" },
{ text: "Rectal cancer: tenesmus, mucous discharge, rectal bleeding" },
{ text: "Advanced: abdominal pain, palpable mass, bowel obstruction" },
{ text: "CEA elevated: useful as tumour marker for follow-up" },
]
},
{
label: "Disease Course",
bullets: [
{ text: "Stage I: confined to bowel wall – near-100% 5-yr survival with surgery" },
{ text: "Stage III (lymph node +): adjuvant FOLFOX improves survival ~30%" },
{ text: "Stage IV: median survival ~30 months with modern chemotherapy" },
{ text: "MSI-high mCRC: responds to checkpoint inhibitors (pembrolizumab)" },
{ text: "3–5% lifetime risk of a second bowel cancer after curative resection" },
]
},
{
label: "Complications & Cause of Death",
bullets: [
{ text: "Liver metastases (most common) → hepatic failure" },
{ text: "Lung metastases → respiratory compromise" },
{ text: "Bowel obstruction / perforation → peritonitis, sepsis" },
{ text: "Peritoneal carcinomatosis → malignant ascites, cachexia" },
{ text: "Death: hepatic failure, sepsis, progressive disease" },
]
},
]);
// ═══════════════════════════════════════════════════════════════════════════
// SLIDE 6 – GASTRIC CANCER
// ═══════════════════════════════════════════════════════════════════════════
addContentSlide("Gastric Cancer", "🟠", "F39C12", [
{
label: "Natural History",
bullets: [
{ text: "Most common in Asia, Eastern Europe, and Latin America" },
{ text: "H. pylori → chronic gastritis → intestinal metaplasia → dysplasia → carcinoma" },
{ text: "EBV-positive gastric cancer: ~10%, distinct molecular subtype" },
{ text: "Proximal (GEJ) tumours increasing in Western countries (GERD-related)" },
{ text: "Majority (70%) present locally advanced (stage IIA-III)" },
]
},
{
label: "Presentation",
bullets: [
{ text: "Early: often asymptomatic (caught by screening in Japan/Korea)" },
{ text: "Late: epigastric pain, early satiety, dysphagia (proximal)" },
{ text: "Weight loss, anorexia, nausea/vomiting" },
{ text: "Virchow's node (left supraclavicular), Sister Mary Joseph's node (periumbilical)" },
{ text: "Haematemesis, iron deficiency anaemia" },
]
},
{
label: "Disease Course",
bullets: [
{ text: "Surgery alone: ~25% 5-yr survival; perioperative chemo improves this" },
{ text: "EMR/ESD possible for very early (T1, ≤2 cm, well-differentiated)" },
{ text: "HER2-positive (~15%): trastuzumab + chemo extends survival" },
{ text: "PDL1+ tumours: pembrolizumab added in first-line (KEYNOTE-811)" },
{ text: "Peritoneal spread: ascites, very poor prognosis" },
]
},
{
label: "Complications & Cause of Death",
bullets: [
{ text: "Gastric outlet obstruction → vomiting, malnutrition" },
{ text: "GI bleeding: haematemesis, melaena" },
{ text: "Peritoneal carcinomatosis → bowel obstruction, malignant ascites" },
{ text: "Liver metastases → hepatic failure" },
{ text: "Death: malnutrition/cachexia, haemorrhage, sepsis, organ failure" },
]
},
]);
// ═══════════════════════════════════════════════════════════════════════════
// SLIDE 7 – PROSTATE CANCER
// ═══════════════════════════════════════════════════════════════════════════
addContentSlide("Prostate Cancer", "🔵", "2980B9", [
{
label: "Natural History",
bullets: [
{ text: "299,010 new cases; 35,250 deaths/yr (US 2024)" },
{ text: "Most common non-skin malignancy in men; 2nd leading cancer death" },
{ text: "Originates in peripheral zone; progresses over years to decades" },
{ text: "Hereditary: BRCA2, HOXB13, ATM, PALB2 mutations ↑ risk" },
{ text: "African-American men: higher incidence, more advanced stage at dx" },
{ text: "Autopsy prevalence similar worldwide; clinical incidence varies (PSA use)" },
]
},
{
label: "Clinical States & Presentation",
bullets: [
{ text: "Localised: often asymptomatic; PSA elevation; DRE finding" },
{ text: "Locally advanced: LUTS (frequency, nocturia, hesitancy)" },
{ text: "Rising PSA post-treatment (biochemical recurrence)" },
{ text: "Metastatic castration-sensitive (mCSPC)" },
{ text: "Metastatic castration-resistant (mCRPC): progressive despite ADT" },
{ text: "Bone mets: back pain, pathological fracture (osteoblastic pattern)" },
]
},
{
label: "Disease Course",
bullets: [
{ text: "Gleason score predicts aggressiveness (6=low risk, 8-10=high risk)" },
{ text: "Active surveillance appropriate for low-risk localised disease" },
{ text: "Incidence/mortality ratio very high: most men die WITH, not FROM prostate Ca" },
{ text: "ADT (castration): backbone of advanced disease; eventual resistance" },
{ text: "mCRPC: median survival ~3 yrs (enzalutamide, abiraterone, docetaxel)" },
]
},
{
label: "Complications & Cause of Death",
bullets: [
{ text: "Spinal cord compression (metastatic): emergency" },
{ text: "Pathological fractures: spine > femur" },
{ text: "Renal failure (bilateral ureteral obstruction from nodal mets)" },
{ text: "Bone marrow infiltration → cytopenias" },
{ text: "Death: osteoblastic bone mets, sepsis, renal failure, cachexia" },
{ text: "ADT side effects: osteoporosis, metabolic syndrome, cardiac events", sub: true },
]
},
]);
// ═══════════════════════════════════════════════════════════════════════════
// SLIDE 8 – CERVICAL CANCER
// ═══════════════════════════════════════════════════════════════════════════
addContentSlide("Cervical Cancer", "🟣", "8E44AD", [
{
label: "Natural History",
bullets: [
{ text: "Almost entirely caused by persistent high-risk HPV infection (HPV 16, 18)" },
{ text: "Normal cervix → CIN 1 → CIN 2/3 → carcinoma in situ → invasive" },
{ text: "Progression from CIN to invasion: 10–15 years (allows screening)" },
{ text: "Squamous cell carcinoma: 70–80%; Adenocarcinoma: 20–25%" },
{ text: "Incidence declining in nations with Pap/HPV screening programmes" },
]
},
{
label: "Presentation",
bullets: [
{ text: "Early: often asymptomatic (detected on smear)" },
{ text: "Post-coital, inter-menstrual, or post-menopausal bleeding" },
{ text: "Offensive vaginal discharge" },
{ text: "Advanced: pelvic/back pain, leg oedema (lymphatic obstruction)" },
{ text: "Haematuria / rectal bleeding (bladder/rectal invasion – stage IVA)" },
]
},
{
label: "Disease Course",
bullets: [
{ text: "Stage IB1: curative surgery (radical hysterectomy) or chemoradiation" },
{ text: "Stage IIB+: concurrent cisplatin-based chemoradiation (standard)" },
{ text: "Pembrolizumab + chemoradiation ± bevacizumab: new standard (KEYNOTE-A18)" },
{ text: "Distant mets: lungs, liver, bone (late)" },
{ text: "Recurrence: 70% within 2 years of primary treatment" },
]
},
{
label: "Complications & Cause of Death",
bullets: [
{ text: "Vesicovaginal / rectovaginal fistulae" },
{ text: "Hydronephrosis → renal failure (bilateral ureteral obstruction)" },
{ text: "Massive haemorrhage from local invasion" },
{ text: "Pelvic sepsis, bowel obstruction" },
{ text: "Death: renal failure, haemorrhage, sepsis, cachexia" },
{ text: "Radiation complications: radiation cystitis, proctitis, bowel stricture", sub: true },
]
},
]);
// ═══════════════════════════════════════════════════════════════════════════
// SLIDE 9 – LYMPHOMA (NHL/HL)
// ═══════════════════════════════════════════════════════════════════════════
addContentSlide("Lymphoma (Hodgkin's & Non-Hodgkin's)", "🩸", "1ABC9C", [
{
label: "Natural History – Hodgkin's Lymphoma (HL)",
bullets: [
{ text: "Bimodal age: 15–35 yrs & >55 yrs; Reed-Sternberg cells (CD15+, CD30+)" },
{ text: "Nodular sclerosis most common subtype in young adults" },
{ text: "Predictable contiguous nodal spread (Ann Arbor staging)" },
{ text: "EBV implicated in mixed cellularity subtype" },
{ text: "Highly curable: 5-yr survival >85% (stage I/II)" },
]
},
{
label: "Natural History – Non-Hodgkin's Lymphoma (NHL)",
bullets: [
{ text: "Heterogeneous group; indolent vs aggressive subtypes" },
{ text: "Diffuse Large B-Cell (DLBCL): most common aggressive NHL" },
{ text: "Follicular lymphoma: indolent, waxing/waning; median survival >12 yrs" },
{ text: "Risk factors: HIV, EBV, H. pylori (gastric MALT), immunosuppression" },
{ text: "Non-contiguous spread; bone marrow involvement common in indolent NHL" },
]
},
{
label: "Presentation",
bullets: [
{ text: "Painless lymphadenopathy (cervical, axillary, inguinal)" },
{ text: "B symptoms: fever >38°C, drenching night sweats, >10% weight loss" },
{ text: "HL: mediastinal mass, alcohol-induced node pain (specific)" },
{ text: "Pruritus (HL), SVC syndrome (mediastinal involvement)" },
{ text: "Extranodal NHL: GI (MALT), CNS, skin (mycosis fungoides)" },
]
},
{
label: "Complications & Cause of Death",
bullets: [
{ text: "SVC syndrome, airway compression (mediastinal disease)" },
{ text: "Bone marrow failure: cytopenias, susceptibility to infections" },
{ text: "CNS involvement (DLBCL, Burkitt's) → neurological decline" },
{ text: "Tumour lysis syndrome (Burkitt's/aggressive NHL on treatment)" },
{ text: "Richter's transformation (CLL → DLBCL): very poor prognosis" },
{ text: "Death: infection (immunosuppressed), progressive disease, organ failure" },
]
},
]);
// ═══════════════════════════════════════════════════════════════════════════
// SLIDE 10 – PANCREATIC CANCER
// ═══════════════════════════════════════════════════════════════════════════
addContentSlide("Pancreatic Cancer", "🟡", "F1C40F", [
{
label: "Natural History",
bullets: [
{ text: "Ductal adenocarcinoma >85% of pancreatic tumours" },
{ text: "KRAS mutation: present in >90%; CDKN2A, TP53, SMAD4 also key" },
{ text: "Precursor: PanIN lesions (pancreatic intraepithelial neoplasia)" },
{ text: "Risk factors: smoking, chronic pancreatitis, DM, obesity, family history" },
{ text: "Mean age at diagnosis: 65–75 yrs; slight male predominance" },
]
},
{
label: "Clinical Presentation",
bullets: [
{ text: "Insidious onset; often diagnosed late (no early symptoms)" },
{ text: "Head of pancreas: painless obstructive jaundice (Courvoisier's gallbladder)" },
{ text: "Body/tail tumours: epigastric/back pain, weight loss (often advanced)" },
{ text: "New-onset DM in elderly should raise suspicion" },
{ text: "Trousseau's syndrome: migratory thrombophlebitis" },
]
},
{
label: "Disease Course",
bullets: [
{ text: "Only 15–20% resectable at diagnosis (Whipple's procedure)" },
{ text: "Borderline resectable: neoadjuvant FOLFIRINOX improves resectability" },
{ text: "Locally advanced / metastatic: median survival 6–12 months" },
{ text: "FOLFIRINOX or Gemcitabine/nab-paclitaxel: first-line palliative" },
{ text: "BRCA1/2 germline mutations (~5–7%): olaparib maintenance after platinum" },
{ text: "5-yr survival: ~12% overall; ~25% after R0 resection" },
]
},
{
label: "Complications & Cause of Death",
bullets: [
{ text: "Biliary obstruction → cholangitis, hepatic failure" },
{ text: "Duodenal obstruction → gastric outlet obstruction" },
{ text: "Coeliac plexus invasion → severe, refractory abdominal pain" },
{ text: "Portal vein thrombosis / splenic vein thrombosis → varices" },
{ text: "Malabsorption (exocrine insufficiency) → severe malnutrition" },
{ text: "Death: hepatic failure, sepsis (cholangitis), progressive cachexia" },
]
},
]);
// ═══════════════════════════════════════════════════════════════════════════
// SLIDE 11 – MECHANISMS OF CANCER DEATH (summary)
// ═══════════════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
addBg(s, C.navy);
titleBanner(s, "Common Mechanisms of Death in Advanced Cancer");
const boxes = [
{ title: "Organ Failure", icon: "⚕", items: ["Liver failure (mets/infiltration)", "Renal failure (obstruction/mets)", "Respiratory failure (lung primary/mets)", "Bone marrow failure (infiltration)"], color: C.red },
{ title: "Infection / Sepsis", icon: "🦠", items: ["Neutropaenic sepsis (myelosuppression)", "Post-obstructive pneumonia", "Cholangitis (biliary obstruction)", "Immunocompromised state (chemo/tumour)"], color: "E67E22" },
{ title: "Local Complications", icon: "⚠", items: ["GI/pulmonary haemorrhage", "Bowel obstruction & perforation", "SVC syndrome", "Spinal cord compression"], color: "8E44AD" },
{ title: "Systemic Effects", icon: "📉", items: ["Cancer cachexia & malnutrition", "VTE / pulmonary embolism", "Hypercalcaemia of malignancy", "Paraneoplastic syndromes (SIADH, DIC)"], color: "2980B9" },
];
boxes.forEach((box, i) => {
const x = 0.15 + (i % 2) * 4.85;
const y = 0.85 + Math.floor(i / 2) * 2.3;
s.addShape(pres.ShapeType.rect, { x, y, w: 4.65, h: 2.15, fill: { color: "0F2035" }, line: { color: box.color, width: 1 } });
s.addText(`${box.icon} ${box.title}`, { x: x + 0.1, y: y + 0.05, w: 4.45, h: 0.35, fontSize: 12, bold: true, color: box.color, fontFace: "Calibri" });
const items = box.items.map((t, idx) => ({ text: t, options: { bullet: { code: "25CF" }, color: C.offW, fontSize: 10.5, breakLine: idx < box.items.length - 1 } }));
s.addText(items, { x: x + 0.1, y: y + 0.44, w: 4.45, h: 1.65, fontFace: "Calibri", valign: "top" });
});
}
// ═══════════════════════════════════════════════════════════════════════════
// SLIDE 12 – PARANEOPLASTIC SYNDROMES
// ═══════════════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
addBg(s, C.navy);
titleBanner(s, "Paraneoplastic Syndromes – Cancer-Specific Complications");
const rows = [
["Syndrome", "Cancer", "Mechanism", "Manifestation"],
["SIADH", "SCLC", "Ectopic ADH secretion", "Hyponatraemia, confusion, seizures"],
["Ectopic ACTH (Cushing's)", "SCLC, Carcinoid", "Ectopic ACTH secretion", "Hypokalaemia, hypertension, hyperglycaemia"],
["Hypercalcaemia of malignancy", "Breast, Lung SCC, MM", "PTHrP secretion / bony mets", "Confusion, polyuria, constipation, renal failure"],
["Eaton-Lambert syndrome", "SCLC", "Anti-VGCC antibodies", "Proximal weakness, ↓ reflexes (improves with repetition)"],
["Trousseau's syndrome", "Pancreas, Lung", "Hypercoagulable state", "Migratory thrombophlebitis"],
["DIC", "APL, mucin-secreting tumours", "Procoagulant release", "Bleeding + thrombosis simultaneously"],
["Cerebellar degeneration", "Lung, Breast, Ovary", "Anti-Yo, anti-Hu antibodies", "Ataxia, dysarthria, nystagmus"],
["Acanthosis nigricans", "Gastric, GI cancers", "Insulin-like growth factors", "Velvety hyperpigmented skin folds"],
];
const colW = [2.1, 2.0, 2.5, 3.15];
const startX = 0.12;
const startY = 0.85;
const rowH = 0.475;
rows.forEach((row, ri) => {
const y = startY + ri * rowH;
row.forEach((cell, ci) => {
const x = startX + colW.slice(0, ci).reduce((a, b) => a + b, 0);
const isHeader = ri === 0;
s.addShape(pres.ShapeType.rect, {
x, y, w: colW[ci], h: rowH,
fill: { color: isHeader ? C.teal : ri % 2 === 0 ? "0A1A2A" : "0D1E30" },
line: { color: "1A3550", width: 0.3 },
});
s.addText(cell, {
x: x + 0.04, y: y + 0.03, w: colW[ci] - 0.08, h: rowH - 0.06,
fontSize: isHeader ? 9.5 : 9,
bold: isHeader,
color: isHeader ? C.white : ci === 0 ? C.gold : C.offW,
fontFace: "Calibri",
valign: "middle",
wrap: true,
});
});
});
}
// ═══════════════════════════════════════════════════════════════════════════
// SLIDE 13 – END / THANK YOU
// ═══════════════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
addBg(s, C.darkBg);
s.addShape(pres.ShapeType.rect, { x: 0, y: 2.2, w: "100%", h: 0.06, fill: { color: C.gold } });
s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 0.18, h: "100%", fill: { color: C.teal } });
s.addShape(pres.ShapeType.rect, { x: 9.82, y: 0, w: 0.18, h: "100%", fill: { color: C.teal } });
s.addText("Key Takeaways", {
x: 0.5, y: 0.3, w: 9.0, h: 0.55,
fontSize: 26, bold: true, color: C.gold, fontFace: "Calibri", align: "center",
});
const points = [
"Early detection dramatically improves survival across all cancer types (screening is essential)",
"SCLC and pancreatic cancer carry the worst prognosis due to early dissemination and late presentation",
"Breast and prostate cancers can follow an indolent course; most patients die WITH the disease",
"Paraneoplastic syndromes can be the presenting feature and guide diagnosis",
"Modern targeted therapies and immunotherapy have transformed the natural history of many cancers",
"Cause of death is usually organ failure, infection/sepsis, haemorrhage, or progressive cachexia",
];
const items = points.map((p, i) => ({
text: p,
options: { bullet: { code: "25B6" }, color: i % 2 === 0 ? C.offW : C.grey, fontSize: 11.5, breakLine: i < points.length - 1 }
}));
s.addText(items, {
x: 0.5, y: 2.45, w: 9.0, h: 2.8,
fontFace: "Calibri", valign: "top",
});
s.addText("Reference: Harrison's Principles of Internal Medicine, 22nd Edition (McGraw-Hill, 2025)", {
x: 0.5, y: 5.25, w: 9.0, h: 0.25,
fontSize: 8.5, italic: true, color: C.grey, align: "center",
});
}
// ─── SAVE ──────────────────────────────────────────────────────────────────
const OUT = "/home/daytona/workspace/cancer-ppt/Common_Cancers_Natural_History.pptx";
pres.writeFile({ fileName: OUT }).then(() => {
console.log("Done:", OUT);
}).catch(e => { console.error(e); process.exit(1); });
cd /home/daytona/workspace/cancer-ppt && node build.js 2>&1
ls -lh /home/daytona/workspace/cancer-ppt/Common_Cancers_Natural_History.pptx
python3 -m markitdown /home/daytona/workspace/cancer-ppt/Common_Cancers_Natural_…
cd /home/daytona/workspace/cancer-ppt && python3 /home/daytona/skills/pptx/scrip…
Common Cancers Natural History
Presentation · PPTX
| Slide | Content |
|---|---|
| 1 | Title slide |
| 2 | All-cancers overview table (incidence, age, risk factor, 5-yr survival) |
| 3 | Lung Cancer - NSCLC/SCLC pathology, presentation, metastatic course, cause of death |
| 4 | Breast Cancer - natural history, subtypes (luminal/HER2+/TNBC), complications |
| 5 | Colorectal Cancer - adenoma-carcinoma sequence, CIN/MSI pathways, staging |
| 6 | Gastric Cancer - H. pylori sequence, presentation, HER2/PDL1 targeted therapy |
| 7 | Prostate Cancer - clinical states model, Gleason scoring, CRPC course |
| 8 | Cervical Cancer - HPV-CIN-invasion continuum, FIGO staging, complications |
| 9 | Lymphoma (HL & NHL) - Reed-Sternberg, DLBCL, follicular, B symptoms, causes of death |
| 10 | Pancreatic Cancer - late presentation, FOLFIRINOX, coeliac plexus, cachexia |
| 11 | Common Mechanisms of Death - organ failure, sepsis, local complications, systemic effects |
| 12 | Paraneoplastic Syndromes table - SIADH, ectopic ACTH, Eaton-Lambert, Trousseau's, DIC |
| 13 | Key Takeaways |