Childhood obesity for my paediatric medical exam
"childhood obesity" management
childhood obesity 2024 AAP guidelines treatment management
| Category | BMI for Age (children ≥2 years) |
|---|---|
| Underweight | < 5th percentile |
| Healthy weight | 5th to < 85th percentile |
| Overweight | ≥ 85th to < 95th percentile |
| Obese | ≥ 95th percentile (or BMI ≥ 30 kg/m²) |
A normal BMI that crosses two percentile lines upward is a risk factor for future obesity and warrants early intervention.
| BMI Category | Initial Labs |
|---|---|
| Normal, but increasing | Consider fasting glucose/HbA1c/OGTT, lipid profile, ALT, AST if risk factors |
| Overweight | Fasting glucose or HbA1c or OGTT, fasting lipid profile, ALT, AST; consider thyroid studies, cortisol based on clinical picture |
| Obese | All of the above; consider vitamin D, fasting insulin; TFTs, cortisol if clinical suspicion |
| Topic | Key Fact |
|---|---|
| Definition (≥2 yrs) | BMI for age ≥95th percentile |
| Overweight (≥2 yrs) | BMI 85th-<95th percentile |
| Most common single-gene mutation | MC4R defect (~5% of severe obesity) |
| Orthopaedic emergency | SCFE - hip/knee pain in obese adolescent |
| Neurological complication | Pseudotumor cerebri |
| Screen time limit (<18m) | No media except video chat |
| Max weight loss (2-5 yrs) | 1 lb/month |
| Max weight loss (older) | 2 lbs/week |
| First-line pharmacotherapy (≥12 yrs) | Orlistat |
| Growth chart tool (≥2 yrs) | CDC growth charts |
| Growth chart tool (<2 yrs) | WHO growth charts |
Make a ppt on this topic for seminar
ls /home/daytona/workspace/ 2>/dev/null && echo "OK"
mkdir -p /home/daytona/workspace/childhood-obesity-ppt && echo "dir created"
~/childhood-obesity-ppt/create_ppt.js
const pptxgen = require("pptxgenjs");
const pres = new pptxgen();
pres.layout = "LAYOUT_16x9";
pres.title = "Childhood Obesity";
pres.author = "Paediatric Seminar";
// ─── COLOUR PALETTE ───────────────────────────────────────────────────────────
const C = {
navy: "0D2B45", // dominant dark
teal: "0E7C7B", // supporting
amber: "F4A261", // accent / highlights
cream: "FDF6EC", // light bg
white: "FFFFFF",
textDark:"1A1A2E",
textMid: "3A4A5C",
red: "C0392B",
green: "27AE60",
slate: "ECF0F1",
};
// ─── REUSABLE HELPERS ─────────────────────────────────────────────────────────
function slideHeader(slide, title, subtitle) {
// dark navy banner at top
slide.addShape(pres.shapes.RECTANGLE, {
x: 0, y: 0, w: 10, h: 1.0,
fill: { color: C.navy }, line: { color: C.navy }
});
slide.addText(title, {
x: 0.35, y: 0.08, w: 9.3, h: 0.84,
fontSize: 22, bold: true, color: C.white,
fontFace: "Calibri", valign: "middle", margin: 0
});
if (subtitle) {
slide.addShape(pres.shapes.RECTANGLE, {
x: 0, y: 1.0, w: 10, h: 0.32,
fill: { color: C.teal }, line: { color: C.teal }
});
slide.addText(subtitle, {
x: 0.35, y: 1.0, w: 9.3, h: 0.32,
fontSize: 11, color: C.white, italic: true,
fontFace: "Calibri", valign: "middle", margin: 0
});
}
}
function accentBar(slide) {
slide.addShape(pres.shapes.RECTANGLE, {
x: 0, y: 5.35, w: 10, h: 0.28,
fill: { color: C.amber }, line: { color: C.amber }
});
slide.addText("Childhood Obesity | Paediatric Seminar", {
x: 0.3, y: 5.35, w: 9.4, h: 0.28,
fontSize: 9, color: C.navy, fontFace: "Calibri",
valign: "middle", margin: 0
});
}
// ═══════════════════════════════════════════════════════════════════════════════
// SLIDE 1 – TITLE
// ═══════════════════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
// full dark bg
s.addShape(pres.shapes.RECTANGLE, {
x: 0, y: 0, w: 10, h: 5.625,
fill: { color: C.navy }, line: { color: C.navy }
});
// teal accent strip left
s.addShape(pres.shapes.RECTANGLE, {
x: 0, y: 0, w: 0.18, h: 5.625,
fill: { color: C.teal }, line: { color: C.teal }
});
// amber accent strip bottom
s.addShape(pres.shapes.RECTANGLE, {
x: 0, y: 5.0, w: 10, h: 0.625,
fill: { color: C.amber }, line: { color: C.amber }
});
// main title
s.addText("CHILDHOOD OBESITY", {
x: 0.5, y: 1.4, w: 9, h: 1.1,
fontSize: 44, bold: true, color: C.white,
fontFace: "Calibri", align: "center", charSpacing: 3
});
// subtitle
s.addText("A Comprehensive Paediatric Seminar", {
x: 0.5, y: 2.55, w: 9, h: 0.55,
fontSize: 20, color: C.amber, italic: true,
fontFace: "Calibri", align: "center"
});
// sub-line
s.addText("Definition | Aetiology | Complications | Management", {
x: 0.5, y: 3.2, w: 9, h: 0.4,
fontSize: 13, color: "A0B8CC",
fontFace: "Calibri", align: "center"
});
// date
s.addText("July 2026", {
x: 0.5, y: 5.05, w: 9, h: 0.45,
fontSize: 12, color: C.navy,
fontFace: "Calibri", align: "center", bold: true
});
}
// ═══════════════════════════════════════════════════════════════════════════════
// SLIDE 2 – EPIDEMIOLOGY
// ═══════════════════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape(pres.shapes.RECTANGLE, { x:0,y:0,w:10,h:5.625, fill:{color:C.cream}, line:{color:C.cream} });
slideHeader(s, "EPIDEMIOLOGY", "A Growing Global Health Crisis");
// 3 stat boxes
const boxes = [
{ val: "390M+", label: "Children & adolescents\nliving with obesity worldwide", col: C.navy },
{ val: "2-3×", label: "Prevalence has tripled\nsince the 1970s", col: C.teal },
{ val: "70%", label: "Obese children become\nobese adults", col: C.amber },
];
boxes.forEach((b, i) => {
const x = 0.4 + i * 3.2;
s.addShape(pres.shapes.ROUNDED_RECTANGLE, {
x, y: 1.5, w: 2.9, h: 2.4,
fill: { color: b.col }, rectRadius: 0.12,
shadow: { type:"outer", color:"000000", blur:8, offset:3, angle:135, opacity:0.18 }
});
s.addText(b.val, {
x, y: 1.65, w: 2.9, h: 0.9,
fontSize: 36, bold: true, color: C.white,
fontFace: "Calibri", align: "center"
});
s.addText(b.label, {
x, y: 2.55, w: 2.9, h: 1.2,
fontSize: 13, color: C.white,
fontFace: "Calibri", align: "center"
});
});
s.addText("WHO 2022 | Lancet Child & Adolescent Health", {
x: 0.4, y: 4.15, w: 9.2, h: 0.3,
fontSize: 9, color: C.textMid, italic: true, align: "center"
});
accentBar(s);
}
// ═══════════════════════════════════════════════════════════════════════════════
// SLIDE 3 – DEFINITION & CLASSIFICATION
// ═══════════════════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape(pres.shapes.RECTANGLE, { x:0,y:0,w:10,h:5.625, fill:{color:C.cream}, line:{color:C.cream} });
slideHeader(s, "DEFINITION & CLASSIFICATION", "BMI for Age – WHO / CDC Growth Charts");
// table rows
const rows = [
{ cat: "Underweight", bmi: "< 5th percentile", col: "3498DB" },
{ cat: "Healthy Weight", bmi: "5th – < 85th percentile", col: C.green },
{ cat: "Overweight", bmi: "≥ 85th – < 95th percentile", col: "E67E22" },
{ cat: "Obese", bmi: "≥ 95th percentile", col: C.red },
];
// header row
s.addShape(pres.shapes.RECTANGLE, { x:0.5, y:1.55, w:4.0, h:0.42, fill:{color:C.navy}, line:{color:C.navy} });
s.addShape(pres.shapes.RECTANGLE, { x:4.6, y:1.55, w:5.0, h:0.42, fill:{color:C.navy}, line:{color:C.navy} });
s.addText("BMI CATEGORY", { x:0.5, y:1.55, w:4.0, h:0.42, fontSize:12, bold:true, color:C.white, fontFace:"Calibri", align:"center", valign:"middle", margin:0 });
s.addText("BMI FOR AGE (≥ 2 years)", { x:4.6, y:1.55, w:5.0, h:0.42, fontSize:12, bold:true, color:C.white, fontFace:"Calibri", align:"center", valign:"middle", margin:0 });
rows.forEach((r, i) => {
const y = 2.05 + i * 0.52;
const bgC = i % 2 === 0 ? C.white : C.slate;
s.addShape(pres.shapes.RECTANGLE, { x:0.5, y, w:4.0, h:0.48, fill:{color:bgC}, line:{color:"CCCCCC"} });
s.addShape(pres.shapes.RECTANGLE, { x:4.6, y, w:5.0, h:0.48, fill:{color:bgC}, line:{color:"CCCCCC"} });
// coloured left indicator
s.addShape(pres.shapes.RECTANGLE, { x:0.5, y, w:0.12, h:0.48, fill:{color:r.col}, line:{color:r.col} });
s.addText(r.cat, { x:0.68, y, w:3.82, h:0.48, fontSize:13, bold:true, color:C.textDark, fontFace:"Calibri", valign:"middle", margin:4 });
s.addText(r.bmi, { x:4.6, y, w:5.0, h:0.48, fontSize:13, color:C.textDark, fontFace:"Calibri", valign:"middle", align:"center", margin:4 });
});
// note box
s.addShape(pres.shapes.ROUNDED_RECTANGLE, {
x:0.5, y:4.2, w:9.0, h:0.55,
fill:{color:"FFF3CD"}, line:{color:C.amber}, rectRadius:0.08
});
s.addText([
{text:"Key: ", options:{bold:true, color:C.navy}},
{text:"< 2 yrs: use Weight-for-Length; No consensus definition for obesity | ≥ 2 yrs: CDC charts | BMI crossing 2 percentile lines upward = early warning", options:{color:C.textDark}}
], { x:0.6, y:4.2, w:8.8, h:0.55, fontSize:10, fontFace:"Calibri", valign:"middle", margin:4 });
accentBar(s);
}
// ═══════════════════════════════════════════════════════════════════════════════
// SLIDE 4 – AETIOLOGY
// ═══════════════════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape(pres.shapes.RECTANGLE, { x:0,y:0,w:10,h:5.625, fill:{color:C.cream}, line:{color:C.cream} });
slideHeader(s, "AETIOLOGY", "Antecedents · Triggers · Perpetuators");
const cols = [
{
title: "GENETIC (Antecedents)", col: C.navy,
items: ["Ob gene (chr 7) – leptin pathway","FTO gene (chr 16) – most studied GWAS locus","MC4R defect – most common single-gene cause (~5%)","BDNF gene – Mendelian obesity","PPAR-γ, ADRB2/3, GAD2 genes"]
},
{
title: "ENVIRONMENTAL (Triggers)", col: C.teal,
items: ["High fructose / high GI diet","Food insecurity & ultra-processed foods","Excess screen time & sedentary lifestyle","Maternal diabetes / gestational weight gain","BPA & endocrine disruptors"]
},
{
title: "PERPETUATORS", col: "8E44AD",
items: ["Poor/inadequate sleep (disrupted chronobiology)","Obstructive sleep apnoea","Psychosocial stress","Minimal physical activity","Gut microbiome dysbiosis (2025 evidence)"]
},
];
cols.forEach((col, i) => {
const x = 0.22 + i * 3.26;
s.addShape(pres.shapes.RECTANGLE, { x, y:1.42, w:3.1, h:0.42, fill:{color:col.col}, line:{color:col.col} });
s.addText(col.title, { x, y:1.42, w:3.1, h:0.42, fontSize:10.5, bold:true, color:C.white, fontFace:"Calibri", align:"center", valign:"middle", margin:0 });
s.addShape(pres.shapes.RECTANGLE, { x, y:1.84, w:3.1, h:3.0, fill:{color:C.white}, line:{color:col.col} });
const items = col.items.map((t, j) => ({
text: t,
options: { bullet:{type:"bullet"}, breakLine: j < col.items.length-1, fontSize:11.5, color:C.textDark, fontFace:"Calibri" }
}));
s.addText(items, { x:x+0.1, y:1.9, w:2.9, h:2.85, margin:6 });
});
accentBar(s);
}
// ═══════════════════════════════════════════════════════════════════════════════
// SLIDE 5 – SECONDARY CAUSES
// ═══════════════════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape(pres.shapes.RECTANGLE, { x:0,y:0,w:10,h:5.625, fill:{color:C.cream}, line:{color:C.cream} });
slideHeader(s, "SECONDARY CAUSES TO EXCLUDE", "Short stature + obesity = endocrine cause until proven otherwise");
const causes = [
{ name: "Hypothyroidism", clues: "Weight gain, cold intolerance, constipation, goitre, delayed DTRs, ↑TSH" },
{ name: "Cushing Syndrome", clues: "Central adiposity, moon face, buffalo hump, striae, hypertension, ↑cortisol" },
{ name: "Prader-Willi Syndrome", clues: "Hyperphagia, hypotonia, cognitive delay, small hands/feet, chromosome 15 deletion" },
{ name: "GH Deficiency", clues: "Short stature, central adiposity, ↓IGF-1, delayed bone age" },
{ name: "Insulinoma", clues: "Hypoglycaemia, weight gain, ↑C-peptide & insulin" },
{ name: "Medications", clues: "Corticosteroids, antipsychotics, antidepressants, anticonvulsants" },
];
causes.forEach((c, i) => {
const row = Math.floor(i / 2);
const colN = i % 2;
const x = 0.3 + colN * 4.9;
const y = 1.55 + row * 1.15;
s.addShape(pres.shapes.ROUNDED_RECTANGLE, {
x, y, w:4.55, h:1.0,
fill:{color:C.white}, line:{color:C.teal}, rectRadius:0.1,
shadow:{type:"outer",color:"000000",blur:5,offset:2,angle:135,opacity:0.12}
});
s.addShape(pres.shapes.RECTANGLE, { x, y, w:0.14, h:1.0, fill:{color:C.teal}, line:{color:C.teal} });
s.addText(c.name, { x:x+0.22, y:y+0.04, w:4.25, h:0.32, fontSize:13, bold:true, color:C.navy, fontFace:"Calibri", margin:0 });
s.addText(c.clues, { x:x+0.22, y:y+0.36, w:4.25, h:0.58, fontSize:10, color:C.textMid, fontFace:"Calibri", margin:0 });
});
accentBar(s);
}
// ═══════════════════════════════════════════════════════════════════════════════
// SLIDE 6 – COMPLICATIONS
// ═══════════════════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape(pres.shapes.RECTANGLE, { x:0,y:0,w:10,h:5.625, fill:{color:C.cream}, line:{color:C.cream} });
slideHeader(s, "COMPLICATIONS & COMORBIDITIES", "Multi-system impact across all organ systems");
const systems = [
{ sys:"Endocrine", col:"E74C3C", items:["PCOS","Precocious puberty","Pre-diabetes / T2DM","Insulin resistance"] },
{ sys:"Cardiovascular", col:"C0392B", items:["Hypertension","Dyslipidaemia","Early atherosclerosis"] },
{ sys:"GI / Hepatic", col:C.teal, items:["NAFLD / NASH","Cholelithiasis","GORD"] },
{ sys:"Neurological", col:"8E44AD", items:["Pseudotumor cerebri","OSA-related cognitive effects"] },
{ sys:"Orthopaedic", col:"E67E22", items:["Blount disease","SCFE ⚠ urgent","Legg-Calvé-Perthes disease"] },
{ sys:"Psychosocial", col:"2980B9", items:["Depression & anxiety","Binge eating disorder","Bullying / low self-esteem"] },
];
systems.forEach((sys, i) => {
const col = i % 3;
const row = Math.floor(i / 3);
const x = 0.22 + col * 3.26;
const y = 1.42 + row * 1.85;
s.addShape(pres.shapes.RECTANGLE, { x, y, w:3.1, h:0.38, fill:{color:sys.col}, line:{color:sys.col} });
s.addText(sys.sys.toUpperCase(), { x, y, w:3.1, h:0.38, fontSize:11, bold:true, color:C.white, fontFace:"Calibri", align:"center", valign:"middle", margin:0 });
s.addShape(pres.shapes.RECTANGLE, { x, y:y+0.38, w:3.1, h:1.4, fill:{color:C.white}, line:{color:sys.col} });
const items = sys.items.map((t, j) => ({
text: t, options: { bullet:{type:"bullet"}, breakLine: j < sys.items.length-1, fontSize:11, color: t.includes("⚠") ? C.red : C.textDark, bold: t.includes("⚠"), fontFace:"Calibri" }
}));
s.addText(items, { x:x+0.1, y:y+0.42, w:2.95, h:1.3, margin:5 });
});
accentBar(s);
}
// ═══════════════════════════════════════════════════════════════════════════════
// SLIDE 7 – ASSESSMENT
// ═══════════════════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape(pres.shapes.RECTANGLE, { x:0,y:0,w:10,h:5.625, fill:{color:C.cream}, line:{color:C.cream} });
slideHeader(s, "ASSESSMENT", "History · Examination · Investigations");
// Left panel – History + Examination
s.addShape(pres.shapes.RECTANGLE, { x:0.3, y:1.42, w:4.55, h:3.7, fill:{color:C.white}, line:{color:C.navy} });
s.addShape(pres.shapes.RECTANGLE, { x:0.3, y:1.42, w:4.55, h:0.38, fill:{color:C.navy}, line:{color:C.navy} });
s.addText("HISTORY & EXAMINATION", { x:0.3, y:1.42, w:4.55, h:0.38, fontSize:11, bold:true, color:C.white, fontFace:"Calibri", align:"center", valign:"middle", margin:0 });
const hxItems = [
{text:"📋 HISTORY", options:{bold:true, breakLine:true, fontSize:11, color:C.teal, fontFace:"Calibri"}},
{text:"Dietary history (24-hr recall, food diary)", options:{bullet:{type:"bullet"}, breakLine:true, fontSize:10.5, color:C.textDark, fontFace:"Calibri"}},
{text:"Screen time & physical activity", options:{bullet:{type:"bullet"}, breakLine:true, fontSize:10.5, color:C.textDark, fontFace:"Calibri"}},
{text:"Sleep (snoring, apnoeas)", options:{bullet:{type:"bullet"}, breakLine:true, fontSize:10.5, color:C.textDark, fontFace:"Calibri"}},
{text:"Family history (obesity, T2DM, CVD)", options:{bullet:{type:"bullet"}, breakLine:true, fontSize:10.5, color:C.textDark, fontFace:"Calibri"}},
{text:"Medications (steroids, antipsychotics)", options:{bullet:{type:"bullet"}, breakLine:true, fontSize:10.5, color:C.textDark, fontFace:"Calibri"}},
{text:"🔍 EXAMINATION", options:{bold:true, breakLine:true, fontSize:11, color:C.teal, fontFace:"Calibri"}},
{text:"Weight, height, BMI – plot on growth chart", options:{bullet:{type:"bullet"}, breakLine:true, fontSize:10.5, color:C.textDark, fontFace:"Calibri"}},
{text:"Blood pressure", options:{bullet:{type:"bullet"}, breakLine:true, fontSize:10.5, color:C.textDark, fontFace:"Calibri"}},
{text:"Acanthosis nigricans (insulin resistance)", options:{bullet:{type:"bullet"}, breakLine:true, fontSize:10.5, color:C.textDark, fontFace:"Calibri"}},
{text:"Tanner staging (puberty)", options:{bullet:{type:"bullet"}, breakLine:true, fontSize:10.5, color:C.textDark, fontFace:"Calibri"}},
{text:"Waist circumference (central adiposity)", options:{bullet:{type:"bullet"}, fontSize:10.5, color:C.textDark, fontFace:"Calibri"}},
];
s.addText(hxItems, { x:0.4, y:1.85, w:4.35, h:3.2, margin:5 });
// Right panel – Investigations table
s.addShape(pres.shapes.RECTANGLE, { x:5.15, y:1.42, w:4.55, h:3.7, fill:{color:C.white}, line:{color:C.navy} });
s.addShape(pres.shapes.RECTANGLE, { x:5.15, y:1.42, w:4.55, h:0.38, fill:{color:C.navy}, line:{color:C.navy} });
s.addText("INVESTIGATIONS BY BMI", { x:5.15, y:1.42, w:4.55, h:0.38, fontSize:11, bold:true, color:C.white, fontFace:"Calibri", align:"center", valign:"middle", margin:0 });
const invRows = [
{ cat:"Overweight", tests:"Fasting glucose/HbA1c/OGTT\nFasting lipids, ALT, AST\nTFTs, cortisol if indicated", col:"E67E22" },
{ cat:"Obese", tests:"All of above +\nVitamin D, fasting insulin\nConsider TFTs, cortisol", col:C.red },
{ cat:"Rising BMI\n(crossing 2 lines)", tests:"Fasting glucose/HbA1c\nLipid profile, ALT, AST\nif risk factors present", col:"F39C12" },
];
invRows.forEach((r, i) => {
const y = 1.88 + i * 1.08;
s.addShape(pres.shapes.RECTANGLE, { x:5.15, y, w:1.5, h:1.0, fill:{color:r.col}, line:{color:r.col} });
s.addText(r.cat, { x:5.15, y, w:1.5, h:1.0, fontSize:10.5, bold:true, color:C.white, fontFace:"Calibri", align:"center", valign:"middle", margin:4 });
s.addShape(pres.shapes.RECTANGLE, { x:6.65, y, w:3.05, h:1.0, fill:{color:i%2===0?C.slate:C.white}, line:{color:"CCCCCC"} });
s.addText(r.tests, { x:6.72, y:y+0.04, w:2.95, h:0.92, fontSize:10, color:C.textDark, fontFace:"Calibri", valign:"middle", margin:4 });
});
accentBar(s);
}
// ═══════════════════════════════════════════════════════════════════════════════
// SLIDE 8 – PREVENTION (AAP)
// ═══════════════════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape(pres.shapes.RECTANGLE, { x:0,y:0,w:10,h:5.625, fill:{color:C.cream}, line:{color:C.cream} });
slideHeader(s, "PREVENTION – AAP RECOMMENDATIONS", "American Academy of Pediatrics Guidelines");
const steps = [
{ num:"1", text:"Exclusive breastfeeding until 6 months → continue ≥12 months", icon:"🤱" },
{ num:"2", text:"Daily breakfast + regular family mealtimes", icon:"🍳" },
{ num:"3", text:"Limit sugary drinks, fast food & energy-dense foods; encourage fruits & vegetables", icon:"🥦" },
{ num:"4", text:"Screen time: <18m = none; 18–24m = co-view; 2–5yr = max 1 hr/day", icon:"📱" },
{ num:"5", text:"≥60 minutes of moderate-to-vigorous physical activity every day", icon:"🏃" },
];
steps.forEach((st, i) => {
const y = 1.45 + i * 0.75;
s.addShape(pres.shapes.ROUNDED_RECTANGLE, { x:0.3, y, w:9.4, h:0.65, fill:{color:C.white}, line:{color:C.teal}, rectRadius:0.1 });
s.addShape(pres.shapes.ROUNDED_RECTANGLE, { x:0.3, y, w:0.62, h:0.65, fill:{color:C.teal}, line:{color:C.teal}, rectRadius:0.08 });
s.addText(st.num, { x:0.3, y, w:0.62, h:0.65, fontSize:18, bold:true, color:C.white, fontFace:"Calibri", align:"center", valign:"middle", margin:0 });
s.addText(st.icon + " " + st.text, { x:1.02, y:y+0.04, w:8.55, h:0.57, fontSize:12.5, color:C.textDark, fontFace:"Calibri", valign:"middle", margin:4 });
});
accentBar(s);
}
// ═══════════════════════════════════════════════════════════════════════════════
// SLIDE 9 – MANAGEMENT STEPPED APPROACH
// ═══════════════════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape(pres.shapes.RECTANGLE, { x:0,y:0,w:10,h:5.625, fill:{color:C.cream}, line:{color:C.cream} });
slideHeader(s, "MANAGEMENT – STEPPED APPROACH", "Escalation based on response at each 3–6 month interval");
const steps = [
{ step:"STEP 1", title:"Primary Care Lifestyle Counselling", col:C.green, detail:"Motivational interviewing · Dietary advice · 60 min/day exercise\nWeight maintenance goals · No media < 18 months · Family involvement" },
{ step:"STEP 2", title:"Structured Multidisciplinary Programme", col:"F39C12", detail:"Hypocaloric diet (−500 kcal/day) · High GI food restriction\nBehavioural therapy · Food diary · Family-based intervention" },
{ step:"STEP 3", title:"Pharmacotherapy (Specialist referral)", col:"E67E22", detail:"Orlistat ≥12 yr · Metformin (insulin resistance/prediabetes) · Liraglutide (GLP-1, ≥12 yr)\nAdjunct to lifestyle only — NOT a replacement" },
{ step:"STEP 4", title:"Bariatric Surgery (Tertiary centre)", col:C.red, detail:"BMI ≥40 OR ≥35 + severe comorbidity · Tanner stage 4–5\nRYGB or sleeve gastrectomy · All other steps must have failed" },
];
steps.forEach((st, i) => {
const y = 1.42 + i * 0.98;
s.addShape(pres.shapes.RECTANGLE, { x:0.3, y, w:1.6, h:0.85, fill:{color:st.col}, line:{color:st.col} });
s.addText(st.step, { x:0.3, y, w:1.6, h:0.85, fontSize:14, bold:true, color:C.white, fontFace:"Calibri", align:"center", valign:"middle", margin:0 });
s.addShape(pres.shapes.RECTANGLE, { x:1.9, y, w:7.8, h:0.85, fill:{color:C.white}, line:{color:st.col} });
s.addText(st.title, { x:2.0, y:y+0.03, w:7.6, h:0.32, fontSize:13, bold:true, color:C.textDark, fontFace:"Calibri", valign:"middle", margin:2 });
s.addText(st.detail, { x:2.0, y:y+0.36, w:7.6, h:0.46, fontSize:10, color:C.textMid, fontFace:"Calibri", valign:"top", margin:2 });
});
accentBar(s);
}
// ═══════════════════════════════════════════════════════════════════════════════
// SLIDE 10 – PHARMACOTHERAPY DETAIL
// ═══════════════════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape(pres.shapes.RECTANGLE, { x:0,y:0,w:10,h:5.625, fill:{color:C.cream}, line:{color:C.cream} });
slideHeader(s, "PHARMACOTHERAPY IN PAEDIATRIC OBESITY", "Adjunct to lifestyle — always specialist-supervised");
const drugs = [
{ name:"Orlistat", age:"≥12 years", mech:"Pancreatic lipase inhibitor\nReduces fat absorption ~30%", se:"Steatorrhoea, faecal urgency\nFat-soluble vitamin deficiency", note:"Only FDA-approved for adolescents" },
{ name:"Metformin", age:"≥10 years", mech:"Insulin sensitiser (biguanide)\nReduces hepatic glucose output", se:"GI upset, lactic acidosis (rare)\nVitamin B12 deficiency", note:"Preferred for T2DM/insulin resistance" },
{ name:"Liraglutide", age:"≥12 years", mech:"GLP-1 receptor agonist\nIncreases satiety, slows gastric emptying", se:"Nausea, vomiting\nPancreatitis (rare)", note:"~8% weight reduction; daily SC injection" },
];
drugs.forEach((d, i) => {
const x = 0.3 + i * 3.2;
const headerCols = [C.navy, C.teal, "8E44AD"];
s.addShape(pres.shapes.RECTANGLE, { x, y:1.42, w:3.05, h:0.55, fill:{color:headerCols[i]}, line:{color:headerCols[i]} });
s.addText(d.name, { x, y:1.42, w:3.05, h:0.35, fontSize:16, bold:true, color:C.white, fontFace:"Calibri", align:"center", valign:"middle", margin:0 });
s.addText("Age: " + d.age, { x, y:1.77, w:3.05, h:0.2, fontSize:10, color:C.white, fontFace:"Calibri", align:"center", italic:true, margin:0 });
const sections = [
{ label:"Mechanism", text:d.mech, col:"EAF4FF" },
{ label:"Side Effects", text:d.se, col:"FFF0F0" },
{ label:"Note", text:d.note, col:"F0FFF4" },
];
sections.forEach((sec, j) => {
const y = 2.05 + j * 1.05;
s.addShape(pres.shapes.RECTANGLE, { x, y, w:3.05, h:1.0, fill:{color:sec.col}, line:{color:"CCCCCC"} });
s.addText(sec.label, { x:x+0.08, y:y+0.04, w:2.9, h:0.28, fontSize:10, bold:true, color:headerCols[i], fontFace:"Calibri", margin:2 });
s.addText(sec.text, { x:x+0.08, y:y+0.3, w:2.9, h:0.65, fontSize:10, color:C.textDark, fontFace:"Calibri", margin:2 });
});
});
accentBar(s);
}
// ═══════════════════════════════════════════════════════════════════════════════
// SLIDE 11 – WEIGHT LOSS GOALS & MONITORING
// ═══════════════════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape(pres.shapes.RECTANGLE, { x:0,y:0,w:10,h:5.625, fill:{color:C.cream}, line:{color:C.cream} });
slideHeader(s, "WEIGHT GOALS & MONITORING", "Safe, age-appropriate targets — avoid rapid weight loss in children");
// 2 big goal boxes
s.addShape(pres.shapes.ROUNDED_RECTANGLE, { x:0.4, y:1.55, w:4.2, h:1.4, fill:{color:C.teal}, line:{color:C.teal}, rectRadius:0.15 });
s.addText("≤ 1 lb / month", { x:0.4, y:1.55, w:4.2, h:0.85, fontSize:32, bold:true, color:C.white, fontFace:"Calibri", align:"center", valign:"middle" });
s.addText("Children aged 2–5 years with obesity", { x:0.4, y:2.4, w:4.2, h:0.55, fontSize:13, color:C.white, fontFace:"Calibri", align:"center" });
s.addShape(pres.shapes.ROUNDED_RECTANGLE, { x:5.4, y:1.55, w:4.2, h:1.4, fill:{color:C.navy}, line:{color:C.navy}, rectRadius:0.15 });
s.addText("≤ 2 lbs / week", { x:5.4, y:1.55, w:4.2, h:0.85, fontSize:32, bold:true, color:C.white, fontFace:"Calibri", align:"center", valign:"middle" });
s.addText("Older children & adolescents with obesity", { x:5.4, y:2.4, w:4.2, h:0.55, fontSize:13, color:C.white, fontFace:"Calibri", align:"center" });
// monitoring checklist
s.addShape(pres.shapes.RECTANGLE, { x:0.4, y:3.15, w:9.2, h:0.38, fill:{color:C.navy}, line:{color:C.navy} });
s.addText("AT EVERY FOLLOW-UP VISIT", { x:0.4, y:3.15, w:9.2, h:0.38, fontSize:12, bold:true, color:C.white, fontFace:"Calibri", align:"center", valign:"middle", margin:0 });
const monitoring = [
"Record weight & plot on growth chart",
"Measure blood pressure",
"Review dietary diary & screen time logs",
"Motivational interviewing – empathetic, non-stigmatising style",
"Reassess labs if BMI not improving at 3–6 months",
"Refer to specialist multidisciplinary team if no improvement by 3–6 months",
];
const mitems = monitoring.map((t, i) => ({
text: t, options: { bullet:{type:"bullet"}, breakLine: i < monitoring.length-1, fontSize:11.5, color:C.textDark, fontFace:"Calibri" }
}));
s.addShape(pres.shapes.RECTANGLE, { x:0.4, y:3.53, w:9.2, h:1.5, fill:{color:C.white}, line:{color:C.navy} });
s.addText(mitems, { x:0.55, y:3.57, w:9.0, h:1.4, margin:5 });
accentBar(s);
}
// ═══════════════════════════════════════════════════════════════════════════════
// SLIDE 12 – HIGH YIELD EXAM TABLE
// ═══════════════════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape(pres.shapes.RECTANGLE, { x:0,y:0,w:10,h:5.625, fill:{color:C.cream}, line:{color:C.cream} });
slideHeader(s, "HIGH-YIELD EXAM FACTS", "Quick-recall table for paediatric exams");
const facts = [
["Definition (≥2 yrs)", "BMI for age ≥ 95th percentile"],
["Overweight (≥2 yrs)", "BMI 85th – < 95th percentile"],
["Most common single-gene mutation", "MC4R defect (~5% of severe obesity)"],
["Orthopaedic emergency", "SCFE – hip/knee pain in obese adolescent → urgent referral"],
["Neurological complication", "Pseudotumor cerebri (idiopathic intracranial hypertension)"],
["Max weight loss (2–5 yrs)", "1 lb / month"],
["Max weight loss (older children)", "2 lbs / week"],
["First-line pharmacotherapy ≥12 yrs", "Orlistat (lipase inhibitor)"],
["Growth chart < 2 years", "WHO International Growth Charts"],
["Growth chart ≥ 2 years", "CDC Growth Charts"],
["Screen time < 18 months", "None (except video chatting)"],
];
// header
s.addShape(pres.shapes.RECTANGLE, { x:0.3, y:1.42, w:4.5, h:0.38, fill:{color:C.navy}, line:{color:C.navy} });
s.addShape(pres.shapes.RECTANGLE, { x:4.9, y:1.42, w:4.8, h:0.38, fill:{color:C.teal}, line:{color:C.teal} });
s.addText("TOPIC", { x:0.3, y:1.42, w:4.5, h:0.38, fontSize:11, bold:true, color:C.white, fontFace:"Calibri", align:"center", valign:"middle", margin:0 });
s.addText("KEY FACT", { x:4.9, y:1.42, w:4.8, h:0.38, fontSize:11, bold:true, color:C.white, fontFace:"Calibri", align:"center", valign:"middle", margin:0 });
facts.forEach(([topic, fact], i) => {
const y = 1.83 + i * 0.34;
const bg = i % 2 === 0 ? C.white : C.slate;
s.addShape(pres.shapes.RECTANGLE, { x:0.3, y, w:4.5, h:0.32, fill:{color:bg}, line:{color:"CCCCCC"} });
s.addShape(pres.shapes.RECTANGLE, { x:4.9, y, w:4.8, h:0.32, fill:{color:bg}, line:{color:"CCCCCC"} });
s.addText(topic, { x:0.36, y, w:4.38, h:0.32, fontSize:10, bold:true, color:C.textDark, fontFace:"Calibri", valign:"middle", margin:2 });
s.addText(fact, { x:4.96, y, w:4.68, h:0.32, fontSize:10, color:C.textDark, fontFace:"Calibri", valign:"middle", margin:2 });
});
accentBar(s);
}
// ═══════════════════════════════════════════════════════════════════════════════
// SLIDE 13 – CONCLUSION
// ═══════════════════════════════════════════════════════════════════════════════
{
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} });
s.addShape(pres.shapes.RECTANGLE, { x:0,y:0,w:0.18,h:5.625, fill:{color:C.teal}, line:{color:C.teal} });
s.addShape(pres.shapes.RECTANGLE, { x:0,y:5.0,w:10,h:0.625, fill:{color:C.amber}, line:{color:C.amber} });
s.addText("KEY TAKEAWAYS", {
x:0.5, y:0.5, w:9, h:0.65,
fontSize:28, bold:true, color:C.amber, fontFace:"Calibri", align:"center", charSpacing:2
});
const takeaways = [
"Childhood obesity = BMI for age ≥95th percentile (CDC charts ≥2 yrs)",
"MC4R defect is the most common single-gene cause — always consider genetics",
"Always exclude secondary causes: hypothyroidism, Cushing, Prader-Willi",
"SCFE is an orthopaedic emergency in obese adolescents — urgent referral",
"Management is stepped: lifestyle → multidisciplinary → pharmacotherapy → surgery",
"AAP: 60 min/day exercise + screen time limits from infancy",
"Weight loss targets must be age-specific — slow and safe",
"Motivational interviewing: empathy over stigma at every visit",
];
takeaways.forEach((t, i) => {
s.addShape(pres.shapes.ROUNDED_RECTANGLE, {
x:0.5, y:1.3+i*0.48, w:9.0, h:0.42,
fill:{color:i%2===0?"0E3D5C":"0A2A3E"}, line:{color:"1A5276"}, rectRadius:0.06
});
s.addText("✓ " + t, {
x:0.6, y:1.3+i*0.48, w:8.8, h:0.42,
fontSize:11.5, color:i===0||i===3||i===4?C.amber:C.white, fontFace:"Calibri", valign:"middle", margin:4
});
});
s.addText("Sources: Harriet Lane Handbook 23rd Ed · Textbook of Family Medicine 9e · AAP Guidelines 2023", {
x:0.5, y:5.05, w:9, h:0.42,
fontSize:9.5, color:C.navy, fontFace:"Calibri", align:"center", bold:true
});
}
// ─── WRITE FILE ───────────────────────────────────────────────────────────────
pres.writeFile({ fileName: "/home/daytona/workspace/childhood-obesity-ppt/Childhood_Obesity_Seminar.pptx" })
.then(() => console.log("✅ PPT created successfully"))
.catch(err => console.error("❌ Error:", err));
cd /home/daytona/workspace/childhood-obesity-ppt && node create_ppt.js 2>&1
ls -lh /home/daytona/workspace/childhood-obesity-ppt/Childhood_Obesity_Seminar.p…
Childhood Obesity Seminar
Presentation · PPTX
| Slide | Content |
|---|---|
| 1 | Title slide (dark navy + amber theme) |
| 2 | Epidemiology - 3 key stat boxes (390M+, 2-3x increase, 70% persist to adulthood) |
| 3 | Definition & Classification - colour-coded BMI table |
| 4 | Aetiology - 3-column layout (Genetic / Environmental / Perpetuators) |
| 5 | Secondary Causes to Exclude - card layout per condition |
| 6 | Complications - 6-system grid (Endocrine, CV, GI, Neuro, Orthopaedic, Psychosocial) |
| 7 | Assessment - History/Exam panel + Investigations by BMI |
| 8 | Prevention (AAP 5 recommendations) - numbered step layout |
| 9 | Management Stepped Approach (Steps 1-4) |
| 10 | Pharmacotherapy detail - Orlistat / Metformin / Liraglutide comparison |
| 11 | Weight goals & monitoring checklist |
| 12 | High-yield exam facts table |
| 13 | Conclusion / Key Takeaways (dark theme) |