Treatment of Shortness of breath
"dyspnea" AND "treatment" AND "management"
| Category | Conditions |
|---|---|
| Cardiac | Heart failure, myocardial ischemia, pericardial tamponade, valvular disease |
| Pulmonary | COPD, asthma, pneumonia, pulmonary embolism, pneumothorax, pleural effusion, interstitial lung disease |
| Infectious | Acute bronchitis, pneumonia, epiglottitis |
| Hematologic | Severe anemia |
| Metabolic | Diabetic ketoacidosis, lactic acidosis (Kussmaul breathing) |
| Neuromuscular | Guillain-Barre, myasthenia gravis, diaphragmatic paralysis |
| Toxic/Drug | Salicylate overdose, toxic inhalations |
| Anxiety/Psychogenic | Hyperventilation syndrome, sighing syndrome |
| Quality of Dyspnea | Physiology | Treatment |
|---|---|---|
| Air hunger / urge to breathe | Chemoreceptor stimulation | Supplemental O₂, nasal gas flow, cool air on face, opioids |
| Chest tightness | Airway receptor stimulation | Inhaled bronchodilators (β-agonists, anticholinergics, steroids) |
| Cannot get a deep breath | Dynamic hyperinflation | Pursed-lip breathing, slow breathing retraining |
| Increased work/effort to breathe | Mechanical load or neuromuscular weakness | Inspiratory muscle training, non-invasive ventilation (BiPAP) |
| Feeling of rapid/heavy breathing | Deconditioning, metaboreceptors | Exercise training / pulmonary rehabilitation |
| All qualities | Altered central perception | Pulmonary rehab desensitization, morphine |
| Treatment | Evidence Strength | Best For |
|---|---|---|
| Treat underlying cause | Strongest | All dyspnea |
| Supplemental O₂ (if SpO₂ <88%) | Strong | Hypoxemic patients |
| Short-acting bronchodilators | Strong | Asthma, COPD |
| IV Diuretics | Strong | Heart failure |
| NIV/BiPAP | Strong | Acute hypercapnic/hypoxemic failure |
| Pulmonary rehabilitation | Strong | Chronic COPD, post-COVID |
| Low-dose opioids | Moderate | Refractory/palliative dyspnea |
| Fan/cool air | Moderate | Any dyspnea - simple adjunct |
| Pursed-lip/breathing retraining | Moderate | COPD, hyperventilation |
| Anxiolytics | Weak | Hyperventilation, anxiety-driven |
| Inhaled furosemide | Weak/mixed | Subgroup of patients |
Can,you make slides
mkdir -p /home/daytona/workspace/dyspnea-slides && ls /home/daytona/workspace/dy…
~/dyspnea-slides/create_slides.js
const pptxgen = require("pptxgenjs");
const pres = new pptxgen();
pres.layout = "LAYOUT_16x9";
pres.title = "Treatment of Shortness of Breath (Dyspnea)";
pres.author = "Orris Medical";
// ─── COLOR PALETTE ───────────────────────────────────────────────────
// Deep teal/navy medical theme
const C = {
navy: "0D2B4E", // dominant dark (title slides, headers)
teal: "0E7C7B", // supporting accent
sky: "4ABCD9", // highlight / bullets
white: "FFFFFF",
offWhite: "F4F8FB",
light: "D6EAF0",
mid: "B0CDD8",
text: "1A2E3C",
sub: "4A6274",
red: "C0392B",
amber: "E67E22",
green: "27AE60",
};
// ─── HELPERS ─────────────────────────────────────────────────────────
function darkSlide(slide) {
slide.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.navy }, line: { color: C.navy } });
}
function lightSlide(slide) {
slide.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.offWhite }, line: { color: C.offWhite } });
}
function accentBar(slide, y, h = 0.06) {
slide.addShape(pres.ShapeType.rect, { x: 0, y, w: 10, h, fill: { color: C.teal }, line: { color: C.teal } });
}
function sectionHeader(slide, text, y = 0.28) {
slide.addText(text, {
x: 0.5, y, w: 9, h: 0.45,
fontSize: 13, bold: true, color: C.teal,
fontFace: "Calibri", margin: 0, charSpacing: 1.5,
});
}
function bodyTitle(slide, text, y = 0.18) {
slide.addText(text, {
x: 0.5, y, w: 9, h: 0.6,
fontSize: 22, bold: true, color: C.navy,
fontFace: "Calibri", margin: 0,
});
}
function divider(slide, y) {
slide.addShape(pres.ShapeType.rect, { x: 0.5, y, w: 0.5, h: 0.05, fill: { color: C.sky }, line: { color: C.sky } });
}
function footerNote(slide, text) {
slide.addText(text, {
x: 0.3, y: 5.22, w: 9.4, h: 0.3,
fontSize: 7.5, color: C.sub, fontFace: "Calibri", italic: true, margin: 0,
});
}
function slideNum(slide, n) {
slide.addText(`${n}`, {
x: 9.5, y: 5.2, w: 0.4, h: 0.3,
fontSize: 8, color: C.sub, align: "right", margin: 0,
});
}
// ═══════════════════════════════════════════════════════════════════
// SLIDE 1 - TITLE
// ═══════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
darkSlide(s);
// Teal accent stripe left
s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 0.18, h: 5.625, fill: { color: C.teal }, line: { color: C.teal } });
// Decorative bottom bar
s.addShape(pres.ShapeType.rect, { x: 0, y: 5.2, w: 10, h: 0.425, fill: { color: C.teal }, line: { color: C.teal } });
s.addText("TREATMENT OF", {
x: 0.5, y: 1.1, w: 9, h: 0.55,
fontSize: 18, bold: false, color: C.sky, fontFace: "Calibri",
charSpacing: 4, margin: 0,
});
s.addText("Shortness of Breath", {
x: 0.5, y: 1.65, w: 9, h: 1.1,
fontSize: 44, bold: true, color: C.white, fontFace: "Calibri", margin: 0,
});
s.addText("(Dyspnea)", {
x: 0.5, y: 2.75, w: 9, h: 0.6,
fontSize: 26, bold: false, color: C.mid, fontFace: "Calibri", italic: true, margin: 0,
});
s.addText("Mechanisms · Diagnosis · Pharmacologic & Non-Pharmacologic Management · Palliative Care", {
x: 0.5, y: 3.55, w: 9, h: 0.45,
fontSize: 11, color: C.mid, fontFace: "Calibri", margin: 0,
});
s.addText("Based on Harrison's 22e · Murray & Nadel's · Goldman-Cecil Medicine · Miller's Anesthesia", {
x: 0.3, y: 5.27, w: 9.4, h: 0.25,
fontSize: 8, color: C.white, fontFace: "Calibri", margin: 0,
});
}
// ═══════════════════════════════════════════════════════════════════
// SLIDE 2 - WHAT IS DYSPNEA?
// ═══════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
lightSlide(s);
accentBar(s, 0, 0.09);
bodyTitle(s, "What is Dyspnea?");
divider(s, 0.82);
// Definition box
s.addShape(pres.ShapeType.rect, {
x: 0.5, y: 0.95, w: 9, h: 0.85,
fill: { color: C.navy }, line: { color: C.navy },
shadow: { type: "outer", color: "000000", blur: 6, offset: 2, angle: 135, opacity: 0.12 },
});
s.addText('"A subjective experience of breathing discomfort that consists of qualitatively distinct sensations that vary in intensity"', {
x: 0.6, y: 0.97, w: 8.8, h: 0.8,
fontSize: 12, color: C.light, fontFace: "Calibri", italic: true, valign: "middle", margin: 6,
});
s.addText("— American Thoracic Society", {
x: 0.6, y: 1.75, w: 8.8, h: 0.25,
fontSize: 9, color: C.sky, fontFace: "Calibri", align: "right", margin: 0,
});
// Stats row
const stats = [
{ val: "25%", label: "of middle-aged & older adults" },
{ val: "16%", label: "of non-critical hospital admissions" },
{ val: "49%", label: "of critically ill patients" },
];
stats.forEach((st, i) => {
const x = 0.5 + i * 3.1;
s.addShape(pres.ShapeType.rect, {
x, y: 2.12, w: 2.85, h: 1.1,
fill: { color: C.light }, line: { color: C.mid },
});
s.addText(st.val, { x, y: 2.18, w: 2.85, h: 0.55, fontSize: 28, bold: true, color: C.teal, align: "center", valign: "middle", margin: 0 });
s.addText(st.label, { x, y: 2.73, w: 2.85, h: 0.42, fontSize: 9, color: C.sub, align: "center", margin: 0 });
});
// Four mechanisms
s.addText("FOUR PHYSIOLOGIC ORIGINS", { x: 0.5, y: 3.33, w: 9, h: 0.28, fontSize: 9.5, bold: true, color: C.teal, charSpacing: 1.5, margin: 0 });
const mechs = [
"Hypoxemia / Hypercapnia → chemoreceptor stimulation",
"Stimulation of sensory receptors in airways, lungs, chest wall",
"Mechanical load on respiratory system (↑resistance, ↓compliance)",
"Neuromuscular weakness — unable to handle even normal loads",
];
s.addText(
mechs.map((m, i) => ({ text: `${i+1}. ${m}`, options: { bullet: false, breakLine: i < mechs.length-1 } })),
{ x: 0.5, y: 3.63, w: 9.2, h: 1.45, fontSize: 11, color: C.text, fontFace: "Calibri", lineSpacingMultiple: 1.35 }
);
footerNote(s, "Murray & Nadel's Textbook of Respiratory Medicine | Goldman-Cecil Medicine");
slideNum(s, 2);
}
// ═══════════════════════════════════════════════════════════════════
// SLIDE 3 - COMMON CAUSES
// ═══════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
lightSlide(s);
accentBar(s, 0, 0.09);
bodyTitle(s, "Common Causes of Dyspnea");
divider(s, 0.82);
const categories = [
{ cat: "CARDIAC", color: C.red, items: ["Heart failure (LVF/RVF)", "Myocardial ischemia/MI", "Pericardial tamponade", "Valvular disease"] },
{ cat: "PULMONARY", color: C.teal, items: ["COPD / Asthma", "Pulmonary embolism", "Pneumothorax", "Interstitial lung disease"] },
{ cat: "INFECTIVE", color: C.amber, items: ["Pneumonia", "Acute bronchitis", "Epiglottitis / croup", "Sepsis"] },
{ cat: "OTHER", color: C.sky, items: ["Severe anemia", "DKA / metabolic acidosis", "Neuromuscular disease", "Anxiety / hyperventilation"] },
];
categories.forEach((cat, i) => {
const col = i % 2;
const row = Math.floor(i / 2);
const x = 0.35 + col * 4.85;
const y = 0.98 + row * 2.15;
s.addShape(pres.ShapeType.rect, {
x, y, w: 4.55, h: 2.0,
fill: { color: C.white },
line: { color: C.mid, pt: 1 },
shadow: { type: "outer", color: "000000", blur: 4, offset: 1, angle: 135, opacity: 0.08 },
});
// Cat header
s.addShape(pres.ShapeType.rect, { x, y, w: 4.55, h: 0.38, fill: { color: cat.color }, line: { color: cat.color } });
s.addText(cat.cat, { x: x+0.12, y: y+0.03, w: 4.3, h: 0.33, fontSize: 10.5, bold: true, color: C.white, charSpacing: 1.5, valign: "middle", margin: 0 });
s.addText(
cat.items.map((item, j) => ({ text: `• ${item}`, options: { breakLine: j < cat.items.length-1 } })),
{ x: x+0.15, y: y+0.43, w: 4.25, h: 1.5, fontSize: 10.5, color: C.text, lineSpacingMultiple: 1.35 }
);
});
footerNote(s, "Goldman-Cecil Medicine | Harrison's Principles of Internal Medicine 22e");
slideNum(s, 3);
}
// ═══════════════════════════════════════════════════════════════════
// SLIDE 4 - DIAGNOSTIC APPROACH
// ═══════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
lightSlide(s);
accentBar(s, 0, 0.09);
bodyTitle(s, "Diagnostic Approach");
divider(s, 0.82);
// Arrow/flow steps
const steps = [
{ n: "1", title: "History & Vitals", detail: "Onset (acute vs chronic) · Orthopnea · PND · SpO₂ · RR · Pulsus paradoxus" },
{ n: "2", title: "Physical Exam", detail: "Accessory muscle use · Tripod position · Auscultation (wheeze, crackles, rales) · JVD · Edema" },
{ n: "3", title: "Investigations", detail: "ECG · CXR · ABG · CBC · BNP · D-dimer · Spirometry · Echocardiogram · HRCT" },
{ n: "4", title: "Identify Cause", detail: "Obstructive? Restrictive? Cardiac? Vascular? Neuromuscular? Psychogenic?" },
];
steps.forEach((step, i) => {
const y = 0.97 + i * 1.07;
// Number circle
s.addShape(pres.ShapeType.ellipse, { x: 0.38, y: y+0.05, w: 0.45, h: 0.45, fill: { color: C.teal }, line: { color: C.teal } });
s.addText(step.n, { x: 0.38, y: y+0.05, w: 0.45, h: 0.45, fontSize: 14, bold: true, color: C.white, align: "center", valign: "middle", margin: 0 });
// Connector line
if (i < steps.length - 1) {
s.addShape(pres.ShapeType.rect, { x: 0.57, y: y+0.5, w: 0.07, h: 0.64, fill: { color: C.mid }, line: { color: C.mid } });
}
// Content box
s.addShape(pres.ShapeType.rect, {
x: 1.0, y, w: 8.7, h: 0.9,
fill: { color: C.white }, line: { color: C.mid, pt: 1 },
});
s.addText(step.title, { x: 1.15, y: y+0.05, w: 3.5, h: 0.38, fontSize: 13, bold: true, color: C.navy, margin: 0 });
s.addText(step.detail, { x: 1.15, y: y+0.43, w: 8.4, h: 0.4, fontSize: 10, color: C.sub, margin: 0 });
});
s.addText("SpO₂ < 88% at rest or with activity → supplemental oxygen indicated", {
x: 1.0, y: 5.08, w: 8.7, h: 0.28,
fontSize: 10, bold: true, color: C.red, margin: 0,
});
footerNote(s, "Harrison's Principles of Internal Medicine 22e | Murray & Nadel's");
slideNum(s, 4);
}
// ═══════════════════════════════════════════════════════════════════
// SLIDE 5 - TREATMENT OVERVIEW (TWO GOALS)
// ═══════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
darkSlide(s);
s.addShape(pres.ShapeType.rect, { x: 0, y: 5.2, w: 10, h: 0.425, fill: { color: C.teal }, line: { color: C.teal } });
s.addText("TREATMENT FRAMEWORK", {
x: 0.5, y: 0.2, w: 9, h: 0.45,
fontSize: 13, bold: true, color: C.sky, charSpacing: 3, margin: 0,
});
s.addText("Two Essential Goals", {
x: 0.5, y: 0.65, w: 9, h: 0.7,
fontSize: 32, bold: true, color: C.white, margin: 0,
});
// Goal 1
s.addShape(pres.ShapeType.rect, { x: 0.4, y: 1.55, w: 4.35, h: 3.35, fill: { color: "0A2540" }, line: { color: C.teal, pt: 2 } });
s.addShape(pres.ShapeType.rect, { x: 0.4, y: 1.55, w: 4.35, h: 0.42, fill: { color: C.teal }, line: { color: C.teal } });
s.addText("GOAL 1", { x: 0.5, y: 1.57, w: 4.1, h: 0.38, fontSize: 11, bold: true, color: C.white, charSpacing: 2, margin: 0 });
s.addText("Treat the\nUnderlying Cause", { x: 0.5, y: 2.02, w: 4.1, h: 0.9, fontSize: 19, bold: true, color: C.sky, lineSpacingMultiple: 1.2, margin: 0 });
s.addText([
{ text: "• Bronchodilators → asthma/COPD\n", options: {} },
{ text: "• Diuretics → heart failure\n", options: {} },
{ text: "• Antibiotics → pneumonia\n", options: {} },
{ text: "• Thoracentesis → pleural effusion\n", options: {} },
{ text: "• Anticoagulation → pulmonary embolism", options: {} },
], { x: 0.55, y: 2.97, w: 4.1, h: 1.85, fontSize: 10.5, color: C.mid, lineSpacingMultiple: 1.35 });
// Goal 2
s.addShape(pres.ShapeType.rect, { x: 5.25, y: 1.55, w: 4.35, h: 3.35, fill: { color: "0A2540" }, line: { color: C.sky, pt: 2 } });
s.addShape(pres.ShapeType.rect, { x: 5.25, y: 1.55, w: 4.35, h: 0.42, fill: { color: C.sky }, line: { color: C.sky } });
s.addText("GOAL 2", { x: 5.35, y: 1.57, w: 4.1, h: 0.38, fontSize: 11, bold: true, color: C.navy, charSpacing: 2, margin: 0 });
s.addText("Relieve the\nSymptom", { x: 5.35, y: 2.02, w: 4.1, h: 0.9, fontSize: 19, bold: true, color: C.white, lineSpacingMultiple: 1.2, margin: 0 });
s.addText([
{ text: "When full cause reversal is not possible:\n", options: { italic: true } },
{ text: "• Opioids for refractory dyspnea\n", options: {} },
{ text: "• Supplemental O₂ if SpO₂ < 88%\n", options: {} },
{ text: "• Pulmonary rehabilitation\n", options: {} },
{ text: "• Non-pharmacologic measures", options: {} },
], { x: 5.4, y: 2.97, w: 4.1, h: 1.85, fontSize: 10.5, color: C.mid, lineSpacingMultiple: 1.35 });
s.addText("Harrison's 22e: \"Chronic breathlessness syndrome = breathlessness persisting despite optimal treatment of underlying pathophysiology\"", {
x: 0.3, y: 5.23, w: 9.4, h: 0.25,
fontSize: 7.5, color: C.white, italic: true, margin: 0,
});
}
// ═══════════════════════════════════════════════════════════════════
// SLIDE 6 - NON-PHARMACOLOGIC TREATMENTS
// ═══════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
lightSlide(s);
accentBar(s, 0, 0.09);
bodyTitle(s, "Non-Pharmacologic Treatments");
divider(s, 0.82);
const cards = [
{
title: "Supplemental Oxygen",
color: C.sky,
points: ["Indicated when SpO₂ < 88% at rest or with activity", "Improves mortality in hypoxemic COPD patients", "Nasal flow also activates nose receptors → ↓ respiratory drive"],
},
{
title: "Pulmonary Rehabilitation",
color: C.teal,
points: ["Exercise + education + breathing retraining", "↓ dyspnea · ↑ exercise capacity · ↑ quality of life", "Desensitizes patients to breathing discomfort", "Yoga & Tai Chi: adjuncts for obstructive lung disease"],
},
{
title: "Breathing Techniques",
color: C.navy,
points: ["Pursed-lip breathing → ↓ dynamic hyperinflation in COPD", "Slow breathing retraining → relieves 'can't get deep breath'", "Diaphragmatic breathing and respiratory biofeedback"],
},
{
title: "Fan / Cool Air on Face",
color: C.amber,
points: ["Activates facial receptors via trigeminal nerve", "Reduces central drive to breathe", "Simple, non-invasive, underused in clinical practice"],
},
{
title: "NIV / BiPAP",
color: C.red,
points: ["Provides inspiratory muscle support", "Reduces work of breathing and muscle fatigue", "Standard of care in acute hypercapnic respiratory failure"],
},
{
title: "Pleural/Procedural Relief",
color: C.sub,
points: ["Thoracentesis for pleural effusion", "Chest drain for pneumothorax", "Direct mechanical relief of dyspnea"],
},
];
cards.forEach((card, i) => {
const col = i % 3;
const row = Math.floor(i / 3);
const x = 0.25 + col * 3.22;
const y = 0.97 + row * 2.22;
s.addShape(pres.ShapeType.rect, {
x, y, w: 3.1, h: 2.1,
fill: { color: C.white }, line: { color: C.mid, pt: 1 },
shadow: { type: "outer", color: "000000", blur: 5, offset: 2, angle: 135, opacity: 0.09 },
});
s.addShape(pres.ShapeType.rect, { x, y, w: 3.1, h: 0.38, fill: { color: card.color }, line: { color: card.color } });
s.addText(card.title, { x: x+0.1, y: y+0.04, w: 2.9, h: 0.32, fontSize: 10, bold: true, color: C.white, valign: "middle", margin: 0 });
s.addText(
card.points.map((p, j) => ({ text: `• ${p}`, options: { breakLine: j < card.points.length-1 } })),
{ x: x+0.1, y: y+0.43, w: 2.9, h: 1.6, fontSize: 9.5, color: C.text, lineSpacingMultiple: 1.3 }
);
});
footerNote(s, "Murray & Nadel's | Miller's Anesthesia 10e | Burge et al. Eur Respir Rev 2024 (PMID 39477355)");
slideNum(s, 6);
}
// ═══════════════════════════════════════════════════════════════════
// SLIDE 7 - PHARMACOLOGIC TREATMENTS
// ═══════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
lightSlide(s);
accentBar(s, 0, 0.09);
bodyTitle(s, "Pharmacologic Treatments");
divider(s, 0.82);
const drugs = [
{ drug: "Short-acting Bronchodilators", sub: "(Salbutamol, Ipratropium)", color: C.teal, use: "First-line for acute asthma & COPD exacerbation", note: "SABA + SAMA combination more effective than either alone" },
{ drug: "Long-acting Bronchodilators", sub: "(LABAs, LAMAs)", color: C.teal, use: "Chronic COPD — reduce daily dyspnea & exacerbations", note: "Cornerstone of GOLD-guided COPD management" },
{ drug: "IV / Oral Diuretics", sub: "(Furosemide, Spironolactone)", color: C.sky, use: "Heart failure with pulmonary congestion", note: "IV furosemide for acute decompensated HF; rapid relief" },
{ drug: "Systemic Corticosteroids", sub: "(Prednisolone, Methylprednisolone)", color: C.amber, use: "Acute asthma, COPD exacerbation, some ILD", note: "Short courses; avoid chronic use in COPD" },
{ drug: "Opioids (Low Dose)", sub: "(Morphine, Oxycodone)", color: C.red, use: "Refractory/palliative dyspnea — ↓ air hunger", note: "20mg SR morphine/day effective in some COPD patients (BEAMS trial); individualize" },
{ drug: "Anxiolytics", sub: "(Benzodiazepines)", color: C.sub, use: "Hyperventilation syndrome, anxiety-driven dyspnea", note: "No consistent benefit in RCTs for dyspnea alone; use cautiously" },
];
drugs.forEach((d, i) => {
const y = 0.93 + i * 0.76;
s.addShape(pres.ShapeType.rect, { x: 0.3, y, w: 0.09, h: 0.55, fill: { color: d.color }, line: { color: d.color } });
s.addText(d.drug, { x: 0.55, y: y+0.03, w: 3.8, h: 0.28, fontSize: 11.5, bold: true, color: C.navy, margin: 0 });
s.addText(d.sub, { x: 0.55, y: y+0.3, w: 3.8, h: 0.22, fontSize: 9, color: C.sub, italic: true, margin: 0 });
s.addText(d.use, { x: 4.5, y: y+0.03, w: 5.3, h: 0.28, fontSize: 10.5, color: C.text, margin: 0 });
s.addText(`• ${d.note}`, { x: 4.5, y: y+0.31, w: 5.3, h: 0.22, fontSize: 9, color: C.sub, margin: 0 });
if (i < drugs.length - 1) {
s.addShape(pres.ShapeType.rect, { x: 0.3, y: y+0.6, w: 9.4, h: 0.02, fill: { color: C.mid }, line: { color: C.mid } });
}
});
footerNote(s, "Harrison's 22e | Murray & Nadel's | Smallwood et al. Eur Respir Rev 2024 (PMID 39384304)");
slideNum(s, 7);
}
// ═══════════════════════════════════════════════════════════════════
// SLIDE 8 - QUALITY-BASED SYMPTOMATIC TREATMENT TABLE
// ═══════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
lightSlide(s);
accentBar(s, 0, 0.09);
bodyTitle(s, "Matching Treatment to Dyspnea Quality");
divider(s, 0.82);
sectionHeader(s, "Murray & Nadel's Table 36.3 — Physiology-Guided Symptomatic Treatment", 0.87);
const rows = [
{ quality: "Air hunger / urge to breathe", physiology: "Chemoreceptor stimulation", treatment: "Supplemental O₂ · Nasal gas flow · Cool air fan · Opioids" },
{ quality: "Chest tightness", physiology: "Airway receptor stimulation", treatment: "Inhaled bronchodilators (β-agonists, anticholinergics, steroids)" },
{ quality: "Cannot get a deep breath", physiology: "Dynamic hyperinflation", treatment: "Pursed-lip breathing · Slow breathing retraining" },
{ quality: "Increased work / effort of breathing", physiology: "Mechanical load or neuromuscular weakness", treatment: "Inspiratory muscle training · NIV / BiPAP" },
{ quality: "Breathing more / rapidly", physiology: "Deconditioning · metaboreceptor stimulation", treatment: "Exercise training · Pulmonary rehabilitation" },
{ quality: "All qualities", physiology: "Altered central perception", treatment: "Pulmonary rehab desensitization · Morphine" },
];
// Header row
const headers = ["Quality of Dyspnea", "Physiology", "Symptomatic Treatment"];
const colW = [2.85, 2.9, 3.85];
const colX = [0.25, 3.12, 6.04];
headers.forEach((h, i) => {
s.addShape(pres.ShapeType.rect, { x: colX[i], y: 1.28, w: colW[i], h: 0.38, fill: { color: C.navy }, line: { color: C.navy } });
s.addText(h, { x: colX[i]+0.05, y: 1.28, w: colW[i]-0.1, h: 0.38, fontSize: 9.5, bold: true, color: C.white, valign: "middle", margin: 0 });
});
rows.forEach((row, i) => {
const y = 1.66 + i * 0.6;
const bg = i % 2 === 0 ? C.white : C.light;
const cells = [row.quality, row.physiology, row.treatment];
cells.forEach((cell, j) => {
s.addShape(pres.ShapeType.rect, { x: colX[j], y, w: colW[j], h: 0.58, fill: { color: bg }, line: { color: C.mid, pt: 0.5 } });
s.addText(cell, { x: colX[j]+0.06, y: y+0.02, w: colW[j]-0.1, h: 0.54, fontSize: 9, color: j === 2 ? C.teal : C.text, valign: "middle", margin: 0, bold: j === 0 });
});
});
footerNote(s, "Murray & Nadel's Textbook of Respiratory Medicine, 2-Volume — Table 36.3");
slideNum(s, 8);
}
// ═══════════════════════════════════════════════════════════════════
// SLIDE 9 - PALLIATIVE / END-STAGE DYSPNEA
// ═══════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
lightSlide(s);
accentBar(s, 0, 0.09);
bodyTitle(s, "Dyspnea in End-Stage & Palliative Care");
divider(s, 0.82);
// Left column
s.addShape(pres.ShapeType.rect, { x: 0.3, y: 0.95, w: 4.6, h: 4.0, fill: { color: "EAF4F7" }, line: { color: C.mid, pt: 1 } });
s.addShape(pres.ShapeType.rect, { x: 0.3, y: 0.95, w: 4.6, h: 0.42, fill: { color: C.navy }, line: { color: C.navy } });
s.addText("OPIOIDS — Mainstay of Palliation", { x: 0.4, y: 0.97, w: 4.4, h: 0.38, fontSize: 10.5, bold: true, color: C.white, valign: "middle", margin: 0 });
s.addText([
{ text: "Mechanism: ↓ respiratory drive + cortical modulation of air hunger\n", options: { italic: true } },
{ text: "\n• Morphine (low dose oral/SC): most studied agent\n", options: {} },
{ text: "• 20 mg SR morphine/day significantly improved dyspnea in COPD crossover RCT\n", options: {} },
{ text: "• No association with ↑ hospitalization or mortality in ILD\n", options: {} },
{ text: "• BEAMS trial (JAMA 2022): mixed results in COPD — individualize\n", options: {} },
{ text: "• In acute asthma/COPD: small dose breaks tachypnea → hyperinflation cycle\n", options: {} },
{ text: "\n⚠ Risk: respiratory depression — use lowest effective dose", options: { bold: true, color: C.red } },
], { x: 0.45, y: 1.43, w: 4.35, h: 3.38, fontSize: 9.5, color: C.text, lineSpacingMultiple: 1.35 });
// Right column
s.addShape(pres.ShapeType.rect, { x: 5.1, y: 0.95, w: 4.6, h: 4.0, fill: { color: "EAF4F7" }, line: { color: C.mid, pt: 1 } });
s.addShape(pres.ShapeType.rect, { x: 5.1, y: 0.95, w: 4.6, h: 0.42, fill: { color: C.teal }, line: { color: C.teal } });
s.addText("Other Palliative Strategies", { x: 5.2, y: 0.97, w: 4.4, h: 0.38, fontSize: 10.5, bold: true, color: C.white, valign: "middle", margin: 0 });
s.addText([
{ text: "Non-Pharmacologic:\n", options: { bold: true } },
{ text: "• Fan / cool air on face\n• Upright positioning\n• Anxiety management + CBT\n• Acupuncture (evidence in lung cancer & COPD)\n\n", options: {} },
{ text: "Anxiolytics:\n", options: { bold: true } },
{ text: "• No consistent RCT benefit for dyspnea alone\n• Trend toward benefit when combined with opioids\n• Appropriate for anxiety-driven/hyperventilation dyspnea\n\n", options: {} },
{ text: "Coordination of Care:\n", options: { bold: true } },
{ text: "• Pulmonology + Palliative care collaboration\n• Improves breathlessness mastery\n• Associated with prolonged survival", options: {} },
], { x: 5.18, y: 1.43, w: 4.35, h: 3.38, fontSize: 9.5, color: C.text, lineSpacingMultiple: 1.3 });
footerNote(s, "Murray & Nadel's p.862-863 | Miller's Anesthesia 10e | Smallwood et al. Eur Respir Rev 2024");
slideNum(s, 9);
}
// ═══════════════════════════════════════════════════════════════════
// SLIDE 10 - SUMMARY TABLE
// ═══════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
lightSlide(s);
accentBar(s, 0, 0.09);
bodyTitle(s, "Treatment Summary");
divider(s, 0.82);
const tableRows = [
{ tx: "Treat underlying cause", ev: "★★★★★", best: "All dyspnea" },
{ tx: "Supplemental O₂ (SpO₂ < 88%)", ev: "★★★★", best: "Hypoxemic patients" },
{ tx: "Short-acting bronchodilators", ev: "★★★★★", best: "Asthma, COPD exacerbation" },
{ tx: "IV Diuretics", ev: "★★★★★", best: "Acute decompensated heart failure" },
{ tx: "NIV / BiPAP", ev: "★★★★", best: "Acute hypercapnic/hypoxemic respiratory failure" },
{ tx: "Pulmonary rehabilitation", ev: "★★★★", best: "Chronic COPD, post-COVID" },
{ tx: "Low-dose opioids", ev: "★★★", best: "Refractory / palliative dyspnea" },
{ tx: "Fan / cool air", ev: "★★★", best: "Any dyspnea — simple adjunct" },
{ tx: "Pursed-lip / breathing retraining", ev: "★★★", best: "COPD, hyperventilation syndrome" },
{ tx: "Anxiolytics", ev: "★★", best: "Anxiety-driven / hyperventilation dyspnea" },
];
const headers = ["Treatment", "Evidence", "Best For"];
const colW2 = [3.6, 1.3, 4.7];
const colX2 = [0.25, 3.87, 5.19];
headers.forEach((h, i) => {
s.addShape(pres.ShapeType.rect, { x: colX2[i], y: 0.92, w: colW2[i], h: 0.36, fill: { color: C.navy }, line: { color: C.navy } });
s.addText(h, { x: colX2[i]+0.06, y: 0.92, w: colW2[i]-0.1, h: 0.36, fontSize: 10, bold: true, color: C.white, valign: "middle", margin: 0 });
});
tableRows.forEach((row, i) => {
const y = 1.28 + i * 0.41;
const bg = i % 2 === 0 ? C.white : C.light;
const cells = [row.tx, row.ev, row.best];
const evColor = row.ev.length >= 5 ? C.green : row.ev.length >= 4 ? C.teal : row.ev.length >= 3 ? C.amber : C.red;
cells.forEach((cell, j) => {
s.addShape(pres.ShapeType.rect, { x: colX2[j], y, w: colW2[j], h: 0.39, fill: { color: bg }, line: { color: C.mid, pt: 0.5 } });
s.addText(cell, {
x: colX2[j]+0.06, y: y+0.02, w: colW2[j]-0.1, h: 0.35,
fontSize: j === 1 ? 11 : 9.5,
color: j === 1 ? evColor : j === 0 ? C.navy : C.text,
bold: j === 0,
valign: "middle", margin: 0,
});
});
});
footerNote(s, "Harrison's 22e | Murray & Nadel's | Goldman-Cecil Medicine | Miller's Anesthesia 10e");
slideNum(s, 10);
}
// ═══════════════════════════════════════════════════════════════════
// SLIDE 11 - CONCLUSION / KEY POINTS
// ═══════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
darkSlide(s);
s.addShape(pres.ShapeType.rect, { x: 0, y: 5.2, w: 10, h: 0.425, fill: { color: C.teal }, line: { color: C.teal } });
s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 0.18, h: 5.625, fill: { color: C.teal }, line: { color: C.teal } });
s.addText("KEY TAKEAWAYS", { x: 0.5, y: 0.2, w: 9, h: 0.4, fontSize: 13, bold: true, color: C.sky, charSpacing: 3, margin: 0 });
s.addText("Treatment of Shortness of Breath", { x: 0.5, y: 0.6, w: 9, h: 0.65, fontSize: 28, bold: true, color: C.white, margin: 0 });
const points = [
"Always identify and treat the UNDERLYING CAUSE first — this is the most effective intervention.",
"Give supplemental O₂ when SpO₂ < 88%; it also improves mortality in hypoxemic COPD.",
"For obstructive lung disease: short-acting bronchodilators (SABA + SAMA) are the first-line acute treatment.",
"Pulmonary rehabilitation reduces dyspnea, improves exercise capacity, and improves quality of life in COPD.",
"Low-dose opioids (morphine) are evidence-backed for refractory and palliative dyspnea — individualize use.",
"Cool air on the face (fan) is a simple, underused intervention that can meaningfully relieve air hunger.",
"Anxiolytics have NOT shown consistent benefit for dyspnea in RCTs — use only for anxiety-driven cases.",
"In end-stage lung disease, coordinate pulmonology + palliative care for best symptom mastery outcomes.",
];
points.forEach((pt, i) => {
const y = 1.42 + i * 0.49;
s.addShape(pres.ShapeType.rect, { x: 0.4, y: y+0.08, w: 0.08, h: 0.08, fill: { color: C.sky }, line: { color: C.sky } });
s.addText(pt, { x: 0.65, y, w: 9.0, h: 0.46, fontSize: 10.5, color: C.mid, lineSpacingMultiple: 1.1, margin: 0, valign: "middle" });
});
s.addText("Sources: Harrison's 22e · Murray & Nadel's · Goldman-Cecil · Miller's Anesthesia 10e · Smallwood et al. Eur Respir Rev 2024", {
x: 0.3, y: 5.25, w: 9.4, h: 0.2,
fontSize: 7, color: C.white, margin: 0, italic: true,
});
}
// ─── WRITE FILE ───────────────────────────────────────────────────
pres.writeFile({ fileName: "/home/daytona/workspace/dyspnea-slides/Dyspnea_Treatment.pptx" })
.then(() => console.log("✅ Saved: /home/daytona/workspace/dyspnea-slides/Dyspnea_Treatment.pptx"))
.catch(err => { console.error("❌ Error:", err); process.exit(1); });
cd /home/daytona/workspace/dyspnea-slides && node create_slides.js
ls -lh /home/daytona/workspace/dyspnea-slides/Dyspnea_Treatment.pptx
Dyspnea Treatment
Presentation · PPTX
| Slide | Content |
|---|---|
| 1 | Title slide |
| 2 | What is Dyspnea? — definition, prevalence stats, 4 physiologic origins |
| 3 | Common Causes — 4 color-coded category cards (Cardiac, Pulmonary, Infective, Other) |
| 4 | Diagnostic Approach — 4-step flow (History → Exam → Investigations → Identify Cause) |
| 5 | Treatment Framework — two-goal split (Treat Cause vs. Relieve Symptom) |
| 6 | Non-Pharmacologic Treatments — 6 cards (O₂, Pulm Rehab, Breathing techniques, Fan, NIV, Procedures) |
| 7 | Pharmacologic Treatments — row-by-row drug reference with evidence notes |
| 8 | Quality-Based Treatment Table (Murray & Nadel's Table 36.3) |
| 9 | Palliative/End-Stage Dyspnea — opioids vs. other strategies |
| 10 | Summary Table with star-rated evidence levels |
| 11 | Key Takeaways (dark closing slide) |