In detail explanation for pediatrics
In detail explain of pediatric nursing
Create a summary PDF of all 38 topics for quick revision
ls /home/daytona/workspace/ 2>/dev/null && echo "---" && ls /home/daytona/skills…
mkdir -p /home/daytona/workspace/paeds-nursing-pdf && python3 -c "from reportlab…
~/paeds-nursing-pdf/generate_pdf.py
from reportlab.lib.pagesizes import A4
from reportlab.lib import colors
from reportlab.lib.styles import getSampleStyleSheet, ParagraphStyle
from reportlab.lib.units import cm, mm
from reportlab.platypus import (
SimpleDocTemplate, Paragraph, Spacer, Table, TableStyle,
HRFlowable, KeepTogether, PageBreak
)
from reportlab.lib.enums import TA_CENTER, TA_LEFT, TA_JUSTIFY
from reportlab.platypus import BaseDocTemplate, Frame, PageTemplate
from reportlab.lib.colors import HexColor
# ── Colour Palette ──────────────────────────────────────────────────────────
C_DARK_BLUE = HexColor("#1a2f5a")
C_MID_BLUE = HexColor("#2563eb")
C_LIGHT_BLUE = HexColor("#dbeafe")
C_TEAL = HexColor("#0d9488")
C_TEAL_LIGHT = HexColor("#ccfbf1")
C_RED = HexColor("#dc2626")
C_RED_LIGHT = HexColor("#fee2e2")
C_ORANGE = HexColor("#ea580c")
C_ORANGE_LIGHT= HexColor("#ffedd5")
C_GREEN = HexColor("#16a34a")
C_GREEN_LIGHT = HexColor("#dcfce7")
C_PURPLE = HexColor("#7c3aed")
C_PURPLE_LIGHT= HexColor("#ede9fe")
C_YELLOW = HexColor("#ca8a04")
C_YELLOW_LIGHT= HexColor("#fef9c3")
C_GREY_LIGHT = HexColor("#f1f5f9")
C_GREY_MED = HexColor("#e2e8f0")
C_GREY_DARK = HexColor("#475569")
WHITE = colors.white
BLACK = colors.black
# ── Page Setup ───────────────────────────────────────────────────────────────
PAGE_W, PAGE_H = A4
MARGIN = 1.8*cm
def header_footer(canvas, doc):
canvas.saveState()
# Header bar
canvas.setFillColor(C_DARK_BLUE)
canvas.rect(0, PAGE_H - 1.1*cm, PAGE_W, 1.1*cm, fill=1, stroke=0)
canvas.setFillColor(WHITE)
canvas.setFont("Helvetica-Bold", 9)
canvas.drawString(MARGIN, PAGE_H - 0.72*cm, "PAEDIATRIC NURSING - Quick Revision Guide")
canvas.drawRightString(PAGE_W - MARGIN, PAGE_H - 0.72*cm, "38 High-Yield Topics | NORCE Exam")
# Footer
canvas.setFillColor(C_GREY_MED)
canvas.rect(0, 0, PAGE_W, 0.9*cm, fill=1, stroke=0)
canvas.setFillColor(C_GREY_DARK)
canvas.setFont("Helvetica", 8)
canvas.drawCentredString(PAGE_W/2, 0.32*cm, f"Page {doc.page}")
canvas.restoreState()
doc = BaseDocTemplate(
"/home/daytona/workspace/paeds-nursing-pdf/Paediatric_Nursing_Quick_Revision.pdf",
pagesize=A4,
leftMargin=MARGIN, rightMargin=MARGIN,
topMargin=1.6*cm, bottomMargin=1.4*cm
)
frame = Frame(MARGIN, 1.4*cm, PAGE_W - 2*MARGIN, PAGE_H - 3.2*cm, id='main')
doc.addPageTemplates([PageTemplate(id='base', frames=frame, onPage=header_footer)])
# ── Styles ───────────────────────────────────────────────────────────────────
styles = getSampleStyleSheet()
def S(name, **kw):
return ParagraphStyle(name, **kw)
sTitle = S("sTitle", fontName="Helvetica-Bold", fontSize=22, textColor=WHITE,
alignment=TA_CENTER, spaceAfter=4, leading=28)
sSub = S("sSub", fontName="Helvetica", fontSize=12, textColor=C_LIGHT_BLUE,
alignment=TA_CENTER, spaceAfter=6, leading=16)
sCover = S("sCover", fontName="Helvetica", fontSize=10, textColor=C_GREY_LIGHT,
alignment=TA_CENTER, spaceAfter=4)
sH1 = S("sH1", fontName="Helvetica-Bold", fontSize=13, textColor=WHITE,
spaceBefore=4, spaceAfter=3, leading=16)
sH2 = S("sH2", fontName="Helvetica-Bold", fontSize=10.5, textColor=C_DARK_BLUE,
spaceBefore=5, spaceAfter=2, leading=13)
sBody = S("sBody", fontName="Helvetica", fontSize=8.5, textColor=BLACK,
leading=12, spaceAfter=2, alignment=TA_JUSTIFY)
sBullet = S("sBullet", fontName="Helvetica", fontSize=8.5, textColor=BLACK,
leading=12, spaceAfter=1, leftIndent=10, bulletIndent=0)
sBold = S("sBold", fontName="Helvetica-Bold", fontSize=8.5, textColor=BLACK,
leading=12, spaceAfter=2)
sKey = S("sKey", fontName="Helvetica-Bold", fontSize=8, textColor=C_RED,
leading=11, spaceAfter=1)
sTip = S("sTip", fontName="Helvetica-Oblique", fontSize=8, textColor=C_DARK_BLUE,
leading=11, spaceAfter=1)
# ── Colour map per section block ─────────────────────────────────────────────
SECTION_COLORS = [
C_MID_BLUE, C_TEAL, C_RED, C_ORANGE, C_GREEN, C_PURPLE,
C_YELLOW, C_DARK_BLUE, C_MID_BLUE, C_TEAL
]
# Maps topic number -> section colour index
def topic_color(n):
groups = [
(range(1,6), C_MID_BLUE),
(range(6,12), C_TEAL),
(range(12,17),C_RED),
(range(17,23),C_ORANGE),
(range(23,28),C_GREEN),
(range(28,33),C_PURPLE),
(range(33,39),C_DARK_BLUE),
]
for r, c in groups:
if n in r: return c
return C_MID_BLUE
def topic_light_color(n):
groups = [
(range(1,6), C_LIGHT_BLUE),
(range(6,12), C_TEAL_LIGHT),
(range(12,17),C_RED_LIGHT),
(range(17,23),C_ORANGE_LIGHT),
(range(23,28),C_GREEN_LIGHT),
(range(28,33),C_PURPLE_LIGHT),
(range(33,39),C_GREY_LIGHT),
]
for r, c in groups:
if n in r: return c
return C_LIGHT_BLUE
# ── Helpers ───────────────────────────────────────────────────────────────────
def topic_header(num, title, color):
"""Returns a coloured header row for a topic."""
data = [[Paragraph(f"<b>Topic {num} — {title}</b>", sH1)]]
t = Table(data, colWidths=[PAGE_W - 2*MARGIN])
t.setStyle(TableStyle([
('BACKGROUND', (0,0), (-1,-1), color),
('TOPPADDING', (0,0), (-1,-1), 5),
('BOTTOMPADDING', (0,0), (-1,-1), 5),
('LEFTPADDING', (0,0), (-1,-1), 8),
('RIGHTPADDING', (0,0), (-1,-1), 8),
('ROUNDEDCORNERS', [4,4,4,4]),
]))
return t
def info_box(text, bg=C_LIGHT_BLUE, tc=C_DARK_BLUE):
data = [[Paragraph(text, ParagraphStyle("ib", fontName="Helvetica", fontSize=8.2,
textColor=tc, leading=11))]]
t = Table(data, colWidths=[PAGE_W - 2*MARGIN])
t.setStyle(TableStyle([
('BACKGROUND', (0,0), (-1,-1), bg),
('TOPPADDING', (0,0), (-1,-1), 5),
('BOTTOMPADDING', (0,0), (-1,-1), 5),
('LEFTPADDING', (0,0), (-1,-1), 8),
('RIGHTPADDING', (0,0), (-1,-1), 8),
('BOX', (0,0), (-1,-1), 0.5, tc),
]))
return t
def make_table(header_row, data_rows, col_widths=None, hdr_color=C_MID_BLUE):
"""Generic table builder."""
col_count = len(header_row)
if col_widths is None:
avail = PAGE_W - 2*MARGIN - 2*mm
col_widths = [avail/col_count]*col_count
cell_style = ParagraphStyle("tc", fontName="Helvetica", fontSize=7.8,
leading=10.5, textColor=BLACK)
hdr_style = ParagraphStyle("th", fontName="Helvetica-Bold", fontSize=7.8,
leading=10.5, textColor=WHITE)
table_data = [[Paragraph(str(h), hdr_style) for h in header_row]]
for row in data_rows:
table_data.append([Paragraph(str(c), cell_style) for c in row])
t = Table(table_data, colWidths=col_widths, repeatRows=1)
style = [
('BACKGROUND', (0,0), (-1,0), hdr_color),
('ROWBACKGROUNDS', (0,1), (-1,-1), [WHITE, C_GREY_LIGHT]),
('TOPPADDING', (0,0), (-1,-1), 3),
('BOTTOMPADDING', (0,0), (-1,-1), 3),
('LEFTPADDING', (0,0), (-1,-1), 5),
('RIGHTPADDING', (0,0), (-1,-1), 5),
('GRID', (0,0), (-1,-1), 0.4, C_GREY_MED),
('VALIGN', (0,0), (-1,-1), 'TOP'),
]
t.setStyle(TableStyle(style))
return t
def b(text): return f"<b>{text}</b>"
def i(text): return f"<i>{text}</i>"
def red(text): return f'<font color="#dc2626"><b>{text}</b></font>'
# ═════════════════════════════════════════════════════════════════════════════
# CONTENT BUILD
# ═════════════════════════════════════════════════════════════════════════════
story = []
# ─────────────────────── COVER PAGE ──────────────────────────────────────────
cover_bg = Table([[""]], colWidths=[PAGE_W], rowHeights=[PAGE_H])
cover_bg.setStyle(TableStyle([('BACKGROUND', (0,0), (-1,-1), C_DARK_BLUE)]))
story.append(Spacer(1, 3*cm))
title_block = Table(
[[Paragraph("PAEDIATRIC NURSING", sTitle)],
[Paragraph("Quick Revision Guide", sSub)],
[Paragraph("38 High-Yield Topics for NORCE / NCLEX Exams", sCover)],
[Spacer(1, 0.5*cm)],
[Paragraph("Growth & Development · Neonatal Care · Pediatric Diseases · Emergency Nursing", sCover)],
],
colWidths=[PAGE_W - 2*MARGIN]
)
cover_table = Table(
[[title_block]],
colWidths=[PAGE_W - 2*MARGIN],
)
cover_table.setStyle(TableStyle([
('BACKGROUND', (0,0), (-1,-1), C_DARK_BLUE),
('TOPPADDING', (0,0), (-1,-1), 30),
('BOTTOMPADDING', (0,0), (-1,-1), 30),
('LEFTPADDING', (0,0), (-1,-1), 20),
('RIGHTPADDING', (0,0), (-1,-1), 20),
('ROUNDEDCORNERS', [8,8,8,8]),
]))
story.append(cover_table)
story.append(Spacer(1, 1*cm))
# Colour legend
legend_data = [
[Paragraph(b("Section Colour Guide"), ParagraphStyle("lg", fontName="Helvetica-Bold",
fontSize=9, textColor=C_DARK_BLUE))],
[make_table(
["Topics 1-5", "Topics 6-11", "Topics 12-16", "Topics 17-22",
"Topics 23-27", "Topics 28-32", "Topics 33-38"],
[["Dehydration\nORS", "Milestones\nReflexes", "NTD\nJaundice", "Meningitis\nSIDS",
"Hirschsprung\nKawasaki", "Immunization\nCPR", "Play\nWeaning"]],
col_widths=[(PAGE_W-2*MARGIN)/7]*7,
hdr_color=C_MID_BLUE
)]
]
story.append(Table(legend_data, colWidths=[PAGE_W - 2*MARGIN]))
story.append(Spacer(1, 0.4*cm))
story.append(info_box(
"💡 Each topic summary includes: Definition | Key Features | Nursing Care | Memory Tips",
bg=C_YELLOW_LIGHT, tc=C_YELLOW
))
story.append(PageBreak())
# ═════════════════════════════════════════════════════════════════════════════
# TOPICS DATA
# ═════════════════════════════════════════════════════════════════════════════
topics = []
# ── TOPIC 1 ───────────────────────────────────────────────────────────────────
topics.append({
"num": 1, "title": "Dehydration & ORS",
"items": [
("Definition", "Loss of body fluids causing electrolyte imbalance. Most common cause in children: diarrhea & vomiting."),
("Classification", None),
("table", {
"headers": ["Grade", "% Wt Loss", "Key Signs"],
"rows": [
["Mild", "< 5%", "Thirsty, dry mouth"],
["Moderate", "5-10%", "Sunken eyes, reduced skin turgor, decreased urine"],
["Severe", "> 10%", "Sunken fontanelle, no tears, lethargic, cold extremities"],
],
"widths": [3.5*cm, 3*cm, 9.5*cm],
"color": C_MID_BLUE
}),
("WHO ORS Composition", "Na 75 mEq/L | K 20 mEq/L | Cl 65 mEq/L | Glucose 75 mmol/L | Osmolarity 245 mOsm/L"),
("ORS Dosing", "Mild/Moderate: 50-100 mL/kg over 3-4 hrs. Severe: IV Ringer's Lactate 20 mL/kg bolus."),
("Nursing Key Points", "Monitor weight, urine output, vital signs. Zinc 20 mg/day × 14 days (> 6 months). Continue breastfeeding."),
("tip", "Remember: ORS works by glucose-Na+ co-transport. Skin pinch test → goes back slowly = dehydration."),
]
})
# ── TOPIC 2 ───────────────────────────────────────────────────────────────────
topics.append({
"num": 2, "title": "Breastfeeding",
"items": [
("WHO Recommendation", "Exclusive breastfeeding for 6 months; continue with complementary foods up to 2 years."),
("LATCH Score (0-10)", "L=Latch | A=Audible swallowing | T=Type of nipple | C=Comfort | H=Hold. Score >7 = good."),
("Benefits", "Infant: IgA, lactoferrin, reduces infections, SIDS. Mother: uterine involution, reduces cancer risk."),
("Contraindications", "HIV (developed countries), active TB (untreated), galactosemia, cytotoxic drugs, active herpes on breast."),
("Hormones", "Prolactin → milk production. Oxytocin → milk ejection (let-down reflex)."),
("Colostrum", "Days 1-3; rich in IgA, protein; low fat; yellow/thick. Most important early feed."),
("tip", "Correct latch: wide mouth, chin touching breast, lower lip flanged, areola mostly in mouth."),
]
})
# ── TOPIC 3 ───────────────────────────────────────────────────────────────────
topics.append({
"num": 3, "title": "Cleft Lip & Palate",
"items": [
("Definition", "Congenital failure of fusion of facial processes (4-10 weeks gestation). Incidence 1:700 live births."),
("Types", "Cleft Lip (CL) | Cleft Palate (CP) | Combined (CLCP). Unilateral left > right."),
("Surgery Rule of 10s (Lip)", "10 weeks age | 10 lbs weight | 10 g/dL Hb. Palate repair: 6-18 months."),
("Pre-op Nursing", "Haberman feeder, upright position, assess associated anomalies (VSD, Pierre Robin)."),
("Post-op Nursing", "Elbow restraints, clean suture with saline, no objects in mouth, spoon/dropper feeding, prevent crying."),
("tip", "Most feared post-op: airway obstruction. Priority: keep airway clear, position semi-prone."),
]
})
# ── TOPIC 4 ───────────────────────────────────────────────────────────────────
topics.append({
"num": 4, "title": "Growth & Development (G&D) Monitoring",
"items": [
("Weight Milestones", "Birth ~3 kg → Doubles at 5 months → Triples at 12 months → Quadruples at 2 years."),
("Length", "Birth 50 cm. Increases 25 cm in year 1, then 5-6 cm/year (2-12 yrs)."),
("Head Circumference (HC)", "Birth 33-35 cm. At 6 months HC = CC (~44 cm). After 1 year HC < CC."),
("Fontanelles", "Anterior: closes 12-18 months. Posterior: closes 2-3 months. Bulging = ↑ICP; Sunken = dehydration."),
("Growth Charts", "WHO (0-5 yrs) | CDC (2-18 yrs). Plots: weight-for-age, height-for-age, weight-for-height, BMI."),
("tip", "1st year = fastest growth. HC > CC until 1 year (brain growing faster than chest)."),
]
})
# ── TOPIC 5 ───────────────────────────────────────────────────────────────────
topics.append({
"num": 5, "title": "Anthropometric Measurements",
"items": [
("Definition", "Physical body measurements to assess nutritional status."),
("MUAC (Mid-Upper Arm Circumference)", "> 13.5 cm = Normal (green) | 12.5-13.5 = At-risk (yellow) | < 12.5 cm = SAM (red)."),
("Indices", "WHZ (wasting - acute) | HAZ (stunting - chronic) | WAZ (underweight)."),
("table", {
"headers": ["Measurement", "Assesses", "Malnutrition Type"],
"rows": [
["Weight-for-Height (WHZ)", "Acute malnutrition", "Wasting"],
["Height-for-Age (HAZ)", "Chronic malnutrition", "Stunting"],
["Weight-for-Age (WAZ)", "Overall", "Underweight"],
["MUAC", "Acute (field use)", "SAM if < 11.5 cm"],
],
"widths": [5*cm, 5*cm, 6*cm],
"color": C_MID_BLUE
}),
("tip", "MUAC is the quickest field tool. SAM threshold: MUAC < 11.5 cm in < 5 yrs."),
]
})
# ── TOPIC 6 ───────────────────────────────────────────────────────────────────
topics.append({
"num": 6, "title": "Developmental Milestones & Reflexes",
"items": [
("Primitive Reflexes", None),
("table", {
"headers": ["Reflex", "Appears", "Disappears"],
"rows": [
["Moro (startle)", "Birth", "4-6 months"],
["Rooting/Sucking", "Birth", "4 months"],
["Palmar grasp", "Birth", "5-6 months"],
["Babinski", "Birth", "12-18 months"],
["Tonic neck (ATNR)", "Birth", "4-6 months"],
],
"widths": [5.5*cm, 4*cm, 6.5*cm],
"color": C_TEAL
}),
("Key Motor Milestones", "3M: Head control | 6M: Sits with support | 9M: Stands with support | 12M: Walks with support | 18M: Walks independently."),
("Social/Language", "Social smile: 6-8 weeks. First word: 12 months. 2-word sentences: 2 years."),
("Fine Motor", "6M: Palmar grasp | 9M: Crude pincer | 12M: Fine pincer | 18M: Scribbles."),
("tip", "MNEMONIC: 3-6-9-12: head-sit-stand-walk. Social smile = FIRST social milestone."),
]
})
# ── TOPIC 7 ───────────────────────────────────────────────────────────────────
topics.append({
"num": 7, "title": "Neonatal Resuscitation (NRP)",
"items": [
("Golden Minute", "Within 60 seconds: Warm → Dry → Position → Suction (if meconium) → Stimulate."),
("Assessment", "Breathing + Heart Rate + Color → decide next step."),
("Steps", "HR < 100 or no breathing: PPV 40-60/min. HR < 60 after 30s PPV: Chest compressions (3:1). Still < 60: Epinephrine 0.1-0.3 mL/kg 1:10,000 IV."),
("O2 Use", "Room air (21%) for term infants initially. Blended O2 for preterm."),
("Complication if not resuscitated", "HIE (Hypoxic-Ischemic Encephalopathy), organ failure."),
("tip", "NRP = Neonatal Resuscitation Program (AAP). Epinephrine via umbilical vein."),
]
})
# ── TOPIC 8 ───────────────────────────────────────────────────────────────────
topics.append({
"num": 8, "title": "Respiratory Distress (RDS) & Croup",
"items": [
("RDS (Hyaline Membrane Disease)", "Surfactant deficiency in preterm (< 34 wks). Signs: Grunting, nasal flaring, retractions, cyanosis within hours of birth."),
("Silverman-Anderson Score", "0-10; score > 6 = severe RDS."),
("RDS Treatment", "Antenatal: Betamethasone 12 mg IM ×2 to mother. Postnatal: Surfactant (Curosurf), CPAP, O2."),
("Croup (LTB)", "Cause: Parainfluenza virus. Age: 6 months - 3 years. Signs: Barking (seal) cough, inspiratory stridor, hoarse voice."),
("Croup X-ray", "Steeple sign (subglottic narrowing)."),
("Croup Treatment", "Mild: Oral dexamethasone 0.6 mg/kg. Moderate/Severe: Nebulized racemic epinephrine + dexamethasone."),
("tip", "RDS = preterm + surfactant deficiency. Croup = viral + barking cough + stridor."),
]
})
# ── TOPIC 9 ───────────────────────────────────────────────────────────────────
topics.append({
"num": 9, "title": "APGAR Score",
"items": [
("Timing", "At 1 minute and 5 minutes (and 10 min if still < 7)."),
("table", {
"headers": ["Sign", "0", "1", "2"],
"rows": [
["Appearance (Color)", "Blue/pale", "Blue extremities, pink body", "Pink all over"],
["Pulse (HR)", "Absent", "< 100/min", "≥ 100/min"],
["Grimace (Reflex)", "No response", "Grimace", "Cry/cough/sneeze"],
["Activity (Tone)", "Limp", "Some flexion", "Active flexion"],
["Respiration", "Absent", "Slow/irregular", "Strong cry"],
],
"widths": [3*cm, 3*cm, 4.5*cm, 5.5*cm],
"color": C_TEAL
}),
("Interpretation", "7-10: Normal | 4-6: Moderate depression (PPV) | 0-3: Severe (full resuscitation)."),
("tip", "APGAR does NOT guide resuscitation - it retrospectively documents condition."),
]
})
# ── TOPIC 10 ──────────────────────────────────────────────────────────────────
topics.append({
"num": 10, "title": "Newborn Assessment",
"items": [
("Normal Parameters", "Weight 2.5-4 kg | Length 48-52 cm | HC 33-35 cm."),
("Skin Findings (Normal)", "Vernix caseosa, lanugo, milia (nose - normal), Mongolian spots (sacral - normal in dark skin)."),
("Eye Exam", "Red reflex absent → Cataract or Retinoblastoma (urgent!)."),
("Hip Assessment", "Ortolani + Barlow tests for DDH (Developmental Dysplasia of Hip)."),
("Ballard Score", "Gestational age assessment using neuromuscular + physical maturity criteria."),
("LBW Categories", "LBW < 2500 g | VLBW < 1500 g | ELBW < 1000 g."),
("tip", "Always check: red reflex (eyes), Ortolani/Barlow (hips), spine (NTD), anus (imperforate), testes descended."),
]
})
# ── TOPIC 11 ──────────────────────────────────────────────────────────────────
topics.append({
"num": 11, "title": "Hypertrophic Pyloric Stenosis (HPS)",
"items": [
("Definition", "Hypertrophy of pyloric muscle → gastric outlet obstruction. M:F = 4:1. Onset: 2-8 weeks."),
("Classic Sign", "Non-bilious PROJECTILE vomiting immediately after feeding. Baby still hungry."),
("Examination", "'Olive mass' palpable in RUQ. Visible peristalsis left to right."),
("Labs", "Metabolic alkalosis, hypochloremia, hypokalemia (paradoxical aciduria)."),
("Diagnosis", "Ultrasound: pyloric length > 16 mm, muscle thickness > 4 mm."),
("Treatment", "Ramstedt pyloromyotomy (surgical). Must correct electrolytes FIRST before surgery."),
("tip", "Non-bilious = above ampulla of Vater. Bilious vomiting = below → think malrotation/obstruction."),
]
})
# ── TOPIC 12 ──────────────────────────────────────────────────────────────────
topics.append({
"num": 12, "title": "Neural Tube Defects (NTD)",
"items": [
("Timing", "Failure of neural tube closure: 3rd-4th week of gestation."),
("table", {
"headers": ["Type", "Description", "Prognosis"],
"rows": [
["Spina Bifida Occulta", "Hidden; vertebral defect; no herniation; skin normal", "Asymptomatic"],
["Meningocele", "Meninges herniate; CSF in sac; no neural tissue", "Neurologically normal"],
["Myelomeningocele", "Meninges + spinal cord herniate", "Paralysis, bowel/bladder dysfunction"],
["Anencephaly", "Absence of brain + skull", "Incompatible with life"],
],
"widths": [4*cm, 7*cm, 5*cm],
"color": C_RED
}),
("Prevention", "Folic acid 400 mcg/day preconception + first trimester (5 mg in high-risk)."),
("Post-delivery Care", "Prone position, sterile saline-soaked gauze on sac, prevent rupture, latex allergy precautions."),
("tip", "80% of myelomeningocele patients develop hydrocephalus (Arnold-Chiari malformation)."),
]
})
# ── TOPIC 13 ──────────────────────────────────────────────────────────────────
topics.append({
"num": 13, "title": "Diarrhea & Lactation",
"items": [
("Diarrhea Definition", "≥ 3 loose/watery stools per 24 hours. Acute < 14d | Persistent 14-30d | Chronic > 30d."),
("Most Common Cause", "Rotavirus (most common cause of severe diarrhea in children < 5 years)."),
("IMCI Management Plans", "Plan A (no dehydration): ORS at home, zinc, continue feeding. Plan B (some): 75 mL/kg ORS over 4 hrs. Plan C (severe): IV RL 100 mL/kg."),
("Lactation Hormones", "Prolactin → milk production (anterior pituitary). Oxytocin → milk ejection (posterior pituitary)."),
("Milk Types", "Colostrum (days 1-3): rich in IgA; Foremilk: watery/carbs; Hindmilk: fat-rich (empty one breast first!)."),
("tip", "Zinc 20 mg/day × 14 days reduces duration and severity of diarrhea."),
]
})
# ── TOPIC 14 ──────────────────────────────────────────────────────────────────
topics.append({
"num": 14, "title": "Phototherapy & Neonatal Jaundice",
"items": [
("Physiological Jaundice", "Appears day 2-3, peaks day 4-5, resolves day 7 (term) / day 14 (preterm). Bilirubin rarely > 12-15 mg/dL."),
("Pathological Signs", "< 24 hours of life (ALWAYS pathological), rises > 5 mg/dL/day, total > 17 mg/dL, persists > 2 weeks."),
("Kernicterus", "Unconjugated bilirubin crosses BBB → basal ganglia damage → hearing loss, CP, intellectual disability."),
("Phototherapy Mechanism", "Blue-green light (450-490 nm) converts bilirubin to water-soluble lumirubin via photoisomerization."),
("Phototherapy Nursing", "Cover eyes (photomask), expose max skin, increase fluids (insensible loss ↑), monitor temperature."),
("Bronze Baby Syndrome", "Occurs if phototherapy given to babies with cholestatic (direct) jaundice - avoid in conjugated hyperbilirubinemia."),
("tip", "Jaundice < 24 hrs → ALWAYS pathological. Most common cause: ABO/Rh incompatibility."),
]
})
# ── TOPIC 15 ──────────────────────────────────────────────────────────────────
topics.append({
"num": 15, "title": "Malnutrition (Scales & Types)",
"items": [
("table", {
"headers": ["Classification", "Tool", "Grades"],
"rows": [
["Gomez", "Weight-for-Age", "Grade I: 75-90% | Grade II: 60-75% | Grade III: < 60%"],
["Wellcome", "Weight + Edema", "Kwashiorkor (60-80% + edema) | Marasmus (< 60%, no edema)"],
["WHO", "WHZ score", "SAM: < -3 SD or MUAC < 11.5 cm | MAM: -2 to -3 SD"],
["IAP", "Weight-for-Age", "Grade IV: < 70% (most severe)"],
],
"widths": [3.5*cm, 4*cm, 8.5*cm],
"color": C_RED
}),
("Kwashiorkor Features", "Protein deficiency: pitting edema, 'flaky paint' dermatosis, moon face, hair changes (flag sign), fatty liver, apathy."),
("Marasmus Features", "Energy deficiency: severe wasting, 'old man face', no edema, loose skin folds, alert but irritable."),
("F-75/F-100 Feeds", "F-75: stabilization phase (SAM). F-100: rehabilitation phase. WHO therapeutic milks."),
("tip", "Kwashiorkor = EDEMA = protein def. Marasmus = WASTING = calorie def."),
]
})
# ── TOPIC 16 ──────────────────────────────────────────────────────────────────
topics.append({
"num": 16, "title": "Congenital Heart Disease (CHD)",
"items": [
("Acyanotic (L→R shunts)", "VSD (most common CHD) | ASD (fixed split S2) | PDA (machinery murmur; treat with Indomethacin)."),
("Cyanotic 5 T's (R→L shunts)", "TOF | TGA | Tricuspid Atresia | TAPVR | Truncus Arteriosus."),
("TOF Components", "VSD + Pulmonary Stenosis + Overriding Aorta + RVH. Boot-shaped heart on X-ray."),
("Tet Spell Management", "Knee-chest position (↑SVR) + 100% O2 + IV Morphine 0.1 mg/kg + IV Propranolol."),
("TGA", "Aorta from RV, PA from LV. Egg-on-side X-ray. Give PGE1 to maintain PDA until surgery."),
("Nursing Care", "Monitor SpO2, weight gain, feeding. Small frequent feeds. SBE prophylaxis. Pre/post-op preparation."),
("tip", "VSD = most common overall. TOF = most common CYANOTIC. TGA = needs PGE1 (keep PDA open)."),
]
})
# ── TOPIC 17 ──────────────────────────────────────────────────────────────────
topics.append({
"num": 17, "title": "Meningitis",
"items": [
("Classic Triad", "Fever + Headache + Nuchal rigidity (neck stiffness). Kernig's + Brudzinski's signs."),
("Organisms by Age", "Neonate: GBS, E. coli, Listeria. 3M-18yr: N. meningitidis, S. pneumoniae, H. influenzae."),
("table", {
"headers": ["CSF Finding", "Bacterial", "Viral", "TB"],
"rows": [
["Appearance", "Turbid", "Clear", "Fibrin web"],
["Cells (dominant)", "PMNs > 1000", "Lymphocytes < 500", "Lymphocytes 100-500"],
["Protein", "> 100 mg/dL", "Normal/slight ↑", "Very high"],
["Glucose", "< 45 mg/dL (very low)", "Normal", "Very low"],
],
"widths": [3.5*cm, 3.5*cm, 4*cm, 5*cm],
"color": C_ORANGE
}),
("Treatment", "Ceftriaxone (empirical). Add Ampicillin if < 3 months (Listeria). Dexamethasone → reduces hearing loss (H. flu)."),
("Nursing", "Isolation, dim lights, minimize stimulation, seizure precautions, monitor for SIADH (restrict fluids if needed)."),
("tip", "Purpuric/petechial rash = meningococcal → EMERGENCY. Bulging fontanelle in infants replaces neck stiffness."),
]
})
# ── TOPIC 18 ──────────────────────────────────────────────────────────────────
topics.append({
"num": 18, "title": "SIDS (Sudden Infant Death Syndrome)",
"items": [
("Definition", "Sudden unexplained death of infant < 1 year after thorough investigation. Peak age: 2-4 months."),
("Risk Factors", "Prone sleeping (most important!), soft bedding, overheating, co-sleeping with smokers, prematurity, male sex, winter, maternal smoking."),
("Prevention ('Safe Sleep' AAP)", "Supine (back to sleep) - #1 preventive measure. Firm flat surface. No soft objects. Room-share (no bed-share). No smoking."),
("Protective Factors", "Breastfeeding, pacifier use, supine position, room-sharing without bed-sharing."),
("tip", "BACK TO SLEEP is the single most important prevention message. Incidence reduced by 50% since campaign began."),
]
})
# ── TOPIC 19 ──────────────────────────────────────────────────────────────────
topics.append({
"num": 19, "title": "Hydrocephalus",
"items": [
("Definition", "Abnormal CSF accumulation in ventricular system → raised ICP."),
("Types", "Communicating (absorption impaired: post-meningitis) | Non-communicating/Obstructive (blocked CSF flow: aqueductal stenosis - most common in children)."),
("Infant Signs", "↑ HC, bulging fontanelle, 'sunset sign' (eyes deviated down), scalp vein distension, Macewen's sign ('cracked pot' sound)."),
("Older Child Signs", "Morning headache, vomiting, papilledema, behavioral changes."),
("Treatment", "VP shunt (most common) or Endoscopic Third Ventriculostomy (ETV for aqueductal stenosis)."),
("Shunt Complications", "Malfunction (headache, vomiting, ↓LOC) | Infection (Staph epidermidis - most common)."),
("Nursing", "Measure HC daily. Post-VP shunt: monitor for malfunction and infection."),
("tip", "Sunset sign = pressure on midbrain. Macewen's sign = cracked pot on skull percussion."),
]
})
# ── TOPIC 20 ──────────────────────────────────────────────────────────────────
topics.append({
"num": 20, "title": "Seizures",
"items": [
("Febrile Seizures", "Most common childhood seizure. Age 6 months - 6 years. Fever > 38.5°C. Generalized, tonic-clonic, < 15 min (simple)."),
("Absence Seizures", "Staring spell 5-30 sec, no post-ictal period, 3 Hz spike-wave on EEG. Treat with Ethosuximide."),
("Infantile Spasms", "West syndrome. 3-12 months. Brief flexion spasms in clusters. Hypsarrhythmia on EEG. Treat with ACTH/Vigabatrin."),
("Status Epilepticus", "Seizure > 5 min or 2 seizures without recovery. EMERGENCY!"),
("Status Epilepticus Rx", "1st: Lorazepam/Diazepam IV. 2nd: Fosphenytoin/Levetiracetam IV. 3rd: General anesthesia."),
("Nursing During Seizure", "Do NOT restrain. Do NOT put anything in mouth. Side-lying, time seizure, pad rails, O2, document."),
("tip", "Febrile seizure → reassure parents (benign, rarely progresses to epilepsy). Rectal diazepam at home if prolonged."),
]
})
# ── TOPIC 21 ──────────────────────────────────────────────────────────────────
topics.append({
"num": 21, "title": "BFHI | IMNCI | LBWB | KMC",
"items": [
("BFHI", "Baby-Friendly Hospital Initiative (WHO/UNICEF). 10 steps to successful breastfeeding. KEY: Initiate within 1 hour of birth (Golden Hour), rooming-in 24 hrs, no formula unless medically indicated."),
("IMNCI", "Integrated Management of Neonatal & Childhood Illness (WHO). Assesses 0-5 yrs. Color codes: Red = urgent referral, Yellow = treat at facility, Green = home management."),
("LBWB", "LBW < 2500 g | VLBW < 1500 g | ELBW < 1000 g. Problems: hypothermia, hypoglycemia, RDS, infection, jaundice."),
("KMC", "Kangaroo Mother Care: skin-to-skin (chest-to-chest). Benefits: warmth, promotes breastfeeding, bonding. Reduces mortality by 40% in LBW babies."),
("tip", "KMC = most effective low-cost intervention for LBW. BFHI = hospital policy for breastfeeding support."),
]
})
# ── TOPIC 22 ──────────────────────────────────────────────────────────────────
topics.append({
"num": 22, "title": "Hypothermia (Neonatal)",
"items": [
("Temperature Grades", "Normal: 36.5-37.5°C | Cold stress: 36-36.4°C | Moderate hypothermia: 32-35.9°C | Severe: < 32°C."),
("4 Mechanisms of Heat Loss", "1. Radiation (to cold environment) 2. Convection (to moving air) 3. Conduction (to cold surfaces) 4. Evaporation (wet skin - most at birth)."),
("Prevention (W-A-R-M)", "Warm room 25-28°C | Apply dry warm linen | Rooming-in / KMC | Maintain breastfeeding."),
("Rewarming", "Slow: 0.5°C/hour. Skin-to-skin for moderate. Radiant warmer for severe."),
("Nursing", "Temperature monitoring every 30 min, avoid bathing immediately after birth, ensure warm environment."),
("tip", "Evaporation = most heat lost at delivery (dry the baby IMMEDIATELY). Neonate vulnerable: large BSA, thin skin, no shivering."),
]
})
# ── TOPIC 23 ──────────────────────────────────────────────────────────────────
topics.append({
"num": 23, "title": "Hirschsprung's Disease",
"items": [
("Definition", "Congenital absence of ganglion cells (aganglionosis) in distal colon → functional obstruction."),
("Pathophysiology", "Failure of neural crest cell migration → no peristalsis → obstruction + proximal dilatation."),
("Neonatal Presentation", "FAILURE TO PASS MECONIUM within 48 hours + abdominal distension + bilious vomiting."),
("Older Child", "Chronic constipation, 'ribbon-like' stools, abdominal distension, failure to thrive."),
("Diagnosis", "Barium enema: transition zone. Anorectal manometry: absent RAIR. Rectal biopsy: DEFINITIVE (no ganglion cells)."),
("Treatment", "Swenson/Duhamel/Soave pull-through (surgical). May need temporary colostomy."),
("tip", "Complication: Hirschsprung-associated enterocolitis (HAEC) = fever + explosive diarrhea = LIFE-THREATENING."),
]
})
# ── TOPIC 24 ──────────────────────────────────────────────────────────────────
topics.append({
"num": 24, "title": "Kawasaki Disease",
"items": [
("Definition", "Acute systemic vasculitis of medium-sized vessels. Most common acquired heart disease in children (developed countries). Age: most < 5 years."),
("Diagnostic Criteria (CRASH)", "Fever ≥ 5 days PLUS 4 of 5: Conjunctival injection | Rash (truncal, polymorphous) | Adenopathy (cervical > 1.5 cm) | Strawberry tongue/cracked lips | Hands/feet edema → desquamation."),
("Most Dangerous Complication", "Coronary artery aneurysms (25% untreated; 4% with treatment)."),
("Treatment", "IVIG 2 g/kg single dose + Aspirin (high dose 80-100 mg/kg/day acute phase → low dose 3-5 mg/kg/day maintenance)."),
("Nursing", "Cardiac monitoring, echo follow-up, fever management, skin care, eye care."),
("tip", "CRASH mnemonic. Kawasaki = Sterile fever ≥ 5 days in a child who 'looks sick'. IVIG must be given within 10 days."),
]
})
# ── TOPIC 25 ──────────────────────────────────────────────────────────────────
topics.append({
"num": 25, "title": "Pneumonia",
"items": [
("Most Common Organism", "S. pneumoniae (all ages after neonatal period). Atypical: Mycoplasma (> 5 yrs). RSV (infants)."),
("Fast Breathing Thresholds (WHO/IMCI)", "< 2 months: ≥ 60 bpm | 2-12 months: ≥ 50 bpm | 1-5 years: ≥ 40 bpm."),
("IMCI Classification", "Fast breathing only = Non-severe (oral amoxicillin). Chest indrawing = Severe (IV antibiotics, hospitalize). Danger signs = Very severe."),
("Signs", "Fever, cough, tachypnea, chest indrawing (lower chest wall retractions), grunting, nasal flaring."),
("Treatment", "Amoxicillin (first-line). Azithromycin for Mycoplasma. Supportive: O2, fluids, antipyretics."),
("Nursing", "Semi-Fowler's position, O2 therapy, monitor SpO2, encourage fluids, chest physiotherapy."),
("tip", "Chest indrawing = lower chest sucks IN during inspiration = severe pneumonia marker."),
]
})
# ── TOPIC 26 ──────────────────────────────────────────────────────────────────
topics.append({
"num": 26, "title": "Nephrotic Syndrome",
"items": [
("Definition", "Massive proteinuria (> 40 mg/m²/hr) + hypoalbuminemia (< 2.5 g/dL) + edema + hyperlipidemia."),
("Most Common Type in Children", "Minimal Change Disease (MCD): 90% in < 6 yrs. Normal light microscopy. Steroid-responsive."),
("Clinical Features", "Periorbital puffiness (worse morning), dependent edema, ascites, frothy urine."),
("Complications", "Infections (pneumococcal peritonitis most common), thrombosis (hypercoagulable), hypovolemia."),
("Treatment", "Prednisolone 60 mg/m²/day × 4 weeks → 40 mg/m² alternate days × 4 weeks. Furosemide for severe edema."),
("Nursing", "Daily weight + abdominal girth, urine dipstick (3-4+ protein), low-Na diet, skin care, monitor for infection."),
("tip", "Frothy urine + puffy eyes in the morning in a child = think Nephrotic Syndrome."),
]
})
# ── TOPIC 27 ──────────────────────────────────────────────────────────────────
topics.append({
"num": 27, "title": "Cystic Fibrosis (CF)",
"items": [
("Definition", "Autosomal recessive. CFTR gene mutation (Chr 7q, ΔF508 most common). Defective Cl⁻ channels → thick mucus."),
("Respiratory", "Chronic cough, recurrent pneumonia (Pseudomonas in older patients), bronchiectasis, clubbing."),
("GI", "Meconium ileus (25% newborns), steatorrhea, failure to thrive (pancreatic exocrine insufficiency)."),
("Classic Sign", "Salty skin - parents notice when kissing baby. Male infertility (absent vas deferens)."),
("Diagnosis", "Sweat chloride test (GOLD standard): > 60 mEq/L. Newborn screen: Immunoreactive Trypsinogen (IRT)."),
("Treatment", "Chest physio (CPT) × 2-4/day + DNase (Pulmozyme) + Pancreatic enzyme replacement + Fat-soluble vitamins + CFTR modulators (Trikafta = Elexacaftor/Tezacaftor/Ivacaftor)."),
("tip", "CPT BEFORE meals. High calorie/high fat diet (150% RDA). Sweat test is diagnostic."),
]
})
# ── TOPIC 28 ──────────────────────────────────────────────────────────────────
topics.append({
"num": 28, "title": "Immunization Schedule (India UIP)",
"items": [
("table", {
"headers": ["Age", "Vaccines Given"],
"rows": [
["Birth", "BCG, OPV-0, Hepatitis B-1"],
["6 weeks", "OPV-1, IPV-1, Penta-1 (DPT+HepB+Hib), PCV-1, Rotavirus-1"],
["10 weeks", "OPV-2, IPV-2, Penta-2, PCV-2, Rotavirus-2"],
["14 weeks", "OPV-3, IPV-3, Penta-3, PCV-3, Rotavirus-3"],
["9 months", "MR-1, JE-1 (endemic areas), Vitamin A (1st dose)"],
["16-24 months", "OPV booster, DPT booster, MR-2, JE-2, Vitamin A 2nd"],
["5-6 years", "DPT booster-2"],
["10 & 16 years", "TT (Tetanus Toxoid)"],
],
"widths": [3.5*cm, 12.5*cm],
"color": C_PURPLE
}),
("Cold Chain", "Vaccines stored at 2-8°C. OPV: -15 to -20°C."),
("tip", "Live vaccines (BCG, OPV, MMR) contraindicated in immunocompromised children."),
]
})
# ── TOPIC 29 ──────────────────────────────────────────────────────────────────
topics.append({
"num": 29, "title": "Pediatric Dose Calculation",
"items": [
("Clark's Rule (weight)", "Child dose = (Weight in kg / 70) × Adult dose"),
("Young's Rule (age > 2 yrs)", "Child dose = [Age / (Age + 12)] × Adult dose"),
("Fried's Rule (infants < 1 yr)", "Child dose = (Age in months / 150) × Adult dose"),
("BSA Method (most accurate)", "Child dose = (Child's BSA / 1.73 m²) × Adult dose. BSA (Mosteller) = √[(Ht cm × Wt kg) / 3600]"),
("IV Drip Rate", "mL/hr = Volume (mL) / Time (hr). Drops/min = (Volume × Drop factor) / Time in min."),
("tip", "BSA method is most accurate. Always verify against safe dose range (mg/kg/day) before administering."),
]
})
# ── TOPIC 30 ──────────────────────────────────────────────────────────────────
topics.append({
"num": 30, "title": "Pediatric CPR (PALS)",
"items": [
("Sequence", "C-A-B: Compressions → Airway → Breathing."),
("table", {
"headers": ["Age", "Technique", "Depth", "Rate", "Ratio"],
"rows": [
["Infant (< 1 yr)", "2 thumbs (2 rescuers) or 2 fingers", "4 cm", "100-120/min", "15:2 (2R) / 30:2 (1R)"],
["Child (1 yr - puberty)", "1 or 2 heel of hand", "5 cm", "100-120/min", "15:2 (2R) / 30:2 (1R)"],
],
"widths": [2.5*cm, 4*cm, 2*cm, 2.5*cm, 5*cm],
"color": C_PURPLE
}),
("Defibrillation", "Shockable (VF/pVT): 2 J/kg 1st shock; 4 J/kg subsequent."),
("Epinephrine", "0.01 mg/kg IV/IO every 3-5 min."),
("Key PALS Fact", "Respiratory failure = most common cause of cardiac arrest in children (unlike adults where cardiac cause predominates)."),
("tip", "2 THUMBS technique preferred for infant CPR with 2 rescuers. Allows deeper, consistent compressions."),
]
})
# ── TOPIC 31 ──────────────────────────────────────────────────────────────────
topics.append({
"num": 31, "title": "Growth Charts | Erikson | Piaget | Freud | Kohlberg | DDST",
"items": [
("Growth Charts", "WHO (0-5 yrs, international) | CDC (2-18 yrs) | IAP (India-specific)."),
("Erikson (Psychosocial)", "0-18M: Trust vs Mistrust | 18M-3Y: Autonomy vs Shame | 3-6Y: Initiative vs Guilt | 6-12Y: Industry vs Inferiority | 12-18Y: Identity vs Role Confusion."),
("Piaget (Cognitive)", "0-2Y: Sensorimotor (object permanence 8M) | 2-7Y: Preoperational (egocentrism) | 7-11Y: Concrete Operational (conservation) | 11+Y: Formal Operational (abstract thinking)."),
("Freud (Psychosexual)", "Oral (0-18M) → Anal (18M-3Y) → Phallic/Oedipal (3-6Y) → Latency (6-12Y) → Genital (12+Y)."),
("Kohlberg (Moral)", "Pre-conventional (< 9Y: avoid punishment) → Conventional (9Y-adolescence: social conformity) → Post-conventional (adulthood: universal ethics)."),
("DDST-II", "Denver Developmental Screening Test. Ages 0-6 years. 4 domains: Personal-Social, Fine Motor, Language, Gross Motor. Result: Normal / Suspect / Untestable."),
("tip", "Remember Piaget's stages in order: SPCF. Object permanence = 8-9 months."),
]
})
# ── TOPIC 32 ──────────────────────────────────────────────────────────────────
topics.append({
"num": 32, "title": "Bronchial Asthma",
"items": [
("Definition", "Chronic inflammatory airway disease with reversible obstruction + bronchospasm + airway hyperresponsiveness."),
("Triggers", "Allergens (dust mites, pollen), viral RTI, exercise, cold air, smoke, aspirin/NSAIDs, emotional stress."),
("GINA Classification", "Intermittent (≤ 2d/wk, FEV1 ≥ 80%) | Mild Persistent | Moderate Persistent | Severe Persistent (continuous, FEV1 < 60%)."),
("Treatment (Stepwise)", "Rescue: SABA (Salbutamol). Controller: ICS (Budesonide). Severe: ICS+LABA. Biologics: Omalizumab (severe allergic)."),
("Acute Attack", "SABA nebulization + O2 + Systemic steroids + Ipratropium (moderate-severe)."),
("Nursing", "Teach inhaler technique (spacer for children), identify triggers, peak flow monitoring, written action plan, sit upright."),
("tip", "SABA = short-acting beta-agonist = RELIEVER. ICS = CONTROLLER. Never use LABA alone without ICS."),
]
})
# ── TOPIC 33 ──────────────────────────────────────────────────────────────────
topics.append({
"num": 33, "title": "Play & Play Therapy",
"items": [
("Functions of Play", "Physical, cognitive, social, emotional, and language development. Play = child's work."),
("Parten's Classification (Social)", "0-2Y: Solitary | 2-3Y: Parallel (alongside, not with) | 3-4Y: Associative | 4+Y: Cooperative (organized, shared goals)."),
("Cognitive Play (Piaget)", "0-2Y: Functional/Sensorimotor | 2-7Y: Symbolic/Pretend | 7+Y: Games with rules."),
("Play in Hospital", "Reduces anxiety, promotes cooperation with treatments, gives sense of control. Child-life specialist role."),
("Play Therapy", "Uses play as therapeutic medium for children with trauma, anxiety, behavioral issues. Non-directive (child-led) or Directive (therapist-guided)."),
("tip", "Parallel play (2-3 yrs) = side by side but NOT together. Cooperative play (4+ yrs) = real teamwork."),
]
})
# ── TOPIC 34 ──────────────────────────────────────────────────────────────────
topics.append({
"num": 34, "title": "Weaning (Complementary Feeding)",
"items": [
("Definition", "Gradual introduction of foods other than breast milk (WHO: start at 6 months)."),
("Readiness Signs", "Can hold head steady, interest in food, loss of tongue-thrust reflex, can sit with support."),
("FADAF Principles", "Frequency (2-3×/day at 6-8M; 3-4×/day at 9M+) | Amount (start 2-3 tbsp → ½ cup by 12M) | Density (pureed → mashed → family foods) | Active responsive feeding | Fortification with iron-rich foods."),
("First Foods", "Mashed fruits/veggies, rice cereal, dal water, mashed potato, banana."),
("Foods to AVOID (< 1 year)", "Honey (Clostridium botulinum), cow's milk as main drink, whole nuts, excess salt/sugar, shellfish."),
("3-5 Day Rule", "Introduce one new food every 3-5 days to identify allergies."),
("tip", "HONEY is absolutely contraindicated < 1 year (infant botulism risk)."),
]
})
# ── TOPIC 35 ──────────────────────────────────────────────────────────────────
topics.append({
"num": 35, "title": "Rheumatic Fever (RF)",
"items": [
("Definition", "Non-suppurative complication of Group A beta-hemolytic Streptococcus (GAS) pharyngitis. Molecular mimicry → carditis."),
("Jones Criteria - MAJOR (JONES)", "J=Joints (migratory polyarthritis) | O=cOrditis | N=Nodules (subcutaneous) | E=Erythema marginatum | S=Sydenham's chorea."),
("Jones Criteria - MINOR", "Fever, elevated ESR/CRP, prolonged PR interval, arthralgia (if arthritis not major criterion)."),
("Diagnosis Rule", "2 MAJOR or 1 MAJOR + 2 MINOR + evidence of preceding GAS infection (positive throat culture or elevated ASO titer)."),
("Treatment", "Penicillin V × 10 days (eradicate GAS) + Aspirin (arthritis) + Prednisolone (severe carditis)."),
("Secondary Prophylaxis", "Benzathine Penicillin G 1.2 million units IM every 3-4 weeks. Duration: No carditis = 5 yrs or 21 yrs. Persistent valve disease = LIFE-LONG."),
("tip", "MOST COMMON manifestation: Migratory arthritis. MOST DANGEROUS: Carditis (mitral regurgitation most common). Erythema marginatum = trunk/proximal limbs."),
]
})
# ── TOPIC 36 ──────────────────────────────────────────────────────────────────
topics.append({
"num": 36, "title": "Cerebral Palsy (CP)",
"items": [
("Definition", "Permanent, non-progressive motor disorder due to damage to developing brain (prenatal/perinatal/postnatal up to 2 yrs)."),
("table", {
"headers": ["Type", "Features", "Location"],
"rows": [
["Spastic (70-80%)", "↑ tone, brisk DTRs, +ve Babinski", "Corticospinal tract"],
["Dyskinetic/Athetoid", "Involuntary writhing, fluctuating tone", "Basal ganglia"],
["Ataxic", "Wide-based gait, poor coordination", "Cerebellum"],
],
"widths": [4*cm, 6*cm, 6*cm],
"color": C_DARK_BLUE
}),
("Spastic Distribution", "Hemiplegia (one side) | Diplegia (both legs, scissor gait - most common in preterm) | Quadriplegia (all 4 limbs)."),
("Associated Problems", "Intellectual disability (50-60%), epilepsy (40%), visual/hearing defects, speech/feeding difficulties."),
("Management", "Physio (stretching, gait training) + OT + Speech therapy + Baclofen/Botulinum toxin + Surgery (SDR, orthopedic)."),
("tip", "CP = NON-PROGRESSIVE (brain lesion static, but clinical signs may change). Diplegia of prematurity = most common in preterm."),
]
})
# ── TOPIC 37 ──────────────────────────────────────────────────────────────────
topics.append({
"num": 37, "title": "TEF (Tracheo-Esophageal Fistula) & EA (Esophageal Atresia)",
"items": [
("Most Common Type", "Type C (86-90%): EA + distal TEF. Blind upper esophageal pouch + lower esophagus connects to trachea."),
("Classic Presentation (Type C)", "3 C's: Choking + Coughing + Cyanosis on FIRST feeding. Excessive drooling, inability to pass NG tube."),
("Diagnosis Clue", "NG tube fails to pass beyond 10-11 cm. X-ray: coiled tube in upper pouch + gas in stomach."),
("H-Type TEF", "TEF without EA (type E). Presents with recurrent aspiration/coughing during feeding. No polyhydramnios."),
("Associated Anomalies (VACTERL)", "Vertebral, Anal (imperforate), Cardiac, Tracheo-Esophageal, Renal, Limb defects."),
("Pre-op Nursing", "NPO immediately. Semi-upright 30-45°. Continuous Replogle tube suction (upper pouch). IV fluids, antibiotics, O2."),
("tip", "Polyhydramnios in pregnancy → suspect EA (fetus cannot swallow). Replogle tube = continuous suction of blind pouch."),
]
})
# ── TOPIC 38 ──────────────────────────────────────────────────────────────────
topics.append({
"num": 38, "title": "Pediatric Emergency",
"items": [
("Anaphylaxis", "First-line: Epinephrine 1:1000 IM 0.01 mg/kg (outer thigh, max 0.5 mg). Then: O2, IV fluids, antihistamines, steroids."),
("Status Epilepticus", "1st: Benzodiazepine (Lorazepam 0.1 mg/kg IV or Diazepam 0.3 mg/kg IV). 2nd: Fosphenytoin/Levetiracetam. 3rd: Anesthesia."),
("Septic Shock", "IV bolus 20 mL/kg NS × 3 (if needed). Antibiotics within 1 hour. Dopamine/Norepinephrine if fluid-unresponsive."),
("DKA in Children", "IV NS bolus 10 mL/kg → calculated deficit over 48 hrs → Insulin 0.1 U/kg/hr (AFTER fluids). Monitor K+. Watch for cerebral edema (treat with Mannitol)."),
("Febrile Seizure", "Rectal diazepam 0.5 mg/kg if > 5 min. Antipyretics. Reassure parents."),
("Severe Croup", "Nebulized epinephrine + IV/IM dexamethasone. Prepare for intubation if stridor at rest."),
("PALS Key", "Children: respiratory failure = leading cause of arrest. Epinephrine 0.01 mg/kg IV/IO every 3-5 min."),
("tip", "ALWAYS: Epinephrine FIRST for anaphylaxis. Fluids FIRST for DKA before insulin. Airway FIRST in pediatric emergency."),
]
})
# ═════════════════════════════════════════════════════════════════════════════
# RENDER TOPICS INTO STORY
# ═════════════════════════════════════════════════════════════════════════════
for topic in topics:
num = topic["num"]
color = topic_color(num)
light = topic_light_color(num)
elements = [topic_header(num, topic["title"], color), Spacer(1, 3*mm)]
for item in topic["items"]:
if isinstance(item, tuple) and len(item) == 2:
key, val = item
if key == "table":
td = val
tbl = make_table(td["headers"], td["rows"],
col_widths=td.get("widths"),
hdr_color=td.get("color", C_MID_BLUE))
elements.append(tbl)
elements.append(Spacer(1, 2*mm))
elif key == "tip":
elements.append(info_box(f"<b>Tip:</b> {val}", bg=light, tc=color))
elements.append(Spacer(1, 2*mm))
elif val is None:
elements.append(Paragraph(f"<b>{key}</b>", sBold))
else:
elements.append(Paragraph(f"<b>{key}:</b> {val}", sBullet))
elements.append(Spacer(1, 1*mm))
elements.append(Spacer(1, 4*mm))
story.append(KeepTogether(elements[:6]))
for el in elements[6:]:
story.append(el)
story.append(HRFlowable(width="100%", thickness=0.5, color=C_GREY_MED))
story.append(Spacer(1, 3*mm))
# ─────────────────────── FINAL REVISION TABLE ────────────────────────────────
story.append(PageBreak())
story.append(Paragraph("<b>QUICK REFERENCE: All 38 Topics At a Glance</b>",
ParagraphStyle("qr", fontName="Helvetica-Bold", fontSize=13, textColor=C_DARK_BLUE,
spaceBefore=6, spaceAfter=8, alignment=TA_CENTER)))
ref_data = [
["#", "Topic", "Key Mnemonic / Buzzword"],
["1", "Dehydration & ORS", "Skin pinch test | Sunken fontanelle | WHO ORS 245 mOsm/L"],
["2", "Breastfeeding", "LATCH score > 7 | Colostrum = IgA | Prolactin/Oxytocin"],
["3", "Cleft Lip/Palate", "Rule of 10s | Elbow restraints post-op | No objects in mouth"],
["4", "G&D Monitoring", "Doubles at 5M, Triples at 12M | Anterior fontanelle closes 12-18M"],
["5", "Anthropometric", "MUAC < 11.5 = SAM | WHZ = wasting | HAZ = stunting"],
["6", "Milestones & Reflexes", "3-6-9-12: head-sit-stand-walk | Social smile 6-8 weeks"],
["7", "Neonatal Resuscitation", "Golden Minute | 3:1 compressions:breath | Epi via umbilical vein"],
["8", "RDS & Croup", "Surfactant/Betamethasone (RDS) | Steeple sign + barking cough (Croup)"],
["9", "APGAR Score", "0-3 severe | 4-6 moderate | 7-10 normal | Assessed at 1 & 5 min"],
["10", "Newborn Assessment", "Red reflex (absent = retinoblastoma) | Ortolani/Barlow (DDH)"],
["11", "Pyloric Stenosis", "Non-bilious projectile vomiting | Olive mass | Metabolic alkalosis"],
["12", "Neural Tube Defects", "Folic acid 400mcg prevention | MMC → 80% hydrocephalus | Latex precautions"],
["13", "Diarrhea & Lactation", "Rotavirus = most common cause | Zinc 20 mg × 14 days | Hindmilk = fat-rich"],
["14", "Phototherapy & Jaundice", "< 24 hrs = always pathological | Cover eyes | Bronze baby = avoid in conjugated"],
["15", "Malnutrition Scales", "Kwashiorkor = edema+protein def | Marasmus = wasting+energy def | MUAC < 11.5"],
["16", "Congenital Heart Disease", "VSD = most common | TOF = most common cyanotic | Boot-shaped heart"],
["17", "Meningitis", "Ceftriaxone empirical | PMN cells = bacterial | Dex → hearing loss prevention"],
["18", "SIDS", "BACK TO SLEEP (supine) | Peak 2-4 months | Firm flat surface"],
["19", "Hydrocephalus", "Sunset sign | VP shunt | Shunt infection = Staph epidermidis"],
["20", "Seizures", "Febrile = 6M-6Y | Status > 5 min = emergency | Do NOT restrain"],
["21", "BFHI/IMNCI/KMC", "Golden hour (BFHI) | KMC reduces mortality 40% | Red = urgent referral"],
["22", "Hypothermia", "WARM | Dry immediately (evaporation) | 0.5°C/hr rewarming"],
["23", "Hirschsprung's", "No meconium 48 hrs | Rectal biopsy = definitive | HAEC = complication"],
["24", "Kawasaki Disease", "CRASH | IVIG 2g/kg | Coronary aneurysm = main danger | Give within 10 days"],
["25", "Pneumonia", "Fast breathing thresholds: < 2M≥60, 2-12M≥50, 1-5Y≥40 | Amoxicillin 1st line"],
["26", "Nephrotic Syndrome", "MCD = most common | Periorbital puffiness | Frothy urine | Prednisolone"],
["27", "Cystic Fibrosis", "ΔF508 | Sweat Cl > 60 mEq/L | CPT before meals | Salty skin"],
["28", "Immunization Schedule", "BCG at birth | Penta at 6-10-14 wks | MR at 9M | Cold chain 2-8°C"],
["29", "Dose Calculation", "Clark's: Wt/70 × adult | Young's: Age/(Age+12) × adult | BSA = most accurate"],
["30", "Pediatric CPR", "C-A-B | Infant: 4 cm, 2-thumb | Child: 5 cm | Epi 0.01 mg/kg"],
["31", "Theories + DDST", "Erikson/Piaget/Freud/Kohlberg | DDST: 0-6 yrs, 4 domains, Normal/Suspect"],
["32", "Bronchial Asthma", "SABA = rescue | ICS = controller | Peak flow monitoring | Upright position"],
["33", "Play & Therapy", "Parallel play 2-3 yrs | Cooperative play 4+ yrs | Play = natural language"],
["34", "Weaning", "Start at 6 months | FADAF | Honey contraindicated < 1 yr | 3-5 day rule"],
["35", "Rheumatic Fever", "Jones criteria JONES | Benzathine Pen G secondary prophylaxis | ASO titer"],
["36", "Cerebral Palsy", "Non-progressive | Spastic 70-80% | Diplegia = preterm | Scissor gait"],
["37", "TEF & EA", "Type C most common | 3 C's | Replogle tube | VACTERL associations"],
["38", "Pediatric Emergency", "Epi FIRST (anaphylaxis) | Fluids BEFORE insulin (DKA) | Airway ALWAYS first"],
]
cell_s = ParagraphStyle("rcs", fontName="Helvetica", fontSize=7.5, leading=10)
hdr_s = ParagraphStyle("rhs", fontName="Helvetica-Bold", fontSize=7.8, leading=10, textColor=WHITE)
formatted = []
for i, row in enumerate(ref_data):
if i == 0:
formatted.append([Paragraph(c, hdr_s) for c in row])
else:
formatted.append([Paragraph(c, cell_s) for c in row])
rt = Table(formatted, colWidths=[0.8*cm, 5.5*cm, 9.7*cm], repeatRows=1)
rt.setStyle(TableStyle([
('BACKGROUND', (0,0), (-1,0), C_DARK_BLUE),
('ROWBACKGROUNDS', (0,1), (-1,-1), [WHITE, C_GREY_LIGHT]),
('GRID', (0,0), (-1,-1), 0.4, C_GREY_MED),
('VALIGN', (0,0), (-1,-1), 'TOP'),
('TOPPADDING', (0,0), (-1,-1), 3),
('BOTTOMPADDING', (0,0), (-1,-1), 3),
('LEFTPADDING', (0,0), (-1,-1), 4),
('RIGHTPADDING', (0,0), (-1,-1), 4),
]))
story.append(rt)
# ── BUILD ─────────────────────────────────────────────────────────────────────
doc.build(story)
print("PDF created successfully.")
cd /home/daytona/workspace/paeds-nursing-pdf && python3 generate_pdf.py 2>&1
ls -lh /home/daytona/workspace/paeds-nursing-pdf/Paediatric_Nursing_Quick_Revisi…
Paediatric Nursing Quick Revision
PDF Document · PDF