Im an intern, im posted in rhtc ,so tell mi common condition which can be expected in a rural areas and give me simple symptomatic treatment to each of those conditions according to age

Reading File
Finding Sources
Finding Sources
Searching the Web

RHTC rural health training centre common conditions India intern treatment protocol

Finding Sources
Finding Sources
Finding Sources
Finding Sources
Reading File
Finding Sources
Finding Sources
Reading File
Searching the Web

common diseases rural India RHTC PHC symptomatic treatment age-wise diarrhea fever ARI scabies worms hypertension diabetes

Now I have enough information to give a thorough, practical answer. Let me compose it.

Common Conditions at RHTC and Their Symptomatic Treatment (Age-Wise)

As a rural intern, the bulk of your OPD will be these conditions. They are grouped by system and each has age-stratified treatment.

1. ACUTE DIARRHEA / GASTROENTERITIS

The #1 cause of morbidity in rural India, especially in children under 5.

Cornerstone: ORS + Zinc

AgeORS (each loose stool)Zinc
< 6 months50-100 mL10 mg/day x 14 days
6 months - 2 years100-200 mL20 mg/day x 14 days
2-10 years100-200 mL20 mg/day x 14 days
> 10 years / AdultsAs much as tolerated (200-400 mL)Not routinely needed
  • ORS recipe if packets unavailable: 1 litre boiled water + 6 tsp sugar + 1/2 tsp salt
  • Antibiotics: Only for cholera-suspect (tetracycline 250 mg QID x 3 days in adults; in children use cotrimoxazole) or bloody diarrhea/dysentery (ciprofloxacin 500 mg BD x 3 days in adults; nalidixic acid in children)
  • Metronidazole 400 mg TDS x 5-7 days if amoebiasis/giardiasis suspected (loose, foul-smelling, frothy stools)
  • DO NOT give anti-motility agents (loperamide) in children

2. ACUTE RESPIRATORY INFECTIONS (ARI / URTI)

Includes common cold, pharyngitis, tonsillitis, sinusitis - very common year-round.

Symptomatic Treatment

AgeParacetamol (fever/pain)Antihistamine + DecongestantNotes
< 2 years10-15 mg/kg/dose every 4-6hAvoid OTC cold syrupsSaline nasal drops, breastfeed
2-12 years10-15 mg/kg/dose Q6HChlorpheniramine 0.1 mg/kg/dose BDSteam inhalation
Adults500 mg - 1 g Q6HCetrizine 10 mg OD OR CPM 4 mg TDSWarm saline gargles
  • Antibiotics only if bacterial infection suspected: fever >3 days, purulent exudate, severe throat pain, ear pain (otitis media) - use Amoxicillin 250 mg TDS (children: 25-40 mg/kg/day in 3 divided doses) x 5-7 days
  • Pneumonia (tachypnea + fever): refer or start Amoxicillin 40 mg/kg/day; in adults - Amoxicillin 500 mg TDS x 5-7 days; refer if severe (chest indrawing, cyanosis, SpO2 < 94%)

3. MALARIA

Most common presenting complaint in rural endemic areas: fever with chills/rigors.

P. vivax Treatment (per National Programme / Park's Textbook)

AgeChloroquine (150 mg base tablet) Day 1Day 2Day 3Primaquine (2.5 mg tab) Days 1-14
< 1 year1/2 tab1/2 tab1/4 tabContraindicated
1-4 years1 tab1 tab1/2 tab1 tab/day
5-8 years2 tabs2 tabs1 tab2 tabs/day
9-14 years3 tabs3 tabs1.5 tabs4 tabs/day
≥15 years/Adults4 tabs4 tabs2 tabs6 tabs/day
Pregnancy4 tabs4 tabs2 tabsPrimaquine contraindicated

P. falciparum Treatment (ACT-SP regimen, non-NE India)

  • Artesunate 4 mg/kg/day x 3 days + Sulfadoxine-Pyrimethamine single dose on Day 1
  • Primaquine 0.75 mg/kg single dose on Day 2 (not in infants, pregnancy, G6PD deficiency)
  • Severe malaria: IV Artesunate - refer urgently
Always confirm with RDT or peripheral smear before treating.

4. ENTERIC FEVER (TYPHOID)

Gradual-onset fever, step-ladder pattern, relative bradycardia, coated tongue.
AgeFirst-line Treatment
AdultsCiprofloxacin 500 mg BD x 14 days OR Azithromycin 1 g on Day 1 then 500 mg OD x 6 days
ChildrenAzithromycin 20 mg/kg/day OD x 7 days OR Cefixime 20 mg/kg/day BD x 14 days
PregnancyCeftriaxone 2 g IV OD x 14 days (refer)
  • Symptomatic: Paracetamol for fever, adequate oral hydration, soft diet
  • Avoid NSAIDs (risk of GI bleed/perforation)

5. ANEMIA (Iron Deficiency - most common in rural India)

Especially prevalent in: children 6 months-5 years, adolescent girls, pregnant women.
Age GroupTreatment
Children 6m-5 yrsFerrous sulfate 3 mg/kg/day elemental iron in 2 divided doses
5-12 years60 mg elemental iron + 0.5 mg folic acid OD
Adolescent girls100 mg elemental iron + 0.5 mg folic acid OD x 16 weeks (WIFS scheme)
Pregnant women100 mg elemental iron + 0.5 mg folic acid BD during pregnancy + 3 months postpartum
Adults (general)100-200 mg elemental iron daily in 2-3 divided doses
  • Give iron between meals for better absorption; with Vitamin C (lemon water) helps
  • Treat underlying cause (worms - give Albendazole 400 mg single dose in children > 2 yrs and adults)

6. INTESTINAL WORM INFESTATIONS

Very common in children - ascariasis, hookworm, whipworm.
AgeDrugDose
1-2 yearsAlbendazole200 mg single dose
> 2 years & AdultsAlbendazole400 mg single dose
AlternativeMebendazole500 mg single dose or 100 mg BD x 3 days
  • Repeat every 6 months (National Deworming Day protocol)
  • Always combine with iron supplementation if anemia present

7. SKIN CONDITIONS

7a. Scabies (very common - affects whole families)

AgeTreatment
< 2 months5-10% Sulfur ointment applied all over body (below neck) x 3 consecutive nights
2 months - 2 years5% Permethrin cream - apply neck down, wash off after 8-12 hours; repeat in 1 week
> 2 years & Adults5% Permethrin OR Benzyl Benzoate 25% (dilute to 12.5% for children); Ivermectin 200 mcg/kg single dose (adults, not in pregnancy)
  • Treat ALL family members simultaneously
  • Wash and hot-press all clothing and bedding
  • Antihistamine (CPM) for itch; secondary infection - Amoxicillin/Cloxacillin

7b. Fungal Infections (Tinea)

  • Adults & Children: Clotrimazole 1% cream BD x 2-4 weeks (topical)
  • Extensive/nail: Fluconazole 150 mg weekly x 4 weeks OR Griseofulvin 10-20 mg/kg/day (children)

8. HYPERTENSION (increasing in rural areas)

AgeFirst-line Drug
Adults < 60 yrsAmlodipine 2.5-5 mg OD; if not controlled add Enalapril 5-10 mg BD
> 60 yrs / ElderlyAmlodipine 2.5 mg OD (start low); avoid ACEI if dry cough
With diabetesACEI (Enalapril 5-10 mg BD) or ARB preferred
PregnancyMethyldopa 250 mg BD-TDS (safest); Labetalol if available
  • Lifestyle: salt restriction (<5 g/day), reduce alcohol, weight loss, regular walking
  • BP > 180/110 or symptoms (headache, visual changes): start treatment same day, monitor closely

9. DIABETES MELLITUS TYPE 2

AgeFirst-line
Adults (newly diagnosed, non-obese)Metformin 500 mg OD with meals, titrate to 500 mg TDS over weeks
Adults (obese)Metformin 500 mg-1g BD (start low to avoid GI upset)
ElderlyMetformin with caution (hold if eGFR < 30); Glipizide 5 mg OD as alternative
Children (rare, Type 1 more common)Refer; requires insulin
  • Dietary counseling: avoid white rice in excess, sugary drinks, processed foods
  • Screen for complications: eyes, feet, urine protein, BP at each visit
  • FBS target < 126 mg/dL; HbA1c < 7% ideally

10. MALNUTRITION (especially children under 5)

GradeAction
Mild-Moderate (MAM)High-energy nutritious diet counseling; therapeutic feeding; micronutrient supplementation; deworming
Severe Acute Malnutrition (SAM)Refer to NRC (Nutrition Rehabilitation Centre); F75 then F100 feeds; treat infection
  • Vitamin A supplementation: 1,00,000 IU for 6-11 months; 2,00,000 IU for 1-5 years (biannual)
  • Zinc 20 mg/day x 14 days when diarrhea present

11. EYE CONDITIONS

Acute Conjunctivitis ("Madras Eye")

All agesCiprofloxacin 0.3% eye drops 1-2 drops Q2-4H x 7 days
AllergicSodium cromoglycate drops + Antihistamine orally
Neonatal conjunctivitisImmediate referral; erythromycin/tetracycline ointment

12. URINARY TRACT INFECTION (UTI)

Very common in women and elderly men in rural areas.
GroupTreatment
Non-pregnant women (uncomplicated)Nitrofurantoin 100 mg BD x 5 days OR Cotrimoxazole DS BD x 3 days
Pregnant womenNitrofurantoin 100 mg BD x 7 days (avoid near term); Cephalexin 500 mg QID x 7 days
Men / complicatedCiprofloxacin 500 mg BD x 7-14 days
ElderlyCiprofloxacin 500 mg BD x 7 days; ensure hydration

13. MUSCULOSKELETAL / JOINT PAIN (common in elderly)

ConditionTreatment
OsteoarthritisParacetamol 500-1000 mg TDS (safer than NSAIDs in elderly); topical Diclofenac gel
Acute sprainsRICE (Rest, Ice, Compression, Elevation) + Ibuprofen 400 mg TDS x 5 days (with food)
Backache (mechanical)Paracetamol + physiotherapy counseling; avoid prolonged bed rest

QUICK REFERENCE: KEY RED FLAGS - WHEN TO REFER

ConditionRefer if...
DiarrheaUnable to drink, sunken eyes, not passing urine, altered sensorium
Fever/MalariaAltered consciousness, convulsions, severe anemia, jaundice
ARIChest indrawing, stridor, cyanosis, SpO2 < 92%
MalnutritionSAM + complications (infection, edema)
HypertensionBP > 180/120 with symptoms; hypertensive emergency
PregnancyAny danger sign: heavy bleeding, eclampsia, obstructed labor

Practical Tips for Your Posting

  1. Always confirm malaria with RDT before treating - do not treat empirically without testing
  2. ORS first in every diarrhea case - antibiotics are rarely needed
  3. Zinc for 14 days after every diarrheal episode in children under 5
  4. Deworming every 6 months - piggyback it onto every child under-5 visit
  5. Malnutrition screening - use MUAC tape at every under-5 visit (< 11.5 cm = SAM; 11.5-12.5 cm = MAM)
  6. WIFS scheme - weekly iron-folic acid for adolescent girls; always record in register
  7. Primaquine is contraindicated in infants, pregnancy, and G6PD deficiency
  8. Metformin start low and go slow (500 mg OD for 1-2 weeks first) to reduce GI side effects
  9. Complete family treatment for scabies - treating only the index case leads to reinfection
  10. Document everything in the OPD register - it is required for RHTC records and national health data
Sources: Park's Textbook of Preventive and Social Medicine (National Malaria Programme guidelines); Katzung's Basic and Clinical Pharmacology; WHO guidelines on diarrhea, ARI, and malnutrition management; National Programme guidelines (WIFS, NDD, NVBDCP).

Create a quick reference PDF with dosing tables I can keep in pocket during OPD

Reading File
Running Command

ls -la /home/daytona/workspace/ 2>/dev/null || mkdir -p /home/daytona/workspace

Running Command

mkdir -p /home/daytona/workspace/rhtc-pocket-guide && python3 -c "import reportlab; print('reportlab ok')"

Writing File

~/rhtc-pocket-guide/generate_pdf.py

from reportlab.lib.pagesizes import A5
from reportlab.lib import colors
from reportlab.lib.units import mm
from reportlab.lib.styles import getSampleStyleSheet, ParagraphStyle
from reportlab.lib.enums import TA_CENTER, TA_LEFT
from reportlab.platypus import (
    SimpleDocTemplate, Table, TableStyle, Paragraph, Spacer,
    HRFlowable, KeepTogether
)
from reportlab.lib.colors import HexColor

OUTPUT = "/home/daytona/workspace/rhtc-pocket-guide/RHTC_Pocket_Guide.pdf"

# ── Colour palette ──────────────────────────────────────────────────────────
C_NAVY   = HexColor("#1a3a5c")   # header background
C_TEAL   = HexColor("#0d7377")   # section title background
C_MINT   = HexColor("#e8f5f5")   # table alt row
C_AMBER  = HexColor("#fff3cd")   # warning / note row
C_RED    = HexColor("#c0392b")   # red-flag text
C_WHITE  = colors.white
C_BLACK  = colors.black
C_LGRAY  = HexColor("#f5f5f5")
C_DGRAY  = HexColor("#555555")

doc = SimpleDocTemplate(
    OUTPUT,
    pagesize=A5,
    leftMargin=8*mm, rightMargin=8*mm,
    topMargin=8*mm, bottomMargin=8*mm,
)

W = A5[0] - 16*mm   # usable width

styles = getSampleStyleSheet()

def style(name, parent="Normal", **kwargs):
    return ParagraphStyle(name, parent=styles[parent], **kwargs)

S_TITLE   = style("Title2",   fontSize=13, textColor=C_WHITE, alignment=TA_CENTER, leading=16, fontName="Helvetica-Bold")
S_HEAD    = style("Head2",    fontSize=8,  textColor=C_WHITE, alignment=TA_CENTER, leading=10, fontName="Helvetica-Bold")
S_CELL    = style("Cell2",    fontSize=7,  textColor=C_BLACK, alignment=TA_LEFT,   leading=9,  fontName="Helvetica")
S_CELLB   = style("CellB2",   fontSize=7,  textColor=C_BLACK, alignment=TA_LEFT,   leading=9,  fontName="Helvetica-Bold")
S_NOTE    = style("Note2",    fontSize=6.5,textColor=C_DGRAY, alignment=TA_LEFT,   leading=8,  fontName="Helvetica-Oblique")
S_RED     = style("Red2",     fontSize=6.5,textColor=C_RED,   alignment=TA_LEFT,   leading=8,  fontName="Helvetica-Bold")
S_SEC     = style("Sec2",     fontSize=8,  textColor=C_WHITE, alignment=TA_LEFT,   leading=10, fontName="Helvetica-Bold")
S_FOOTER  = style("Footer2",  fontSize=5.5,textColor=C_DGRAY, alignment=TA_CENTER, leading=7,  fontName="Helvetica-Oblique")

# ── Helper: section header bar ───────────────────────────────────────────────
def sec_header(text, color=C_TEAL):
    data = [[Paragraph(f"▶  {text}", S_SEC)]]
    t = Table(data, colWidths=[W])
    t.setStyle(TableStyle([
        ("BACKGROUND", (0,0), (-1,-1), color),
        ("TOPPADDING",  (0,0), (-1,-1), 3),
        ("BOTTOMPADDING",(0,0),(-1,-1), 3),
        ("LEFTPADDING", (0,0), (-1,-1), 5),
        ("RIGHTPADDING",(0,0), (-1,-1), 5),
    ]))
    return t

# ── Helper: plain table ──────────────────────────────────────────────────────
def make_table(headers, rows, col_widths, alt=True, note=None):
    """Build a styled table with optional note row."""
    head_row = [Paragraph(h, S_HEAD) for h in headers]
    body = [head_row]
    for i, row in enumerate(rows):
        styled = [Paragraph(str(c), S_CELLB if i == 0 and False else S_CELL) for c in row]
        body.append(styled)

    style_cmds = [
        ("BACKGROUND",    (0,0),  (-1,0),  C_NAVY),
        ("ROWBACKGROUNDS",(0,1),  (-1,-1), [C_WHITE, C_MINT] if alt else [C_WHITE]),
        ("GRID",          (0,0),  (-1,-1), 0.3, HexColor("#cccccc")),
        ("TOPPADDING",    (0,0),  (-1,-1), 2),
        ("BOTTOMPADDING", (0,0),  (-1,-1), 2),
        ("LEFTPADDING",   (0,0),  (-1,-1), 3),
        ("RIGHTPADDING",  (0,0),  (-1,-1), 3),
        ("VALIGN",        (0,0),  (-1,-1), "MIDDLE"),
        ("FONTSIZE",      (0,0),  (-1,0),  7),
    ]
    t = Table(body, colWidths=col_widths)
    t.setStyle(TableStyle(style_cmds))
    elems = [t]
    if note:
        elems.append(Paragraph(note, S_NOTE))
    return elems

# ── Helper: note/warning box ─────────────────────────────────────────────────
def note_box(text, bg=C_AMBER, text_style=None):
    s = text_style or S_NOTE
    data = [[Paragraph(text, s)]]
    t = Table(data, colWidths=[W])
    t.setStyle(TableStyle([
        ("BACKGROUND",    (0,0), (-1,-1), bg),
        ("TOPPADDING",    (0,0), (-1,-1), 3),
        ("BOTTOMPADDING", (0,0), (-1,-1), 3),
        ("LEFTPADDING",   (0,0), (-1,-1), 5),
        ("RIGHTPADDING",  (0,0), (-1,-1), 5),
        ("BOX",           (0,0), (-1,-1), 0.5, C_TEAL),
    ]))
    return t

# ════════════════════════════════════════════════════════════════════════════
# Build story
# ════════════════════════════════════════════════════════════════════════════
story = []
SP = lambda n=2: Spacer(1, n*mm)
HR = lambda: HRFlowable(width=W, thickness=0.4, color=HexColor("#cccccc"), spaceAfter=1*mm, spaceBefore=1*mm)

# ── Cover banner ─────────────────────────────────────────────────────────────
banner_data = [[Paragraph("RHTC INTERN POCKET GUIDE", S_TITLE)],
               [Paragraph("Quick Reference · Dosing Tables · Red Flags", style("sub", fontSize=7, textColor=C_WHITE, alignment=TA_CENTER, fontName="Helvetica"))]]
banner = Table(banner_data, colWidths=[W])
banner.setStyle(TableStyle([
    ("BACKGROUND",    (0,0), (-1,-1), C_NAVY),
    ("TOPPADDING",    (0,0), (-1,-1), 5),
    ("BOTTOMPADDING", (0,0), (-1,-1), 5),
    ("LEFTPADDING",   (0,0), (-1,-1), 4),
    ("RIGHTPADDING",  (0,0), (-1,-1), 4),
]))
story += [banner, SP(3)]

# ════════════════════════════════════════════════════════════════════════════
# 1. ACUTE DIARRHEA
# ════════════════════════════════════════════════════════════════════════════
story += [sec_header("1. ACUTE DIARRHEA / GASTROENTERITIS"), SP()]
story += make_table(
    ["Age", "ORS per loose stool", "Zinc (14 days)"],
    [
        ["< 6 months",         "50–100 mL",      "10 mg/day"],
        ["6 months – 2 yrs",   "100–200 mL",     "20 mg/day"],
        ["2 – 10 yrs",         "100–200 mL",     "20 mg/day"],
        ["> 10 yrs / Adults",  "200–400 mL",     "Not needed"],
    ],
    [30*mm, 60*mm, W-90*mm]
)
story += [SP(), note_box(
    "Antibiotics ONLY if: cholera-suspect → Doxycycline 300mg single dose (adults) / Cotrimoxazole in children  |  "
    "Bloody diarrhea/dysentery → Ciprofloxacin 500mg BD×3d (adults); Nalidixic acid in children  |  "
    "Amoebiasis/Giardiasis → Metronidazole 400mg TDS×5–7d"
), SP(3)]

# ════════════════════════════════════════════════════════════════════════════
# 2. FEVER / ARI
# ════════════════════════════════════════════════════════════════════════════
story += [sec_header("2. FEVER & UPPER RESPIRATORY INFECTION (URTI)"), SP()]
story += make_table(
    ["Age", "Paracetamol", "Antihistamine"],
    [
        ["< 2 yrs",       "10–15 mg/kg/dose Q6H",     "Saline nasal drops only"],
        ["2–12 yrs",      "10–15 mg/kg/dose Q6H",     "CPM 0.1 mg/kg/dose BD"],
        ["Adults",        "500 mg–1 g Q6H (max 4g/d)","Cetirizine 10mg OD or CPM 4mg TDS"],
    ],
    [25*mm, 60*mm, W-85*mm]
)
story += [SP(), note_box(
    "Antibiotics if bacterial (fever>3d, purulent exudate, ear pain): Amoxicillin 500mg TDS (adults) / 25–40mg/kg/day ÷3 (children) ×7d  |  "
    "Pneumonia (tachypnea+fever+chest signs): same dose; REFER if chest indrawing, cyanosis or SpO₂ <94%"
), SP(3)]

# ════════════════════════════════════════════════════════════════════════════
# 3. MALARIA
# ════════════════════════════════════════════════════════════════════════════
story += [sec_header("3. MALARIA  (Confirm with RDT / smear first)"), SP()]
story.append(Paragraph("<b>P. vivax</b> — Chloroquine (CQ 150mg base tab) + Primaquine (PQ 2.5mg tab)", S_CELLB))
story += [SP(1)]
story += make_table(
    ["Age", "CQ Day1", "CQ Day2", "CQ Day3", "PQ Days 1–14"],
    [
        ["<1 yr",        "½",  "½",  "¼",    "Contraindicated"],
        ["1–4 yrs",      "1",  "1",  "½",    "1 tab/day"],
        ["5–8 yrs",      "2",  "2",  "1",    "2 tabs/day"],
        ["9–14 yrs",     "3",  "3",  "1½",   "4 tabs/day"],
        ["≥15 yrs/Adult","4",  "4",  "2",    "6 tabs/day"],
        ["Pregnancy",    "4",  "4",  "2",    "⚠ OMIT PQ"],
    ],
    [32*mm, 18*mm, 18*mm, 18*mm, W-86*mm]
)
story += [SP(2)]
story.append(Paragraph("<b>P. falciparum</b> — ACT-SP (non-NE India)", S_CELLB))
story += [SP(1)]
story += make_table(
    ["Age", "Artesunate (50mg) Days 1–3", "SP Day 1", "PQ (large) Day 2"],
    [
        ["<1 yr",          "¼ tab/day",    "¼",   "Contraindicated"],
        ["1–4 yrs",        "½ tab/day",    "½",   "½ tab"],
        ["5–8 yrs",        "1 tab/day",    "1",   "¾ tab"],
        ["9–14 yrs",       "2 tabs/day",   "1½",  "1½ tabs"],
        ["≥15 yrs/Adult",  "4 tabs/day",   "3",   "2 tabs (45mg)"],
        ["Pregnancy",      "4 tabs/day",   "3",   "⚠ OMIT PQ (1st tri: avoid ACT)"],
    ],
    [24*mm, 52*mm, 18*mm, W-94*mm]
)
story += [SP(), note_box(
    "⚠  PQ contraindicated: infants, pregnancy, G6PD deficiency  |  "
    "Severe malaria → IV Artesunate: REFER immediately  |  "
    "Always give paracetamol for fever control"
), SP(3)]

# ════════════════════════════════════════════════════════════════════════════
# 4. ENTERIC FEVER
# ════════════════════════════════════════════════════════════════════════════
story += [sec_header("4. ENTERIC FEVER (TYPHOID)"), SP()]
story += make_table(
    ["Group", "Drug & Dose", "Duration"],
    [
        ["Adults",      "Ciprofloxacin 500mg BD  OR  Azithromycin 1g Day1 then 500mg OD", "14d / 7d"],
        ["Children",    "Azithromycin 20mg/kg/day OD  OR  Cefixime 20mg/kg/day BD",       "7d / 14d"],
        ["Pregnancy",   "Ceftriaxone 2g IV OD — REFER",                                    "14d"],
    ],
    [25*mm, 100*mm, W-125*mm]
)
story += [SP(), note_box(
    "Symptomatic: Paracetamol for fever; soft diet; ORS  |  Avoid NSAIDs (GI bleed/perforation risk)"
), SP(3)]

# ════════════════════════════════════════════════════════════════════════════
# 5. ANEMIA (Iron Deficiency)
# ════════════════════════════════════════════════════════════════════════════
story += [sec_header("5. IRON DEFICIENCY ANEMIA"), SP()]
story += make_table(
    ["Group", "Elemental Iron + Folic Acid", "Duration"],
    [
        ["Children 6m–5yr",        "Ferrous sulfate 3mg/kg/day ÷2 doses",           "3–6 months"],
        ["5–12 yrs",               "60mg Fe + 0.5mg FA once daily",                  "3 months"],
        ["Adolescent girls (WIFS)","100mg Fe + 0.5mg FA once weekly (school)",       "Ongoing"],
        ["Pregnant women (IFA)",   "100mg Fe + 0.5mg FA twice daily",                "Pregnancy + 3m PP"],
        ["Adults (general)",       "100–200mg Fe daily (divided doses)",              "3–6 months"],
    ],
    [40*mm, 88*mm, W-128*mm]
)
story += [SP(), note_box(
    "Give iron between meals for better absorption; take with lemon juice (Vit C)  |  "
    "Deworming at start: Albendazole 400mg single dose (children >2yr & adults)"
), SP(3)]

# ════════════════════════════════════════════════════════════════════════════
# 6. WORM INFESTATION
# ════════════════════════════════════════════════════════════════════════════
story += [sec_header("6. INTESTINAL WORMS (Deworming)"), SP()]
story += make_table(
    ["Age", "Drug", "Dose"],
    [
        ["1–2 yrs",              "Albendazole",   "200mg single dose"],
        [">2 yrs & Adults",      "Albendazole",   "400mg single dose"],
        ["Alternative (all)",    "Mebendazole",   "500mg single dose  OR  100mg BD × 3d"],
    ],
    [38*mm, 42*mm, W-80*mm]
)
story += [SP(), note_box("Repeat every 6 months (National Deworming Day)  |  Always pair with iron supplementation if anemia"), SP(3)]

# ════════════════════════════════════════════════════════════════════════════
# 7. SCABIES
# ════════════════════════════════════════════════════════════════════════════
story += [sec_header("7. SCABIES"), SP()]
story += make_table(
    ["Age", "Treatment"],
    [
        ["<2 months",          "5–10% Sulfur ointment — all over body (below neck) × 3 nights"],
        ["2m – 2 yrs",         "5% Permethrin cream — apply neck to toe, wash off after 8–12h; repeat in 1 week"],
        [">2 yrs & Adults",    "5% Permethrin  OR  Benzyl Benzoate 25% (dilute to 12.5% for children)"],
        ["Adults alt.",        "Ivermectin 200 mcg/kg single dose (not in pregnancy / weight <15kg)"],
    ],
    [35*mm, W-35*mm]
)
story += [SP(), note_box(
    "TREAT ALL FAMILY MEMBERS SIMULTANEOUSLY  |  "
    "Wash + hot-press all clothing & bedding  |  CPM for itch  |  Amoxicillin/Cloxacillin if secondary infection"
), SP(3)]

# ════════════════════════════════════════════════════════════════════════════
# 8. SKIN FUNGAL (TINEA)
# ════════════════════════════════════════════════════════════════════════════
story += [sec_header("8. FUNGAL SKIN INFECTION (TINEA)"), SP()]
story += make_table(
    ["Type", "Treatment"],
    [
        ["Localised (tinea corporis/cruris/pedis)", "Clotrimazole 1% cream BD × 2–4 weeks (topical)"],
        ["Extensive / scalp (tinea capitis)",       "Griseofulvin 10–20mg/kg/day (children) OR Fluconazole 150mg weekly × 4wk (adults)"],
        ["Nail (onychomycosis)",                    "Itraconazole 200mg OD × 3m OR pulse therapy"],
    ],
    [55*mm, W-55*mm]
)
story += [SP(3)]

# ════════════════════════════════════════════════════════════════════════════
# 9. HYPERTENSION
# ════════════════════════════════════════════════════════════════════════════
story += [sec_header("9. HYPERTENSION"), SP()]
story += make_table(
    ["Group", "First-line Drug"],
    [
        ["Adults <60yr",          "Amlodipine 2.5–5mg OD; if uncontrolled add Enalapril 5–10mg BD"],
        ["Elderly >60yr",         "Amlodipine 2.5mg OD (start low); avoid ACEI if dry cough"],
        ["With Diabetes",         "ACEI — Enalapril 5–10mg BD (or ARB: Losartan 50mg OD)"],
        ["Pregnancy",             "Methyldopa 250mg BD–TDS  OR  Labetalol 100mg BD"],
        ["Hypertensive urgency",  "Amlodipine 5–10mg; Enalapril; oral Nifedipine 10mg if needed"],
    ],
    [42*mm, W-42*mm]
)
story += [SP(), note_box(
    "Lifestyle: salt <5g/day; reduce alcohol; weight loss; walking 30min/day  |  "
    "BP >180/120 with symptoms → same-day treatment + close monitoring / refer"
), SP(3)]

# ════════════════════════════════════════════════════════════════════════════
# 10. DIABETES MELLITUS TYPE 2
# ════════════════════════════════════════════════════════════════════════════
story += [sec_header("10. DIABETES MELLITUS TYPE 2"), SP()]
story += make_table(
    ["Group", "Drug & Dose"],
    [
        ["Adults (non-obese)",  "Metformin 500mg OD with meals → titrate to 500mg TDS over weeks"],
        ["Adults (obese)",      "Metformin 500mg–1g BD (start low to avoid GI upset)"],
        ["Elderly",             "Metformin with caution (hold if eGFR <30); Glipizide 5mg OD"],
        ["Children (Type 1)",   "REFER — requires insulin"],
    ],
    [38*mm, W-38*mm]
)
story += [SP(), note_box(
    "Targets: FBS <126mg/dL; HbA1c <7%  |  "
    "Diet: avoid white rice excess, sugary drinks, processed foods  |  Screen: eyes, feet, BP, urine protein at every visit"
), SP(3)]

# ════════════════════════════════════════════════════════════════════════════
# 11. UTI
# ════════════════════════════════════════════════════════════════════════════
story += [sec_header("11. URINARY TRACT INFECTION (UTI)"), SP()]
story += make_table(
    ["Group", "Drug & Dose", "Duration"],
    [
        ["Non-pregnant women",  "Nitrofurantoin 100mg BD  OR  Cotrimoxazole DS BD",      "5d / 3d"],
        ["Pregnant women",      "Nitrofurantoin 100mg BD (avoid near term)  OR  Cephalexin 500mg QID", "7d"],
        ["Men / complicated",   "Ciprofloxacin 500mg BD",                                 "7–14d"],
        ["Elderly",             "Ciprofloxacin 500mg BD + ensure adequate hydration",      "7d"],
    ],
    [38*mm, 90*mm, W-128*mm]
)
story += [SP(3)]

# ════════════════════════════════════════════════════════════════════════════
# 12. EYE — ACUTE CONJUNCTIVITIS
# ════════════════════════════════════════════════════════════════════════════
story += [sec_header("12. ACUTE CONJUNCTIVITIS"), SP()]
story += make_table(
    ["Type", "Treatment"],
    [
        ["Bacterial (all ages)", "Ciprofloxacin 0.3% eye drops 1–2 drops Q2–4H × 7d"],
        ["Allergic",             "Sodium cromoglycate drops + Cetirizine 10mg OD (adults) / CPM (children)"],
        ["Neonatal (<28 days)",  "REFER IMMEDIATELY — Erythromycin/tetracycline ointment + systemic antibiotics"],
    ],
    [42*mm, W-42*mm]
)
story += [SP(3)]

# ════════════════════════════════════════════════════════════════════════════
# 13. MUSCULOSKELETAL PAIN
# ════════════════════════════════════════════════════════════════════════════
story += [sec_header("13. MUSCULOSKELETAL / JOINT PAIN"), SP()]
story += make_table(
    ["Condition", "Treatment"],
    [
        ["Osteoarthritis",    "Paracetamol 500mg–1g TDS (safer than NSAIDs in elderly) + topical Diclofenac gel"],
        ["Acute sprains",     "RICE + Ibuprofen 400mg TDS × 5d with food; Paracetamol if gastric issues"],
        ["Mechanical backache","Paracetamol + physiotherapy counseling; avoid prolonged bed rest"],
    ],
    [38*mm, W-38*mm]
)
story += [SP(3)]

# ════════════════════════════════════════════════════════════════════════════
# 14. MALNUTRITION (Children)
# ════════════════════════════════════════════════════════════════════════════
story += [sec_header("14. MALNUTRITION (Children <5 years)"), SP()]
story += make_table(
    ["MUAC", "Grade", "Action"],
    [
        [">12.5 cm",      "Normal",  "Dietary counseling, routine care"],
        ["11.5–12.5 cm",  "MAM",     "High-energy diet counseling; micronutrients; deworming"],
        ["<11.5 cm",      "SAM",     "REFER to NRC; F75→F100 feeds; treat infection"],
    ],
    [22*mm, 22*mm, W-44*mm]
)
story += [SP(), note_box(
    "Vitamin A supplementation: 1,00,000 IU (6–11m) / 2,00,000 IU (1–5yr) every 6 months  |  "
    "Zinc 20mg/day × 14d for every diarrheal episode  |  Deworming every 6 months"
), SP(3)]

# ════════════════════════════════════════════════════════════════════════════
# RED FLAGS
# ════════════════════════════════════════════════════════════════════════════
story += [sec_header("🚨  RED FLAGS — WHEN TO REFER", color=C_RED)]
story += [SP()]
story += make_table(
    ["Condition", "Refer if..."],
    [
        ["Diarrhea",         "Unable to drink, sunken eyes, no urine output, altered sensorium"],
        ["Malaria / Fever",  "Altered consciousness, convulsions, severe anemia, jaundice, hyperparasitemia"],
        ["ARI / Pneumonia",  "Chest indrawing, stridor, cyanosis, SpO₂ <92%, unable to feed"],
        ["Malnutrition",     "SAM + complications (infection, edema, hypoglycemia)"],
        ["Hypertension",     "BP >180/120 with headache / visual changes / confusion"],
        ["Pregnancy",        "Heavy bleeding, eclampsia, obstructed labor, fetal distress"],
        ["Eye",              "Neonatal conjunctivitis, corneal ulcer, sudden vision loss"],
    ],
    [38*mm, W-38*mm]
)
story += [SP(3)]

# ════════════════════════════════════════════════════════════════════════════
# QUICK TIPS
# ════════════════════════════════════════════════════════════════════════════
story += [sec_header("INTERN QUICK TIPS"), SP()]
tips = [
    "Always confirm malaria with RDT before prescribing antimalarials",
    "ORS first in every diarrhea — antibiotics rarely needed",
    "Zinc 14 days after every diarrheal episode in children <5yr",
    "Deworming every 6 months — combine with iron supplementation",
    "PQ contraindicated: infants, pregnancy, G6PD deficiency",
    "Scabies: treat ALL family members on the SAME day",
    "Metformin: start low (500mg OD) and titrate slowly",
    "WIFS scheme: weekly IFA for adolescent girls — record in register",
    "MUAC tape at every under-5 visit for malnutrition screening",
    "Document everything in OPD register for national health data",
]
tip_data = [[Paragraph(f"• {t}", S_CELL)] for t in tips]
tip_table = Table(tip_data, colWidths=[W])
tip_table.setStyle(TableStyle([
    ("ROWBACKGROUNDS", (0,0), (-1,-1), [C_WHITE, C_LGRAY]),
    ("TOPPADDING",     (0,0), (-1,-1), 2),
    ("BOTTOMPADDING",  (0,0), (-1,-1), 2),
    ("LEFTPADDING",    (0,0), (-1,-1), 5),
    ("RIGHTPADDING",   (0,0), (-1,-1), 5),
    ("BOX",            (0,0), (-1,-1), 0.3, C_TEAL),
]))
story.append(tip_table)
story += [SP(4)]

# ── Footer ───────────────────────────────────────────────────────────────────
story.append(Paragraph(
    "Sources: Park's PSM · Katzung Pharmacology · National Malaria Programme · WHO ARI/Diarrhea Guidelines · WIFS/NDD National Programmes  |  For educational use — always verify with current guidelines",
    S_FOOTER
))

# ── Build ─────────────────────────────────────────────────────────────────────
doc.build(story)
print("PDF generated:", OUTPUT)
Running Command

cd /home/daytona/workspace/rhtc-pocket-guide && python3 generate_pdf.py

Running Command

ls -lh /home/daytona/workspace/rhtc-pocket-guide/RHTC_Pocket_Guide.pdf && python3 -c " from pypdf import PdfReader r = PdfReader('/home/daytona/workspace/rhtc-pocket-guide/RHTC_Pocket_Guide.pdf') print(f'Pages: {len(r.pages)}') print('PDF is valid.') "

Your pocket guide is ready! Here it is:

RHTC Pocket Guide

PDF Document · PDF


What's inside (6 pages, A5 size - fits in a white coat pocket):
SectionContent
1. Acute DiarrheaORS + Zinc table by age; antibiotic indications
2. Fever / URTIParacetamol + antihistamine doses by age
3. MalariaFull P. vivax CQ+PQ table + P. falciparum ACT-SP table by age
4. Enteric FeverCiprofloxacin/Azithromycin/Cefixime by group
5. Iron Deficiency AnemiaIFA doses by group incl. WIFS scheme
6. WormsAlbendazole/Mebendazole deworming doses
7. ScabiesPermethrin/Sulfur/Ivermectin by age
8. Fungal SkinClotrimazole/Griseofulvin/Fluconazole
9. HypertensionAmlodipine/Enalapril/Methyldopa by group
10. Diabetes T2Metformin dosing + targets
11. UTINitrofurantoin/Ciprofloxacin by group
12. ConjunctivitisCiprofloxacin drops + neonatal referral
13. MusculoskeletalParacetamol/Ibuprofen/RICE
14. MalnutritionMUAC grading + action
Red FlagsWhen to refer, per condition
Quick Tips10 key intern reminders
Printing tip: Print double-sided on A5 paper (or A4 folded in half), laminate if possible - it will last your entire internship.
This is a shared conversation. Sign in to Orris to start your own chat.