Ppt on chest deformities
mkdir -p /home/daytona/workspace/chest-deformities-ppt && ls /home/daytona/workspace/chest-deformities-ppt
~/chest-deformities-ppt/create_ppt.js
const pptxgen = require("pptxgenjs");
const pres = new pptxgen();
pres.layout = "LAYOUT_16x9";
pres.title = "Chest Deformities";
pres.author = "Nursing Education";
// ── Color palette ──────────────────────────────────────────────
const C = {
navy: "0D2B55", // dominant dark
teal: "1A7FA4", // supporting
steel: "3AA6C8", // lighter accent
ice: "E8F6FB", // light bg
white: "FFFFFF",
gold: "F5A623", // accent/highlight
text: "1C2B3A",
muted: "5B7A96",
lightGray: "EAF2F7",
};
// ── Helpers ────────────────────────────────────────────────────
function addSlideHeader(slide, title, subtitle = "") {
// Top band
slide.addShape(pres.shapes.RECTANGLE, {
x: 0, y: 0, w: 10, h: 0.7,
fill: { color: C.navy }, line: { color: C.navy }
});
// Gold accent bar
slide.addShape(pres.shapes.RECTANGLE, {
x: 0, y: 0.7, w: 10, h: 0.06,
fill: { color: C.gold }, line: { color: C.gold }
});
slide.addText(title, {
x: 0.35, y: 0.05, w: 9.3, h: 0.6,
fontSize: 22, bold: true, color: C.white,
fontFace: "Calibri", valign: "middle"
});
if (subtitle) {
slide.addText(subtitle, {
x: 0.35, y: 0.72, w: 9.3, h: 0.28,
fontSize: 11, color: C.teal, italic: true,
fontFace: "Calibri", valign: "top"
});
}
}
function bullet(text, indent = 0) {
return {
text,
options: {
bullet: indent === 0 ? { type: "bullet" } : { type: "bullet", indent: 20 },
fontSize: indent === 0 ? 15 : 13,
color: indent === 0 ? C.text : C.muted,
breakLine: true,
paraSpaceAfter: indent === 0 ? 5 : 2,
indentLevel: indent
}
};
}
function sectionDivider(slide, label) {
slide.addShape(pres.shapes.RECTANGLE, {
x: 0.35, y: 0, w: 0.06, h: 5.625,
fill: { color: C.steel }, line: { color: C.steel }
});
}
// ══════════════════════════════════════════════════════════════
// SLIDE 1 – Title
// ══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
// Full dark background
s.addShape(pres.shapes.RECTANGLE, {
x: 0, y: 0, w: 10, h: 5.625,
fill: { color: C.navy }, line: { color: C.navy }
});
// Teal right panel
s.addShape(pres.shapes.RECTANGLE, {
x: 6.5, y: 0, w: 3.5, h: 5.625,
fill: { color: C.teal }, line: { color: C.teal }
});
// Gold accent strip
s.addShape(pres.shapes.RECTANGLE, {
x: 6.3, y: 0, w: 0.2, h: 5.625,
fill: { color: C.gold }, line: { color: C.gold }
});
// Title
s.addText("CHEST DEFORMITIES", {
x: 0.5, y: 1.5, w: 5.6, h: 1.2,
fontSize: 38, bold: true, color: C.white,
fontFace: "Calibri", charSpacing: 3
});
// Subtitle
s.addText("An Introductory Overview for Nursing Staff", {
x: 0.5, y: 2.85, w: 5.6, h: 0.5,
fontSize: 16, color: C.steel,
fontFace: "Calibri", italic: true
});
// Right panel content
s.addText([
{ text: "Topics Covered", options: { bold: true, breakLine: true, fontSize: 14, color: C.white } },
{ text: " ", options: { breakLine: true, fontSize: 6 } },
{ text: "• Types of chest deformities", options: { breakLine: true, fontSize: 12, color: C.ice } },
{ text: "• Causes & epidemiology", options: { breakLine: true, fontSize: 12, color: C.ice } },
{ text: "• Clinical features", options: { breakLine: true, fontSize: 12, color: C.ice } },
{ text: "• Diagnostic assessment", options: { breakLine: true, fontSize: 12, color: C.ice } },
{ text: "• Management & nursing care", options: { breakLine: true, fontSize: 12, color: C.ice } },
{ text: "• Patient education", options: { fontSize: 12, color: C.ice } },
], {
x: 6.6, y: 1.4, w: 3.1, h: 2.8
});
s.addText("Nursing Education Series", {
x: 0.5, y: 5.1, w: 5.6, h: 0.35,
fontSize: 11, color: C.muted, fontFace: "Calibri"
});
}
// ══════════════════════════════════════════════════════════════
// SLIDE 2 – What Are Chest Deformities?
// ══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape(pres.shapes.RECTANGLE, { x:0,y:0,w:10,h:5.625, fill:{color:C.ice}, line:{color:C.ice} });
addSlideHeader(s, "What Are Chest Deformities?", "Definition & Overview");
// Left text column
s.addText([
bullet("Structural abnormalities of the chest wall involving the sternum, ribs and costal cartilages"),
bullet("Occur in approximately 1 in 400–1,000 children"),
bullet("5× more common in males than females"),
bullet("Up to 6% of patients also have an associated connective tissue disorder (e.g. Marfan syndrome)"),
bullet("Often visible at birth but may become more obvious during adolescent growth spurts"),
bullet("Can range from barely detectable to severely deforming"),
bullet("Impact: cosmetic, psychosocial, and in some cases cardiorespiratory"),
], {
x: 0.4, y: 1.05, w: 5.8, h: 4.2,
fontFace: "Calibri", valign: "top"
});
// Info box right
s.addShape(pres.shapes.ROUNDED_RECTANGLE, {
x: 6.5, y: 1.1, w: 3.2, h: 4.2,
fill: { color: C.navy }, line: { color: C.navy }, rectRadius: 0.12
});
s.addText([
{ text: "Key Fact", options: { bold: true, color: C.gold, fontSize: 14, breakLine: true } },
{ text: " ", options: { fontSize: 6, breakLine: true } },
{ text: "Pectus Excavatum", options: { bold: true, color: C.steel, fontSize: 13, breakLine: true } },
{ text: "Most common chest wall deformity (up to 90% of all cases)", options: { color: C.ice, fontSize: 12, breakLine: true } },
{ text: " ", options: { fontSize: 8, breakLine: true } },
{ text: "Pectus Carinatum", options: { bold: true, color: C.steel, fontSize: 13, breakLine: true } },
{ text: "~5× less common than excavatum", options: { color: C.ice, fontSize: 12, breakLine: true } },
{ text: " ", options: { fontSize: 8, breakLine: true } },
{ text: "Other Types", options: { bold: true, color: C.steel, fontSize: 13, breakLine: true } },
{ text: "Sternal cleft, Poland syndrome, barrel chest, scoliotic chest", options: { color: C.ice, fontSize: 12 } },
], {
x: 6.6, y: 1.2, w: 3.0, h: 4.0, valign: "top"
});
}
// ══════════════════════════════════════════════════════════════
// SLIDE 3 – Types: Pectus Excavatum
// ══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape(pres.shapes.RECTANGLE, { x:0,y:0,w:10,h:5.625, fill:{color:C.white}, line:{color:C.white} });
addSlideHeader(s, "Pectus Excavatum (Funnel Chest)", "Most common chest wall deformity");
// Left column
s.addText([
{ text: "Definition", options: { bold: true, color: C.teal, fontSize: 14, breakLine: true } },
{ text: "Posterior depression of the sternum — from Latin 'hollowed chest'", options: { color: C.text, fontSize: 13, breakLine: true } },
{ text: " ", options: { fontSize: 6, breakLine: true } },
{ text: "Epidemiology", options: { bold: true, color: C.teal, fontSize: 14, breakLine: true } },
{ text: "• Incidence: 1 in 400–1,000 children", options: { color: C.text, fontSize: 13, breakLine: true } },
{ text: "• Male predominance", options: { color: C.text, fontSize: 13, breakLine: true } },
{ text: "• Family history present in ~50% of cases", options: { color: C.text, fontSize: 13, breakLine: true } },
{ text: " ", options: { fontSize: 6, breakLine: true } },
{ text: "Cause", options: { bold: true, color: C.teal, fontSize: 14, breakLine: true } },
{ text: "Abnormal growth regulation of costal cartilages (ribs 3–10). Sternum curves posteriorly from manubrium to xiphoid.", options: { color: C.text, fontSize: 13, breakLine: true } },
], {
x: 0.4, y: 1.05, w: 5.0, h: 4.3, valign: "top"
});
// Right column – symptoms
s.addShape(pres.shapes.RECTANGLE, {
x: 5.7, y: 1.1, w: 4.0, h: 4.2,
fill: { color: C.lightGray }, line: { color: C.lightGray }
});
s.addShape(pres.shapes.RECTANGLE, {
x: 5.7, y: 1.1, w: 4.0, h: 0.4,
fill: { color: C.teal }, line: { color: C.teal }
});
s.addText("Signs & Symptoms", {
x: 5.75, y: 1.1, w: 3.9, h: 0.4,
fontSize: 13, bold: true, color: C.white, valign: "middle"
});
s.addText([
bullet("Visible chest depression (may be asymmetric)"),
bullet("Stoop-shouldered posture"),
bullet("Asthenic (lean/thin) body build"),
bullet("Chest pain and/or shortness of breath"),
bullet("Reduced exercise tolerance"),
bullet("Scoliosis (increased in this group)"),
bullet("Psychosocial distress / body image issues"),
bullet("Possible mitral valve prolapse"),
bullet("Associated connective tissue disorders (Marfan)"),
], {
x: 5.75, y: 1.55, w: 3.85, h: 3.6, valign: "top", fontFace: "Calibri"
});
}
// ══════════════════════════════════════════════════════════════
// SLIDE 4 – Pectus Carinatum & Other Types
// ══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape(pres.shapes.RECTANGLE, { x:0,y:0,w:10,h:5.625, fill:{color:C.ice}, line:{color:C.ice} });
addSlideHeader(s, "Other Chest Wall Deformities", "Pectus Carinatum, Sternal Cleft, Poland Syndrome, Barrel Chest");
const boxes = [
{
title: "Pectus Carinatum\n(Pigeon Chest)",
color: C.teal,
points: [
"Sternal protrusion outward",
"Opposite of excavatum",
"5× less common than excavatum",
"May worsen during puberty",
"Bracing is first-line in mild cases",
"Surgical correction for severe cases",
]
},
{
title: "Sternal Cleft",
color: C.navy,
points: [
"Incomplete fusion of sternal bands",
"Range from minor notch to complete cleft",
"Risk of paradoxical breathing",
"Skin pulsations visible over heart",
"Early surgical repair recommended",
]
},
{
title: "Poland Syndrome",
color: C.muted,
points: [
"Absence of pectoralis major muscle",
"Underlying bony chest wall absent",
"Often unilateral",
"May involve hand abnormalities",
"Reconstructive surgery if needed",
]
},
{
title: "Barrel Chest",
color: "2E7D63",
points: [
"Increased AP diameter (ratio >1:1)",
"Associated with COPD/emphysema",
"Hyperinflated lungs push sternum out",
"Accessory muscle use visible",
"Management targets underlying lung disease",
]
},
];
const cols = [0.2, 2.55, 4.9, 7.25];
boxes.forEach((box, i) => {
const x = cols[i];
s.addShape(pres.shapes.ROUNDED_RECTANGLE, {
x, y: 1.1, w: 2.25, h: 4.2,
fill: { color: box.color }, line: { color: box.color }, rectRadius: 0.1
});
s.addText(box.title, {
x: x + 0.1, y: 1.15, w: 2.05, h: 0.7,
fontSize: 12, bold: true, color: C.white, align: "center", valign: "middle",
fontFace: "Calibri"
});
s.addShape(pres.shapes.RECTANGLE, {
x, y: 1.88, w: 2.25, h: 0.04,
fill: { color: C.gold }, line: { color: C.gold }
});
const bulletItems = box.points.map((p, j) => ({
text: p,
options: {
fontSize: 11, color: C.ice, breakLine: j < box.points.length - 1,
bullet: { type: "bullet" }, paraSpaceAfter: 3
}
}));
s.addText(bulletItems, {
x: x + 0.08, y: 1.95, w: 2.1, h: 3.2, valign: "top"
});
});
}
// ══════════════════════════════════════════════════════════════
// SLIDE 5 – Causes & Risk Factors
// ══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape(pres.shapes.RECTANGLE, { x:0,y:0,w:10,h:5.625, fill:{color:C.white}, line:{color:C.white} });
addSlideHeader(s, "Causes & Risk Factors", "Embryology and contributing factors");
s.addText([
bullet("Exact etiology is not fully understood"),
bullet("Abnormal growth of costal cartilages (ribs 3–10) most implicated"),
bullet("Ribs derived from mesoderm — cartilage advances toward developing sternum"),
bullet("Sternum forms from two parallel mesoderm bands that fuse cranially to caudally"),
bullet("Sternal clefts = failure of these bands to fuse"),
], {
x: 0.4, y: 1.05, w: 9.2, h: 1.7, valign: "top", fontFace: "Calibri"
});
const factors = [
{ label: "Genetic\nPredisposition", icon: "DNA", desc: "Family history in ~50% of pectus excavatum cases" },
{ label: "Connective\nTissue Disorders", icon: "CTD", desc: "Marfan syndrome, Ehlers-Danlos — consider in all cases" },
{ label: "Intrauterine\nPressure", icon: "IUP", desc: "Abnormal pressure applied to developing chest wall in utero" },
{ label: "Diaphragmatic\nDevelopment", icon: "DIA", desc: "Abnormalities during foetal diaphragm formation" },
{ label: "Asymmetric\nCartilage Growth", icon: "ACG", desc: "Unequal overgrowth leading to sternal tilt or rotation" },
];
factors.forEach((f, i) => {
const x = 0.3 + i * 1.9;
s.addShape(pres.shapes.ROUNDED_RECTANGLE, {
x, y: 2.9, w: 1.75, h: 2.4,
fill: { color: C.navy }, line: { color: C.navy }, rectRadius: 0.1
});
s.addShape(pres.shapes.ROUNDED_RECTANGLE, {
x: x + 0.55, y: 2.95, w: 0.65, h: 0.55,
fill: { color: C.gold }, line: { color: C.gold }, rectRadius: 0.08
});
s.addText(f.icon, {
x: x + 0.55, y: 2.95, w: 0.65, h: 0.55,
fontSize: 9, bold: true, color: C.navy, align: "center", valign: "middle"
});
s.addText(f.label, {
x: x + 0.05, y: 3.55, w: 1.65, h: 0.55,
fontSize: 11, bold: true, color: C.white, align: "center", valign: "middle", fontFace: "Calibri"
});
s.addText(f.desc, {
x: x + 0.05, y: 4.15, w: 1.65, h: 1.0,
fontSize: 10, color: C.ice, align: "center", valign: "top", fontFace: "Calibri"
});
});
}
// ══════════════════════════════════════════════════════════════
// SLIDE 6 – Clinical Assessment & Diagnosis
// ══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape(pres.shapes.RECTANGLE, { x:0,y:0,w:10,h:5.625, fill:{color:C.ice}, line:{color:C.ice} });
addSlideHeader(s, "Clinical Assessment & Diagnosis", "Nursing observation and diagnostic investigations");
// Left — Physical Assessment
s.addShape(pres.shapes.RECTANGLE, {
x: 0.3, y: 1.1, w: 4.5, h: 4.2,
fill: { color: C.white }, line: { color: C.white },
shadow: { type: "outer", color: "000000", blur: 8, offset: 2, angle: 135, opacity: 0.1 }
});
s.addShape(pres.shapes.RECTANGLE, {
x: 0.3, y: 1.1, w: 4.5, h: 0.42,
fill: { color: C.navy }, line: { color: C.navy }
});
s.addText("Physical Assessment (Nurse Role)", {
x: 0.35, y: 1.1, w: 4.4, h: 0.42,
fontSize: 13, bold: true, color: C.white, valign: "middle"
});
s.addText([
bullet("Inspect chest shape: depression, protrusion, asymmetry"),
bullet("Measure AP diameter vs. transverse diameter"),
bullet("Observe breathing pattern & use of accessory muscles"),
bullet("Assess posture (stoop-shouldered?)"),
bullet("Auscultate for abnormal breath & heart sounds"),
bullet("Note any scoliosis or spinal curvature"),
bullet("Ask about exercise tolerance, chest pain, SOB"),
bullet("Screen for connective tissue features (tall, long fingers)"),
bullet("Assess psychosocial impact on patient / family"),
], {
x: 0.35, y: 1.56, w: 4.35, h: 3.65, valign: "top", fontFace: "Calibri"
});
// Right — Investigations
s.addShape(pres.shapes.RECTANGLE, {
x: 5.1, y: 1.1, w: 4.6, h: 4.2,
fill: { color: C.white }, line: { color: C.white },
shadow: { type: "outer", color: "000000", blur: 8, offset: 2, angle: 135, opacity: 0.1 }
});
s.addShape(pres.shapes.RECTANGLE, {
x: 5.1, y: 1.1, w: 4.6, h: 0.42,
fill: { color: C.teal }, line: { color: C.teal }
});
s.addText("Diagnostic Investigations", {
x: 5.15, y: 1.1, w: 4.5, h: 0.42,
fontSize: 13, bold: true, color: C.white, valign: "middle"
});
s.addText([
{ text: "Haller Index (CT Scan)", options: { bold: true, color: C.teal, fontSize: 13, breakLine: true } },
{ text: "= Transverse chest width ÷ Sternum-to-spine depth\nNormal: 2.0–2.2 | Surgery if > 3.25", options: { color: C.text, fontSize: 12, breakLine: true } },
{ text: " ", options: { fontSize: 6, breakLine: true } },
{ text: "Pulmonary Function Tests (PFTs)", options: { bold: true, color: C.teal, fontSize: 13, breakLine: true } },
{ text: "Assess restrictive pattern, reduced FVC/FEV1", options: { color: C.text, fontSize: 12, breakLine: true } },
{ text: " ", options: { fontSize: 6, breakLine: true } },
{ text: "Echocardiography", options: { bold: true, color: C.teal, fontSize: 13, breakLine: true } },
{ text: "Check for cardiac compression, MVP, output", options: { color: C.text, fontSize: 12, breakLine: true } },
{ text: " ", options: { fontSize: 6, breakLine: true } },
{ text: "Chest X-ray", options: { bold: true, color: C.teal, fontSize: 13, breakLine: true } },
{ text: "Baseline imaging; assess rib/sternum anatomy", options: { color: C.text, fontSize: 12, breakLine: true } },
{ text: " ", options: { fontSize: 6, breakLine: true } },
{ text: "Genetic testing", options: { bold: true, color: C.teal, fontSize: 13, breakLine: true } },
{ text: "If Marfan or connective tissue disorder suspected", options: { color: C.text, fontSize: 12 } },
], {
x: 5.15, y: 1.56, w: 4.45, h: 3.65, valign: "top"
});
}
// ══════════════════════════════════════════════════════════════
// SLIDE 7 – Management: Non-Surgical
// ══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape(pres.shapes.RECTANGLE, { x:0,y:0,w:10,h:5.625, fill:{color:C.white}, line:{color:C.white} });
addSlideHeader(s, "Non-Surgical Management", "Conservative approaches — primarily for mild to moderate deformities");
const cards = [
{
title: "Observation & Monitoring",
color: C.navy,
items: [
"Many patients asymptomatic",
"Serial physical and imaging review",
"Monitor during growth spurts",
"Watch for worsening symptoms",
]
},
{
title: "Orthotic Bracing",
color: C.teal,
items: [
"First-line for pectus carinatum",
"Dynamic compression brace",
"Worn 8–23 hours/day",
"Effective during active growth",
"Success rate >80% in compliant patients",
]
},
{
title: "Physiotherapy",
color: C.muted,
items: [
"Posture correction exercises",
"Breathing exercises (diaphragmatic)",
"Core strengthening",
"Improve thoracic mobility",
"Psychological confidence support",
]
},
{
title: "Psychological Support",
color: "2E7D63",
items: [
"Address body image distress",
"Refer to counselling if needed",
"Family education & reassurance",
"Support group resources",
"Impacts quality of life significantly",
]
},
];
cards.forEach((card, i) => {
const x = 0.25 + i * 2.4;
s.addShape(pres.shapes.ROUNDED_RECTANGLE, {
x, y: 1.1, w: 2.2, h: 0.55,
fill: { color: card.color }, line: { color: card.color }, rectRadius: 0.08
});
s.addText(card.title, {
x: x + 0.05, y: 1.1, w: 2.1, h: 0.55,
fontSize: 12, bold: true, color: C.white, align: "center", valign: "middle"
});
s.addShape(pres.shapes.ROUNDED_RECTANGLE, {
x, y: 1.68, w: 2.2, h: 3.7,
fill: { color: C.lightGray }, line: { color: C.lightGray }, rectRadius: 0.08
});
const items = card.items.map((p, j) => ({
text: p,
options: {
fontSize: 12, color: C.text, breakLine: j < card.items.length - 1,
bullet: { type: "bullet" }, paraSpaceAfter: 4
}
}));
s.addText(items, { x: x + 0.1, y: 1.74, w: 2.0, h: 3.58, valign: "top" });
});
}
// ══════════════════════════════════════════════════════════════
// SLIDE 8 – Surgical Management
// ══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape(pres.shapes.RECTANGLE, { x:0,y:0,w:10,h:5.625, fill:{color:C.ice}, line:{color:C.ice} });
addSlideHeader(s, "Surgical Management", "Indications and surgical options");
// Indications box
s.addShape(pres.shapes.ROUNDED_RECTANGLE, {
x: 0.3, y: 1.05, w: 4.3, h: 1.8,
fill: { color: C.navy }, line: { color: C.navy }, rectRadius: 0.1
});
s.addText([
{ text: "Surgical Indications", options: { bold: true, color: C.gold, fontSize: 13, breakLine: true } },
{ text: "• Haller index > 3.25", options: { color: C.ice, fontSize: 12, breakLine: true } },
{ text: "• Significant cardiorespiratory compromise", options: { color: C.ice, fontSize: 12, breakLine: true } },
{ text: "• Progressive deformity despite conservative tx", options: { color: C.ice, fontSize: 12, breakLine: true } },
{ text: "• Severe psychosocial impact", options: { color: C.ice, fontSize: 12 } },
], { x: 0.4, y: 1.1, w: 4.1, h: 1.7, valign: "top" });
// Timing box
s.addShape(pres.shapes.ROUNDED_RECTANGLE, {
x: 4.9, y: 1.05, w: 4.8, h: 1.8,
fill: { color: C.teal }, line: { color: C.teal }, rectRadius: 0.1
});
s.addText([
{ text: "Optimal Timing", options: { bold: true, color: C.gold, fontSize: 13, breakLine: true } },
{ text: "• Defer repair until early adolescence (reduce recurrence)", options: { color: C.ice, fontSize: 12, breakLine: true } },
{ text: "• Most performed in early-to-late teenage years", options: { color: C.ice, fontSize: 12, breakLine: true } },
{ text: "• Adults can also be treated (increasing experience)", options: { color: C.ice, fontSize: 12 } },
], { x: 5.0, y: 1.1, w: 4.6, h: 1.7, valign: "top" });
// Procedure rows
const procs = [
{
name: "Nuss Procedure\n(Minimally Invasive)",
color: C.teal,
desc: [
"Small lateral incisions",
"1–2 rigid U-shaped metal bars inserted transversely",
"Bar 'flipped' to push sternum forward",
"Thoracoscopy guides insertion",
"Bar left in place 2–3 years",
"Post-op: multimodal pain management, activity restrictions",
]
},
{
name: "Ravitch Procedure\n(Open Repair)",
color: C.navy,
desc: [
"Inframammary or midline incision",
"Pectoral muscles reflected; cartilages (ribs 3–10) excised",
"Sternal wedge osteotomy to reposition sternum",
"Stabilising bar placed beneath sternum for 6–12 months",
"Closed-suction drains placed",
"Complications: pneumothorax, seroma, bar migration",
]
},
];
procs.forEach((p, i) => {
const y = 3.1 + i * 0;
const baseY = 3.05 + i * 1.2;
s.addShape(pres.shapes.RECTANGLE, {
x: 0.3, y: baseY, w: 1.5, h: 0.95,
fill: { color: p.color }, line: { color: p.color }
});
s.addText(p.name, {
x: 0.32, y: baseY, w: 1.46, h: 0.95,
fontSize: 10, bold: true, color: C.white, align: "center", valign: "middle"
});
s.addShape(pres.shapes.RECTANGLE, {
x: 1.82, y: baseY, w: 7.9, h: 0.95,
fill: { color: C.white }, line: { color: C.lightGray }
});
const bullets = p.desc.map((d, j) => ({
text: d,
options: { fontSize: 11, color: C.text, breakLine: j < p.desc.length - 1, bullet: { type: "bullet" } }
}));
s.addText(bullets, { x: 1.9, y: baseY + 0.05, w: 7.7, h: 0.85, valign: "middle" });
});
}
// ══════════════════════════════════════════════════════════════
// SLIDE 9 – Nursing Care & Post-op Management
// ══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape(pres.shapes.RECTANGLE, { x:0,y:0,w:10,h:5.625, fill:{color:C.white}, line:{color:C.white} });
addSlideHeader(s, "Nursing Care & Post-operative Management", "Key responsibilities for nursing staff");
const cols = [
{
title: "Pre-operative Care",
color: C.navy,
items: [
"Baseline vital signs & O2 saturation",
"Cardiopulmonary assessment",
"Pain score baseline",
"Consent & procedural education",
"Psychological preparation of patient & family",
"Ensure PFTs & echo results documented",
]
},
{
title: "Post-operative Care",
color: C.teal,
items: [
"Continuous O2 monitoring (pneumothorax risk)",
"Multimodal pain management (epidural / IV / oral)",
"Intercostal nerve cryoablation — observe efficacy",
"Incentive spirometry to prevent atelectasis",
"Drain care (closed-suction drains)",
"Monitor for bar displacement (fever, new pain, SOB)",
"Graded ambulation — activity restriction protocol",
"Wound site inspection daily",
]
},
{
title: "Potential Complications",
color: "C0392B",
items: [
"Pneumothorax",
"Pleural effusion",
"Bar migration / displacement",
"Wound seroma / infection",
"Pericarditis",
"Cardiac injury (rare)",
"Allergic metal reaction",
"Recurrence of deformity",
]
},
];
cols.forEach((col, i) => {
const x = 0.25 + i * 3.25;
s.addShape(pres.shapes.RECTANGLE, {
x, y: 1.05, w: 3.1, h: 0.4,
fill: { color: col.color }, line: { color: col.color }
});
s.addText(col.title, {
x: x + 0.05, y: 1.05, w: 3.0, h: 0.4,
fontSize: 12, bold: true, color: C.white, valign: "middle"
});
s.addShape(pres.shapes.RECTANGLE, {
x, y: 1.47, w: 3.1, h: 3.9,
fill: { color: C.lightGray }, line: { color: C.lightGray }
});
const items = col.items.map((p, j) => ({
text: p,
options: {
fontSize: 12, color: C.text, breakLine: j < col.items.length - 1,
bullet: { type: "bullet" }, paraSpaceAfter: 4
}
}));
s.addText(items, { x: x + 0.1, y: 1.52, w: 2.9, h: 3.8, valign: "top" });
});
}
// ══════════════════════════════════════════════════════════════
// SLIDE 10 – Patient & Family Education
// ══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape(pres.shapes.RECTANGLE, { x:0,y:0,w:10,h:5.625, fill:{color:C.ice}, line:{color:C.ice} });
addSlideHeader(s, "Patient & Family Education", "Discharge guidance and long-term follow-up");
s.addText([
bullet("Explain the nature of the deformity and its expected course honestly"),
bullet("Less than 15% of patients ultimately require surgery — reassure families"),
bullet("Bracing (for carinatum) — demonstrate correct fitting; compliance is key"),
bullet("Activity restrictions after surgery — graded return to sport; no contact sports while bar in situ"),
bullet("Signs to report: sudden chest pain, breathlessness, fever, visible bar movement"),
bullet("Encourage physiotherapy adherence for posture and breathing"),
bullet("Address body image concerns; normalise discussion of psychological impact"),
bullet("Genetic counselling referral if connective tissue disorder identified"),
bullet("Scheduled follow-up imaging (CT / CXR) to monitor correction"),
bullet("Bar removal planned at 2–3 years post-Nuss procedure — prepare patient"),
], {
x: 0.4, y: 1.1, w: 5.8, h: 4.2, valign: "top", fontFace: "Calibri"
});
// Side reminder box
s.addShape(pres.shapes.ROUNDED_RECTANGLE, {
x: 6.5, y: 1.1, w: 3.2, h: 4.2,
fill: { color: C.navy }, line: { color: C.navy }, rectRadius: 0.12
});
s.addText([
{ text: "Nurse's Role in\nPatient Education", options: { bold: true, color: C.gold, fontSize: 13, breakLine: true, align: "center" } },
{ text: " ", options: { fontSize: 6, breakLine: true } },
{ text: "Teach", options: { bold: true, color: C.steel, fontSize: 12, breakLine: true } },
{ text: "Wound care, brace use, breathing exercises", options: { color: C.ice, fontSize: 11, breakLine: true } },
{ text: " ", options: { fontSize: 5, breakLine: true } },
{ text: "Monitor", options: { bold: true, color: C.steel, fontSize: 12, breakLine: true } },
{ text: "Pain, O2 sat, drain output, mental health", options: { color: C.ice, fontSize: 11, breakLine: true } },
{ text: " ", options: { fontSize: 5, breakLine: true } },
{ text: "Communicate", options: { bold: true, color: C.steel, fontSize: 12, breakLine: true } },
{ text: "Coordinate with surgeon, physio, psychologist", options: { color: C.ice, fontSize: 11, breakLine: true } },
{ text: " ", options: { fontSize: 5, breakLine: true } },
{ text: "Support", options: { bold: true, color: C.steel, fontSize: 12, breakLine: true } },
{ text: "Acknowledge emotional impact. Foster a supportive, non-judgemental environment", options: { color: C.ice, fontSize: 11 } },
], { x: 6.6, y: 1.2, w: 3.0, h: 4.0, valign: "top" });
}
// ══════════════════════════════════════════════════════════════
// SLIDE 11 – Quick Reference Summary
// ══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape(pres.shapes.RECTANGLE, { x:0,y:0,w:10,h:5.625, fill:{color:C.white}, line:{color:C.white} });
addSlideHeader(s, "Quick Reference Summary", "At-a-glance comparison of common chest deformities");
// Table
const tableData = [
[
{ text: "Deformity", options: { bold: true, color: C.white, fontSize: 12 } },
{ text: "Appearance", options: { bold: true, color: C.white, fontSize: 12 } },
{ text: "Prevalence", options: { bold: true, color: C.white, fontSize: 12 } },
{ text: "Key Symptoms", options: { bold: true, color: C.white, fontSize: 12 } },
{ text: "Management", options: { bold: true, color: C.white, fontSize: 12 } },
],
["Pectus Excavatum", "Sternal depression\n(funnel chest)", "1:400–1,000\n(most common)", "Chest pain, SOB,\nreduced exercise tolerance", "Nuss / Ravitch\nwhen Haller >3.25"],
["Pectus Carinatum", "Sternal protrusion\n(pigeon chest)", "5× less common\nthan excavatum", "Cosmetic concern,\nmild dyspnoea", "Bracing first-line;\nsurgery if severe"],
["Sternal Cleft", "Sternal gap;\nskin pulsations", "Rare", "Paradoxical breathing,\nheart at risk", "Early surgical\nrepair"],
["Poland Syndrome", "Absent pectoralis\nmuscle", "Rare;\nunilateral", "Asymmetric chest;\nmay affect arm", "Reconstructive\nsurgery"],
["Barrel Chest", "Increased AP\ndiameter", "COPD-related;\nadults mainly", "Accessory muscle use,\nreduced breath sounds", "Treat underlying\nlung disease"],
];
s.addTable(tableData, {
x: 0.3, y: 1.1, w: 9.4, h: 4.2,
rowH: 0.62,
fill: { color: C.white },
border: { type: "solid", color: "DDDDDD", pt: 0.5 },
fontSize: 11,
fontFace: "Calibri",
color: C.text,
align: "left",
valign: "middle",
autoPage: false,
firstRowAsHeader: true,
colW: [2.0, 1.8, 1.5, 2.1, 2.0],
});
// Header row fill hack — recolor header cells
// (pptxgenjs header row fill via `fill` in first row cells)
}
// ══════════════════════════════════════════════════════════════
// SLIDE 12 – Thank You / Key Takeaways
// ══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape(pres.shapes.RECTANGLE, { x:0,y:0,w:10,h:5.625, fill:{color:C.navy}, line:{color:C.navy} });
// Bottom teal strip
s.addShape(pres.shapes.RECTANGLE, { x:0,y:4.9,w:10,h:0.725, fill:{color:C.teal}, line:{color:C.teal} });
s.addShape(pres.shapes.RECTANGLE, { x:0,y:4.88,w:10,h:0.06, fill:{color:C.gold}, line:{color:C.gold} });
s.addText("Key Takeaways", {
x: 0.5, y: 0.4, w: 9, h: 0.65,
fontSize: 30, bold: true, color: C.white, fontFace: "Calibri", charSpacing: 2
});
s.addShape(pres.shapes.RECTANGLE, { x:0.5,y:1.1,w:9,h:0.04, fill:{color:C.gold}, line:{color:C.gold} });
const takeaways = [
"Chest deformities are common — pectus excavatum alone affects up to 1 in 400 children",
"Most patients are physiologically compensated; psychosocial impact is equally important to address",
"Physical assessment by nursing staff includes chest shape, breathing pattern, posture and auscultation",
"The Haller Index (CT scan) guides surgical decision-making; repair is indicated when > 3.25",
"Nuss procedure (minimally invasive) is now preferred over open Ravitch repair for most patients",
"Post-op nursing priorities: pain control, respiratory monitoring, drain care, and complication surveillance",
"Patient education must cover activity restrictions, warning signs, brace compliance and follow-up",
];
takeaways.forEach((t, i) => {
const y = 1.25 + i * 0.46;
s.addShape(pres.shapes.ROUNDED_RECTANGLE, {
x: 0.4, y: y, w: 0.38, h: 0.36,
fill: { color: C.gold }, line: { color: C.gold }, rectRadius: 0.06
});
s.addText(`${i + 1}`, {
x: 0.4, y: y, w: 0.38, h: 0.36,
fontSize: 12, bold: true, color: C.navy, align: "center", valign: "middle"
});
s.addText(t, {
x: 0.9, y: y, w: 8.7, h: 0.38,
fontSize: 12, color: C.ice, valign: "middle", fontFace: "Calibri"
});
});
s.addText("Nursing Education Series | Chest Deformities Overview", {
x: 0.5, y: 4.91, w: 9, h: 0.5,
fontSize: 11, color: C.ice, align: "center", valign: "middle"
});
}
// ── Write file ─────────────────────────────────────────────────
pres.writeFile({ fileName: "/home/daytona/workspace/chest-deformities-ppt/Chest_Deformities_Nursing.pptx" })
.then(() => console.log("Done: Chest_Deformities_Nursing.pptx"))
.catch(e => { console.error(e); process.exit(1); });
cd /home/daytona/workspace/chest-deformities-ppt && node create_ppt.js 2>&1
ls -lh /home/daytona/workspace/chest-deformities-ppt/Chest_Deformities_Nursing.pptx
Chest Deformities Nursing
Presentation · PPTX
| # | Slide Title |
|---|---|
| 1 | Title slide with topic overview |
| 2 | What Are Chest Deformities? - definition, epidemiology, key facts |
| 3 | Pectus Excavatum (Funnel Chest) - definition, causes, signs & symptoms |
| 4 | Other Deformities - Pectus Carinatum, Sternal Cleft, Poland Syndrome, Barrel Chest |
| 5 | Causes & Risk Factors - embryology, genetics, connective tissue disorders |
| 6 | Clinical Assessment & Diagnosis - nurse's physical exam + investigations (Haller Index, PFTs, Echo) |
| 7 | Non-Surgical Management - observation, bracing, physiotherapy, psychological support |
| 8 | Surgical Management - Nuss procedure vs. Ravitch procedure, indications & timing |
| 9 | Nursing Care & Post-op Management - pre-op, post-op, and complication monitoring |
| 10 | Patient & Family Education - discharge guidance, warning signs, follow-up |
| 11 | Quick Reference Summary Table - all deformities side by side |
| 12 | Key Takeaways - 7 numbered clinical pearls |