Explain national tuberculosis elimination program

Reading File
Finding Sources
Searching the Web

National Tuberculosis Elimination Program India NTEP 2025 guidelines objectives

Searching PubMed

National Tuberculosis Elimination Program India NTEP

Finding Sources
Reading Web Page

https://dghs.mohfw.gov.in/national-tuberculosis-elimination-…

Reading File
Reading File
I now have sufficient information from Park's Textbook, official government sources, and PubMed. Let me compile a comprehensive answer.

National Tuberculosis Elimination Programme (NTEP)

Background and Renaming

India has fought tuberculosis (TB) for over 60 years. The original National TB Programme was launched in 1962 using the District TB Centre model, incorporating BCG vaccination and TB treatment. It was subsequently strengthened to the Revised National Tuberculosis Control Programme (RNTCP) and operated under DOTS strategy.
In 2020, the Ministry of Health and Family Welfare renamed RNTCP to the National Tuberculosis Elimination Programme (NTEP) to align with India's bold commitment to eliminate TB by 2025 - five years ahead of the global SDG target of 2030. This official renaming by the Government of India reflects a shift from mere "control" to "elimination."

SDG / End TB Targets (Baseline: 2015)

Target2015 Baseline2024 Status2025 Goal
Reduction in TB incidence208/lakh/year153/lakh/year (27% reduction)42/lakh/year (80% reduction)
Reduction in TB mortality4.47% death rate3.6% death rate (19% reduction)0.5% death rate (90% reduction)
Catastrophic costs to TB householdsPresentOngoing mitigationZero

Organizational Structure (NTEP Organogram)

The NTEP operates at 5 levels - Park's Textbook of Preventive and Social Medicine:

1. National Level

  • Central TB Division (CTD) under the Directorate General of Health Services (DGHS), MoHFW manages the programme nationally.
  • Headed by Deputy Director General - TB (DDG-TB).
  • Supported by:
    • National TB Institute (NTI), Bengaluru
    • 6 National Reference Laboratories (NRL): NTI, NIRT Chennai, NITRD Delhi, JALMA Agra, RMRC Bhubaneswar, BMHRC Bhopal
    • National Task Force for Medical Colleges

2. State Level

  • Full-time State Tuberculosis Officer (STO) at the State TB Cell (STC)
  • Responsible for planning, training, supervision, and monitoring across all districts
  • Under the State Health Society / National Health Mission

3. District Level

  • District TB Officer (DTO) oversees the District TB Centre (DTC)
  • The DTO is the nodal person for all TB control activities in the district

4. Sub-District Level (Tuberculosis Unit - TU)

  • A major structural innovation under NTEP
  • TU is the nodal point for TB activities at the block level
  • Based in NHM health blocks
  • Staffed by Senior Treatment Supervisor (STS) and Senior TB Laboratory Supervisor (STLS)

5. Peripheral Health Institution (PHI) Level

  • Microscopy centres and health facilities where TB patients are diagnosed and treated
  • Designated Microscopy Centre (DMC) - one per 100,000 population (plains) / 50,000 (hilly areas)

National Strategic Plan (NSP)

NSP 2017-2025 (Original)

Announced the four strategic pillars framework: Detect - Treat - Prevent - Build (DTPB)

NSP India 2020-2025 (Revised)

By 2020, it was evident the original NSP 2017-25 would not meet targets, so a revised NSP was launched. It focuses on:
  • Detecting all TB patients - including those in the private sector and undiagnosed high-risk populations
  • Providing modern diagnostics and drug-resistant TB services
  • Community-level interventions

Four Strategic Pillars (DTPB)

1. DETECT

  • Early and universal diagnosis through CBNAAT (Cartridge Based Nucleic Acid Amplification Test) scaled to 1,180 machines across all districts
  • TrueNAT MTB - portable, battery-operated molecular diagnostic platform suitable for peripheral/tribal areas
  • Active Case Finding (ACF) - systematic screening in high-risk groups: slums, prisons, tribal areas, old age homes, orphanages, migrant camps
  • Universal Drug Susceptibility Testing (UDST) - ~55% of notified TB cases offered UDST
  • Ni-kshay portal - mandatory electronic notification of every TB case (public + private)

2. TREAT

  • Daily fixed-dose combination (FDC) regimen replacing the older three-times-weekly DOTS
  • Patient-wise boxes (PWBs) with blister-packed drugs for each day/week of treatment
  • DR-TB management - shorter 9-month regimens and newer drugs including Bedaquiline, Delamanid, and Pretomanid for XDR-TB
  • Over 46,000 DR-TB patients initiated on shorter regimens since 2018
  • Daily FDC regimen for paediatric TB in 6 weight bands with child-friendly formulations
  • Ni-kshay Poshan Yojana (NPY) - Rs 500/month direct benefit transfer (DBT) to all TB patients for nutritional support during treatment; over Rs 2,781 crore disbursed to ~1 crore beneficiaries cumulatively till 2023

3. PREVENT

  • TB Preventive Therapy (TPT) for household contacts of TB patients and high-risk groups (HIV-positive individuals, immunosuppressed patients on biologics, etc.)
  • Contact tracing in vulnerable populations
  • Airborne Infection Control (AIC) guidelines implementation
  • BCG vaccination in national immunization schedule
  • Infection control in healthcare facilities

4. BUILD

  • Strengthening health system infrastructure
  • Multi-sectoral convergence - addressing social determinants (poverty, malnutrition, housing)
  • Private sector engagement - Standards for TB Care in India (STCI), mandatory TB notification, ban on serodiagnostics
  • Human resource development and training
  • Sub-National Disease-Free Certification using community-level prevalence surveys (inverse sampling methodology)

Key Programmes and Initiatives

Nikshay Portal

A web-based IT system for real-time TB case notification, treatment tracking, and outcome recording. All events from notification to treatment outcome are recorded on Nikshay. Mandatory for both public and private providers.

Nikshay Poshan Yojana (NPY)

Launched April 2018 - Rs 500/month DBT directly to TB patients' bank accounts for the entire treatment duration to address the major risk factor of undernutrition.

Pradhan Mantri TB Mukt Bharat Abhiyaan (PMTBMBA)

Launched by the President of India on September 9, 2022, this flagship initiative aims to:
  • Provide additional nutritional, vocational, and diagnostic support to TB patients
  • Engage corporates (CSR), elected representatives, NGOs, and individuals as "Ni-kshay Mitras" (supporters) to adopt TB patients
  • Create a mass movement ("Jan Andolan") for TB elimination
  • Incentivize ASHA workers and treatment supporters
  • Introduce TB Vijetas (TB Champions - survivors as advocates) and Ni-kshay SAATHI (family caregiver model)

100-Days Campaign (Dec 2024 - March 2025)

Targeted campaign in high-burden districts focusing on:
  • Finding new cases via X-ray screening + upfront NAAT among vulnerable groups
  • Saturating support services (NPY, HIV co-management, diabetes screening)
  • Scaling up TPT for household contacts

Drug Resistance Surveillance (DRS)

  • Measures prevalence of antimycobacterial resistance among new and previously treated sputum smear-positive PTB patients
  • Guides programme adjustment and choice of regimens
  • India has documented significant MDR-TB, XDR-TB burden through repeated national DRS surveys

Public-Private Mix (PPM) / Private Sector Engagement

India has a vast private sector treating a majority of initial TB presentations. NTEP strategies to integrate this sector include:
  • Mandatory TB notification for all providers (public and private)
  • Ni-kshay platform for private provider reporting
  • Linking private patients to government drug supply
  • Ban on unreliable TB serological tests
  • Accreditation of private labs under quality standards

Important Schemes Under NTEP

SchemeDetails
Nikshay Poshan YojanaRs 500/month nutrition support via DBT
PMTBMBANi-kshay Mitra adoption scheme; community/CSR mobilization
CBNAAT/TrueNATRapid molecular diagnostics for TB + drug resistance
Bedaquiline/DelamanidNewer drugs for DR-TB
Daily FDC regimenModern drug delivery replacing 3x/week DOTS
TPT (TB Preventive Therapy)6H (6 months isoniazid) or 3HP regimen for high-risk contacts
Sub-national certificationDistrict/state-level disease burden estimation surveys

Challenges Remaining

  • India accounts for ~27% of global TB burden (highest in the world)
  • Significant private sector under-reporting
  • High rates of TB-diabetes and TB-HIV co-morbidity
  • Drug resistance (MDR-TB, XDR-TB)
  • Social determinants: poverty, overcrowding, malnutrition
  • The 2025 elimination target has not been fully met given the 2024 incidence of 153/lakh vs target of 42/lakh

Summary: Evolution of India's TB Programme

1962 → National TB Programme (District TB Centre model)
  ↓
1997 → RNTCP with DOTS (Directly Observed Treatment, Short-course)
  ↓
2006 → Stop TB Strategy adopted
  ↓
2014 → End TB Strategy (WHO) adopted
  ↓
2017 → NSP 2017-25 (Detect-Treat-Prevent-Build pillars)
  ↓
2020 → RNTCP renamed NTEP; NSP 2020-25 launched
  ↓
2022 → PMTBMBA launched
  ↓
Goal: TB elimination by 2025 (vs global target of 2030)
Sources: Park's Textbook of Preventive and Social Medicine (26th ed.), DGHS-MoHFW NTEP page, PMC review on NTEP, Maharashtra PHD NTEP portal.

Summarise this for 10 marks questions

Here is a structured 10-mark answer on the National Tuberculosis Elimination Programme (NTEP):

National Tuberculosis Elimination Programme (NTEP)

Introduction (1 mark)

India renamed the Revised National Tuberculosis Control Programme (RNTCP) to the National Tuberculosis Elimination Programme (NTEP) in 2020, with the goal of eliminating TB by 2025 - five years ahead of the global SDG target of 2030. India bears the highest TB burden globally (~27% of world cases).

SDG Targets (Baseline 2015) (1 mark)

  • 80% reduction in TB incidence (target: 42/lakh/year)
  • 90% reduction in TB mortality (target: 0.5% death rate)
  • Zero catastrophic costs to TB-affected households

Organizational Structure (1 mark)

NTEP operates at 5 levels:
  1. National - Central TB Division (CTD), DGHS, MoHFW; supported by NTI Bengaluru + 6 National Reference Labs
  2. State - State TB Officer (STO) at State TB Cell
  3. District - District TB Officer (DTO) at District TB Centre (DTC)
  4. Sub-district - Tuberculosis Unit (TU) with STS and STLS
  5. Peripheral - Designated Microscopy Centres (DMC) at PHI level

Four Strategic Pillars - DTPB (4 marks)

D - Detect

  • CBNAAT (1,180 machines, all districts) and TrueNAT for rapid molecular diagnosis
  • Active Case Finding (ACF) in high-risk groups: slums, prisons, tribal areas, old age homes
  • Ni-kshay portal - mandatory electronic notification for all providers (public + private)
  • Universal Drug Susceptibility Testing (UDST)

T - Treat

  • Daily Fixed Dose Combination (FDC) regimen replacing older 3x/week DOTS
  • Patient-wise boxes (PWBs) with blister-packed drugs
  • Newer drugs for DR-TB: Bedaquiline, Delamanid, Pretomanid; shorter 9-month regimens
  • Nikshay Poshan Yojana (NPY) - Rs 500/month nutritional support via direct benefit transfer (DBT) to all TB patients

P - Prevent

  • TB Preventive Therapy (TPT) for household contacts and high-risk groups (HIV+, immunosuppressed)
  • Contact tracing in vulnerable populations
  • Airborne Infection Control (AIC) in healthcare settings
  • BCG vaccination in national immunization schedule

B - Build

  • Private sector engagement - mandatory notification, ban on serodiagnostics, linking private patients to govt. drug supply
  • Multi-sectoral convergence addressing social determinants (poverty, malnutrition)
  • Health system strengthening and human resource training
  • Sub-national disease-free certification using community-level surveys

Key Initiatives (2 marks)

InitiativeDetails
Ni-kshay PortalReal-time case notification and treatment tracking
Nikshay Poshan YojanaRs 500/month DBT for nutrition; Rs 2,781 crore disbursed to ~1 crore beneficiaries till 2023
PMTBMBAPM TB Mukt Bharat Abhiyaan (Sept 2022) - Ni-kshay Mitra adoption, CSR engagement, TB Champions (TB Vijetas), Jan Andolan
Daily FDC RegimenModern patient-wise drug delivery; child-friendly paediatric formulations in 6 weight bands
CBNAAT / TrueNATDecentralized rapid molecular diagnosis for TB + drug resistance

Conclusion (1 mark)

NTEP represents India's most ambitious public health commitment - transforming TB management from mere control to elimination through universal diagnosis, patient-centered treatment, preventive therapy, and multi-sectoral community mobilization. Despite progress (27% incidence reduction by 2024), achieving the 2025 target of 80% reduction remains a formidable challenge requiring intensified efforts.

Exam Tip: Remember the acronym DTPB (Detect-Treat-Prevent-Build) and the year 2020 (NTEP renamed), 2025 (India's elimination target), and 2030 (global SDG target). Key schemes: NPY (Rs 500/month) and PMTBMBA (Sept 2022).

Create a concise revision PDF on NTEP covering key points

Reading File
Running Command

ls -la /tmp/workspace/ 2>/dev/null || mkdir -p /tmp/workspace && echo "Created workspace"

Running Command

mkdir -p /tmp/workspace/ntep-revision && python3 << 'EOF' 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) from reportlab.lib.enums import TA_CENTER, TA_LEFT, TA_JUSTIFY from reportlab.platypus import BaseDocTemplate, PageTemplate, Frame from reportlab.lib.colors import HexColor # ── Colour palette ──────────────────────────────────────────────────────────── TEAL = HexColor("#0B6E6E") TEAL_LIGHT = HexColor("#D6EFEF") ORANGE = HexColor("#E06C1A") ORANGE_LT = HexColor("#FDE9D8") GREEN = HexColor("#2E7D32") GREEN_LT = HexColor("#E8F5E9") BLUE = HexColor("#1565C0") BLUE_LT = HexColor("#E3F2FD") PURPLE = HexColor("#6A1B9A") PURPLE_LT = HexColor("#F3E5F5") RED = HexColor("#C62828") RED_LT = HexColor("#FFEBEE") YELLOW_LT = HexColor("#FFFDE7") GREY_DARK = HexColor("#37474F") GREY_MID = HexColor("#78909C") GREY_LIGHT = HexColor("#ECEFF1") WHITE = colors.white BLACK = colors.black W, H = A4 # ── Document ────────────────────────────────────────────────────────────────── doc = SimpleDocTemplate( "/tmp/workspace/ntep-revision/NTEP_Revision.pdf", pagesize=A4, leftMargin=1.8*cm, rightMargin=1.8*cm, topMargin=1.5*cm, bottomMargin=1.5*cm, title="NTEP Revision Notes", author="Orris Medical" ) story = [] styles = getSampleStyleSheet() # ── Custom styles ───────────────────────────────────────────────────────────── def S(name, **kw): return ParagraphStyle(name, **kw) title_style = S("Title2", fontName="Helvetica-Bold", fontSize=22, textColor=WHITE, alignment=TA_CENTER, spaceAfter=4) subtitle_style = S("Subtitle", fontName="Helvetica", fontSize=11, textColor=WHITE, alignment=TA_CENTER, spaceAfter=2) h1 = S("H1", fontName="Helvetica-Bold", fontSize=12, textColor=WHITE, backColor=TEAL, leading=16, spaceAfter=4, spaceBefore=8, leftIndent=6, rightIndent=6, borderPad=4) h2 = S("H2", fontName="Helvetica-Bold", fontSize=10.5, textColor=TEAL, spaceBefore=6, spaceAfter=2, leading=14) body = S("Body2", fontName="Helvetica", fontSize=9.5, leading=14, textColor=GREY_DARK, spaceAfter=3, alignment=TA_JUSTIFY) bullet = S("Bullet2", fontName="Helvetica", fontSize=9.2, leading=13, textColor=GREY_DARK, leftIndent=14, firstLineIndent=-10, spaceAfter=2) bold_bullet = S("BoldBullet", fontName="Helvetica-Bold", fontSize=9.2, leading=13, textColor=GREY_DARK, leftIndent=14, firstLineIndent=-10, spaceAfter=2) small = S("Small", fontName="Helvetica-Oblique", fontSize=8.5, textColor=GREY_MID, alignment=TA_CENTER) tag = S("Tag", fontName="Helvetica-Bold", fontSize=8, textColor=WHITE, alignment=TA_CENTER) note = S("Note", fontName="Helvetica-Oblique", fontSize=8.5, textColor=PURPLE, leftIndent=8, spaceAfter=4) # ── Helper: section header ──────────────────────────────────────────────────── def sec(text, color=TEAL): p = ParagraphStyle("SecH", fontName="Helvetica-Bold", fontSize=11, textColor=WHITE, backColor=color, leading=16, spaceAfter=5, spaceBefore=10, leftIndent=0, borderPad=5) return Paragraph(text, p) def subsec(text): p = ParagraphStyle("SubH", fontName="Helvetica-Bold", fontSize=10, textColor=TEAL, spaceBefore=6, spaceAfter=3, leading=14, borderPadding=(0,0,1,0)) return Paragraph(text, p) def b(text): return f"<b>{text}</b>" def u(text): return f"<u>{text}</u>" def col(text, c): return f'<font color="{c}">{text}</font>' def bullet_item(text, style=bullet): return Paragraph(f"&#8226; {text}", style) def hr(color=TEAL_LIGHT, thickness=1): return HRFlowable(width="100%", thickness=thickness, color=color, spaceAfter=4, spaceBefore=2) def sp(h=4): return Spacer(1, h) # ───────────────────────────────────────────────────────────────────────────── # TITLE BANNER # ───────────────────────────────────────────────────────────────────────────── banner_data = [[ Paragraph("NATIONAL TUBERCULOSIS ELIMINATION PROGRAMME", title_style), ]] banner_tbl = Table(banner_data, colWidths=[W - 3.6*cm]) banner_tbl.setStyle(TableStyle([ ("BACKGROUND", (0,0), (-1,-1), TEAL), ("ROUNDEDCORNERS", [8]), ("TOPPADDING", (0,0), (-1,-1), 14), ("BOTTOMPADDING",(0,0),(-1,-1), 6), ("LEFTPADDING", (0,0), (-1,-1), 10), ("RIGHTPADDING",(0,0), (-1,-1), 10), ])) story.append(banner_tbl) sub_data = [[ Paragraph("NTEP | Quick Revision Notes | Community Medicine", subtitle_style) ]] sub_tbl = Table(sub_data, colWidths=[W - 3.6*cm]) sub_tbl.setStyle(TableStyle([ ("BACKGROUND", (0,0), (-1,-1), ORANGE), ("TOPPADDING", (0,0), (-1,-1), 5), ("BOTTOMPADDING",(0,0),(-1,-1), 5), ])) story.append(sub_tbl) story.append(sp(10)) # ───────────────────────────────────────────────────────────────────────────── # QUICK FACTS BOX # ───────────────────────────────────────────────────────────────────────────── qf_style = ParagraphStyle("QF", fontName="Helvetica", fontSize=9, textColor=GREY_DARK, leading=13) qf_bold = ParagraphStyle("QFB", fontName="Helvetica-Bold", fontSize=9, textColor=TEAL, leading=13) facts = [ [Paragraph(b("Launched"), qf_bold), Paragraph("1962 (National TB Programme) → RNTCP (1997) → NTEP (2020)", qf_style)], [Paragraph(b("India's Goal"), qf_bold), Paragraph("Eliminate TB by <b>2025</b> (5 years ahead of global SDG target of 2030)", qf_style)], [Paragraph(b("Global Burden"), qf_bold), Paragraph("India accounts for <b>~27%</b> of global TB burden — highest in the world", qf_style)], [Paragraph(b("Nodal Body"), qf_bold), Paragraph("Central TB Division (CTD), DGHS, Ministry of Health &amp; Family Welfare", qf_style)], [Paragraph(b("Key Pillars"), qf_bold), Paragraph("<b>D</b>etect – <b>T</b>reat – <b>P</b>revent – <b>B</b>uild (DTPB)", qf_style)], ] facts_tbl = Table(facts, colWidths=[3.2*cm, 13.5*cm]) facts_tbl.setStyle(TableStyle([ ("BACKGROUND", (0,0), (-1,-1), TEAL_LIGHT), ("BACKGROUND", (0,0), (0,-1), HexColor("#C8E6E6")), ("GRID", (0,0), (-1,-1), 0.4, HexColor("#A0CECE")), ("VALIGN", (0,0), (-1,-1), "MIDDLE"), ("TOPPADDING", (0,0), (-1,-1), 5), ("BOTTOMPADDING", (0,0), (-1,-1), 5), ("LEFTPADDING", (0,0), (-1,-1), 8), ("ROUNDEDCORNERS", [4]), ])) story.append(KeepTogether([sec(" QUICK FACTS AT A GLANCE"), facts_tbl])) story.append(sp(10)) # ───────────────────────────────────────────────────────────────────────────── # SDG TARGETS # ───────────────────────────────────────────────────────────────────────────── sdg_header = [ Paragraph(b("Target"), tag), Paragraph(b("Baseline 2015"), tag), Paragraph(b("Status 2024"), tag), Paragraph(b("Goal 2025"), tag), ] sdg_rows = [ sdg_header, [Paragraph("TB Incidence", qf_bold), Paragraph("208/lakh/yr", qf_style), Paragraph("153/lakh/yr\n(27% ↓)", qf_style), Paragraph("42/lakh/yr\n(80% ↓)", qf_style)], [Paragraph("TB Mortality", qf_bold), Paragraph("4.47% death rate", qf_style), Paragraph("3.6% death rate\n(19% ↓)", qf_style), Paragraph("0.5% death rate\n(90% ↓)", qf_style)], [Paragraph("Catastrophic Costs", qf_bold), Paragraph("Present", qf_style), Paragraph("Ongoing mitigation", qf_style), Paragraph("Zero", qf_style)], ] sdg_tbl = Table(sdg_rows, colWidths=[4.2*cm, 3.5*cm, 3.8*cm, 5.2*cm]) sdg_tbl.setStyle(TableStyle([ ("BACKGROUND", (0,0), (-1,0), ORANGE), ("TEXTCOLOR", (0,0), (-1,0), WHITE), ("BACKGROUND", (0,1), (-1,-1), ORANGE_LT), ("BACKGROUND", (0,1), (0,-1), HexColor("#FACFAA")), ("GRID", (0,0), (-1,-1), 0.5, ORANGE), ("VALIGN", (0,0), (-1,-1), "MIDDLE"), ("ALIGN", (1,0), (-1,-1), "CENTER"), ("TOPPADDING", (0,0), (-1,-1), 5), ("BOTTOMPADDING", (0,0), (-1,-1), 5), ("LEFTPADDING", (0,0), (-1,-1), 6), ("FONTNAME", (0,0), (-1,0), "Helvetica-Bold"), ("FONTSIZE", (0,0), (-1,-1), 9), ])) story.append(KeepTogether([sec(" SDG / END TB TARGETS", ORANGE), sdg_tbl])) story.append(sp(10)) # ───────────────────────────────────────────────────────────────────────────── # ORGANIZATIONAL STRUCTURE # ───────────────────────────────────────────────────────────────────────────── org_rows = [ [Paragraph(b("Level"), tag), Paragraph(b("Body"), tag), Paragraph(b("Key Person / Function"), tag)], [Paragraph("National", qf_bold), Paragraph("Central TB Division (CTD), DGHS", qf_style), Paragraph("DDG-TB; NTI Bengaluru + 6 National Reference Labs (NIRT, NITRD, JALMA…)", qf_style)], [Paragraph("State", qf_bold), Paragraph("State TB Cell (STC)", qf_style), Paragraph("State TB Officer (STO) — planning, training, supervision", qf_style)], [Paragraph("District", qf_bold), Paragraph("District TB Centre (DTC)", qf_style), Paragraph("District TB Officer (DTO) — nodal for district activities", qf_style)], [Paragraph("Sub-district", qf_bold), Paragraph("Tuberculosis Unit (TU)", qf_style), Paragraph("STS + STLS — TU is the key innovation of NTEP", qf_style)], [Paragraph("Peripheral", qf_bold), Paragraph("PHI / Designated Microscopy Centre (DMC)", qf_style), Paragraph("1 DMC per 1,00,000 pop (plains); 50,000 (hilly areas)", qf_style)], ] org_tbl = Table(org_rows, colWidths=[2.8*cm, 5.5*cm, 8.4*cm]) org_tbl.setStyle(TableStyle([ ("BACKGROUND", (0,0), (-1,0), BLUE), ("TEXTCOLOR", (0,0), (-1,0), WHITE), ("BACKGROUND", (0,1), (-1,-1), BLUE_LT), ("BACKGROUND", (0,1), (0,-1), HexColor("#BBDEFB")), ("GRID", (0,0), (-1,-1), 0.5, BLUE), ("VALIGN", (0,0), (-1,-1), "MIDDLE"), ("TOPPADDING", (0,0), (-1,-1), 5), ("BOTTOMPADDING", (0,0), (-1,-1), 5), ("LEFTPADDING", (0,0), (-1,-1), 6), ("FONTNAME", (0,0), (-1,0), "Helvetica-Bold"), ("FONTSIZE", (0,0), (-1,-1), 9), ])) story.append(KeepTogether([sec(" ORGANIZATIONAL STRUCTURE — 5 LEVELS", BLUE), org_tbl])) story.append(sp(10)) # ───────────────────────────────────────────────────────────────────────────── # FOUR PILLARS — DTPB # ───────────────────────────────────────────────────────────────────────────── story.append(sec(" FOUR STRATEGIC PILLARS — D T P B", GREEN)) pillar_data = [ # DETECT ("D — DETECT", GREEN, GREEN_LT, [ "<b>CBNAAT</b> — 1,180 machines covering all districts; diagnoses TB + drug resistance", "<b>TrueNAT MTB</b> — portable, battery-operated; ideal for tribal/remote areas", "<b>Active Case Finding (ACF)</b> — systematic screening in slums, prisons, tribal areas, old age homes, orphanages", "<b>Universal Drug Susceptibility Testing (UDST)</b> — ~55% of notified TB cases offered UDST", "<b>Ni-kshay Portal</b> — mandatory online notification for ALL providers (public + private); tracks from notification to outcome", ]), # TREAT ("T — TREAT", ORANGE, ORANGE_LT, [ "<b>Daily FDC (Fixed Dose Combination) regimen</b> — replaces older 3×/week DOTS", "<b>Patient-wise boxes (PWBs)</b> — blister-packed; daily pack (intensive phase), weekly pack (continuation phase); Red = Cat I, Blue = Cat II", "<b>Paediatric TB</b> — child-friendly FDCs in 6 weight bands; family DOT option incorporated", "<b>DR-TB management</b> — Bedaquiline, Delamanid, Pretomanid; shorter 9-month regimen; >46,000 DR-TB patients on shorter regimen since 2018", "<b>Nikshay Poshan Yojana (NPY)</b> — ₹500/month DBT for nutrition to ALL TB patients for entire treatment duration", ]), # PREVENT ("P — PREVENT", BLUE, BLUE_LT, [ "<b>TB Preventive Therapy (TPT)</b> — 6H (6-month isoniazid) or 3HP regimen for household contacts + high-risk groups", "<b>Contact tracing</b> in vulnerable populations", "<b>Airborne Infection Control (AIC)</b> guidelines — healthcare facilities", "<b>BCG vaccination</b> — National Immunization Schedule", "<b>HIV–TB co-management</b> — single-window services; isoniazid preventive therapy for HIV+", ]), # BUILD ("B — BUILD", PURPLE, PURPLE_LT, [ "<b>Private sector engagement</b> — mandatory notification, ban on TB serodiagnostics, govt. drug supply to private patients", "<b>Multi-sectoral convergence</b> — addressing social determinants: poverty, malnutrition, housing", "<b>Sub-national certification</b> — district/state TB burden estimation via community-level surveys (inverse sampling)", "<b>Health system strengthening</b> — training, HR development, lab network expansion", "<b>Research &amp; innovation</b> — in-country TB burden models, new diagnostics, new drug trials", ]), ] for title, color, bg, points in pillar_data: header_para = ParagraphStyle("PH", fontName="Helvetica-Bold", fontSize=10, textColor=WHITE, leading=14) bp = ParagraphStyle("BP2", fontName="Helvetica", fontSize=9, leading=12.5, textColor=GREY_DARK, leftIndent=12, firstLineIndent=-10, spaceAfter=2) content = [[Paragraph(f"&#8226; {p}", bp)] for p in points] content_tbl = Table(content, colWidths=[15.5*cm]) content_tbl.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), 8), ])) hdr_tbl = Table([[Paragraph(title, header_para)]], colWidths=[15.5*cm]) hdr_tbl.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), 10), ])) story.append(KeepTogether([hdr_tbl, content_tbl, sp(6)])) story.append(sp(4)) # ───────────────────────────────────────────────────────────────────────────── # KEY SCHEMES # ───────────────────────────────────────────────────────────────────────────── scheme_rows = [ [Paragraph(b("Scheme"), tag), Paragraph(b("Key Details"), tag)], [Paragraph("Ni-kshay Portal", qf_bold), Paragraph("Web-based IT platform; mandatory electronic notification for public + private providers; tracks all events from notification to outcome", qf_style)], [Paragraph("Nikshay Poshan Yojana (NPY)", qf_bold), Paragraph("Launched April 2018 | ₹500/month DBT for nutrition | ₹2,781 crore disbursed to ~1 crore beneficiaries till 2023", qf_style)], [Paragraph("PMTBMBA", qf_bold), Paragraph("PM TB Mukt Bharat Abhiyaan | Launched 9 Sept 2022 by President | Ni-kshay Mitras adopt TB patients | CSR + NGO + community engagement | TB Vijetas (champions) + Ni-kshay SAATHI (family caregiver model) | Jan Andolan", qf_style)], [Paragraph("CBNAAT / TrueNAT", qf_bold), Paragraph("Rapid molecular diagnostics for TB + drug resistance | CBNAAT: 1,180 labs across all districts | TrueNAT: portable, battery-operated for peripheral areas", qf_style)], [Paragraph("Daily FDC Regimen", qf_bold), Paragraph("Replaces 3×/week DOTS | Patient-wise blister-packed boxes | Paediatric: 6 weight bands, child-friendly formulations, family DOT option", qf_style)], [Paragraph("TB Preventive Therapy (TPT)", qf_bold), Paragraph("6H or 3HP regimen | For household contacts + HIV+ + immunosuppressed (biologics) | Expanding to all high-risk groups", qf_style)], [Paragraph("Drug Resistance Surveillance (DRS)", qf_bold), Paragraph("Monitors prevalence of drug resistance in new + previously treated PTB patients | Guides regimen choices nationally", qf_style)], ] scheme_tbl = Table(scheme_rows, colWidths=[4.2*cm, 12.5*cm]) scheme_tbl.setStyle(TableStyle([ ("BACKGROUND", (0,0), (-1,0), RED), ("TEXTCOLOR", (0,0), (-1,0), WHITE), ("BACKGROUND", (0,1), (-1,-1), RED_LT), ("BACKGROUND", (0,1), (0,-1), HexColor("#FFCDD2")), ("GRID", (0,0), (-1,-1), 0.5, RED), ("VALIGN", (0,0), (-1,-1), "MIDDLE"), ("TOPPADDING", (0,0), (-1,-1), 5), ("BOTTOMPADDING", (0,0), (-1,-1), 5), ("LEFTPADDING", (0,0), (-1,-1), 7), ("FONTNAME", (0,0), (-1,0), "Helvetica-Bold"), ("FONTSIZE", (0,0), (-1,-1), 9), ])) story.append(KeepTogether([sec(" KEY SCHEMES & INITIATIVES", RED), scheme_tbl])) story.append(sp(10)) # ───────────────────────────────────────────────────────────────────────────── # EVOLUTION TIMELINE # ───────────────────────────────────────────────────────────────────────────── story.append(sec(" EVOLUTION TIMELINE", GREY_DARK)) timeline = [ ("1962", "National TB Programme launched — District TB Centre model + BCG vaccination"), ("1997", "RNTCP launched — DOTS strategy introduced"), ("2006", "Stop TB Strategy adopted by RNTCP (WHO)"), ("2014", "End TB Strategy approved by World Health Assembly"), ("2017", "NSP 2017-25 launched — DTPB pillars introduced"), ("2018", "Nikshay Poshan Yojana (₹500/month DBT); Bedaquiline expanded"), ("2020", "RNTCP renamed NTEP; NSP 2020-25 launched (revised targets)"), ("2022", "Pradhan Mantri TB Mukt Bharat Abhiyaan (PMTBMBA) — 9 Sept 2022"), ("2025", "TARGET: 80% reduction in incidence, 90% reduction in mortality"), ("2030", "Global SDG End TB target"), ] tl_style_yr = ParagraphStyle("TLY", fontName="Helvetica-Bold", fontSize=9, textColor=WHITE, alignment=TA_CENTER) tl_style_ev = ParagraphStyle("TLE", fontName="Helvetica", fontSize=9, textColor=GREY_DARK, leading=12) tl_rows = [[Paragraph(yr, tl_style_yr), Paragraph(ev, tl_style_ev)] for yr, ev in timeline] tl_tbl = Table(tl_rows, colWidths=[1.8*cm, 14.9*cm]) row_colors = [TEAL, TEAL, GREY_DARK, GREY_DARK, GREEN, ORANGE, TEAL, RED, HexColor("#1B5E20"), HexColor("#0D47A1")] style_cmds = [ ("GRID", (0,0), (-1,-1), 0.3, GREY_LIGHT), ("VALIGN", (0,0), (-1,-1), "MIDDLE"), ("TOPPADDING", (0,0), (-1,-1), 5), ("BOTTOMPADDING", (0,0), (-1,-1), 5), ("LEFTPADDING", (0,0), (-1,-1), 6), ("BACKGROUND", (1,0), (1,-1), GREY_LIGHT), ] for i, c in enumerate(row_colors): style_cmds.append(("BACKGROUND", (0,i), (0,i), c)) tl_tbl.setStyle(TableStyle(style_cmds)) story.append(tl_tbl) story.append(sp(10)) # ───────────────────────────────────────────────────────────────────────────── # NATIONAL STRATEGIC PLANS # ───────────────────────────────────────────────────────────────────────────── nsp_rows = [ [Paragraph(b("NSP"), tag), Paragraph(b("Period"), tag), Paragraph(b("Highlights"), tag)], [Paragraph("NSP 2017-25\n(Original)", qf_bold), Paragraph("2017-2025", qf_style), Paragraph("Introduced DTPB pillars; universal CBNAAT; mandatory notification; daily FDC; Bedaquiline rollout", qf_style)], [Paragraph("NSP 2020-25\n(Revised)", qf_bold), Paragraph("2020-2025", qf_style), Paragraph("Relaunched after NSP 2017-25 fell short; intensified private sector engagement; TB Mukt Bharat Abhiyaan; expanded TPT; TrueNAT rollout; community-level burden estimation", qf_style)], ] nsp_tbl = Table(nsp_rows, colWidths=[3.2*cm, 2.8*cm, 10.7*cm]) nsp_tbl.setStyle(TableStyle([ ("BACKGROUND", (0,0), (-1,0), PURPLE), ("TEXTCOLOR", (0,0), (-1,0), WHITE), ("BACKGROUND", (0,1), (-1,-1), PURPLE_LT), ("BACKGROUND", (0,1), (0,-1), HexColor("#E1BEE7")), ("GRID", (0,0), (-1,-1), 0.5, PURPLE), ("VALIGN", (0,0), (-1,-1), "MIDDLE"), ("TOPPADDING", (0,0), (-1,-1), 6), ("BOTTOMPADDING", (0,0), (-1,-1), 6), ("LEFTPADDING", (0,0), (-1,-1), 7), ("FONTNAME", (0,0), (-1,0), "Helvetica-Bold"), ("FONTSIZE", (0,0), (-1,-1), 9), ])) story.append(KeepTogether([sec(" NATIONAL STRATEGIC PLANS", PURPLE), nsp_tbl])) story.append(sp(10)) # ───────────────────────────────────────────────────────────────────────────── # CHALLENGES & EXAM TIPS # ───────────────────────────────────────────────────────────────────────────── left_content = [ sec(" CHALLENGES", RED), sp(2), bullet_item("<b>India carries ~27%</b> of global TB burden", bullet), bullet_item("<b>Private sector under-reporting</b> — majority of TB patients first seen privately", bullet), bullet_item("<b>TB co-morbidities</b> — diabetes, HIV, malnutrition", bullet), bullet_item("<b>Drug resistance</b> — significant MDR-TB and XDR-TB burden", bullet), bullet_item("<b>Social determinants</b> — poverty, overcrowding, indoor air pollution", bullet), bullet_item("<b>2025 target gap</b> — 2024 incidence 153/lakh vs target 42/lakh", bullet), ] tip_style = ParagraphStyle("Tip", fontName="Helvetica", fontSize=9, leading=12.5, textColor=GREY_DARK, leftIndent=12, firstLineIndent=-10, spaceAfter=3) right_content = [ sec(" EXAM TIPS", HexColor("#F57F17")), sp(2), Paragraph("&#9733; NTEP renamed from RNTCP in <b>2020</b>", tip_style), Paragraph("&#9733; India target: <b>2025</b> (global SDG: <b>2030</b>)", tip_style), Paragraph("&#9733; 4 pillars: <b>D-T-P-B</b>", tip_style), Paragraph("&#9733; 5 org levels: National→State→District→Sub-district→PHI", tip_style), Paragraph("&#9733; NPY: <b>₹500/month DBT</b> — launched April 2018", tip_style), Paragraph("&#9733; PMTBMBA: <b>9 Sept 2022</b> — President launched", tip_style), Paragraph("&#9733; CBNAAT: <b>1,180 labs</b>; TrueNAT for peripheral", tip_style), Paragraph("&#9733; TU = key sub-district level innovation", tip_style), ] two_col = Table( [[left_content, right_content]], colWidths=[8.3*cm, 8.4*cm] ) two_col.setStyle(TableStyle([ ("VALIGN", (0,0), (-1,-1), "TOP"), ("LEFTPADDING", (0,0), (-1,-1), 0), ("RIGHTPADDING",(0,0), (-1,-1), 4), ])) story.append(two_col) story.append(sp(10)) # ───────────────────────────────────────────────────────────────────────────── # FOOTER NOTE # ───────────────────────────────────────────────────────────────────────────── footer_data = [[Paragraph( "Source: Park's Textbook of Preventive &amp; Social Medicine (26th ed.) | DGHS-MoHFW NTEP Portal | NSP 2020-25 | PMC Review (PMID: 9672688) | Prepared by Orris Medical", small )]] footer_tbl = Table(footer_data, colWidths=[W - 3.6*cm]) footer_tbl.setStyle(TableStyle([ ("BACKGROUND", (0,0), (-1,-1), GREY_LIGHT), ("TOPPADDING", (0,0), (-1,-1), 6), ("BOTTOMPADDING", (0,0), (-1,-1), 6), ("LEFTPADDING", (0,0), (-1,-1), 8), ("BOX", (0,0), (-1,-1), 0.5, GREY_MID), ])) story.append(footer_tbl) # ───────────────────────────────────────────────────────────────────────────── # BUILD # ───────────────────────────────────────────────────────────────────────────── doc.build(story) print("PDF created successfully!") EOF

Your NTEP revision PDF is ready! Here is the download link:

NTEP Revision

PDF Document · PDF


What's inside the PDF:
SectionContent
Quick FactsRenamed year, India's target, global burden, nodal body, DTPB pillars
SDG Targets TableBaseline 2015 vs 2024 status vs 2025 goal for incidence, mortality, costs
Organizational StructureAll 5 levels with key personnel and functions
Four Pillars (DTPB)Color-coded blocks for Detect, Treat, Prevent, Build - each with bullet points
Key SchemesNi-kshay, NPY, PMTBMBA, CBNAAT/TrueNAT, FDC regimen, TPT, DRS
Evolution Timeline1962 → 2030 with color-coded milestones
National Strategic PlansNSP 2017-25 vs NSP 2020-25 comparison
ChallengesReal barriers to elimination
Exam TipsHigh-yield facts with dates and numbers to memorize
This is a shared conversation. Sign in to Orris to start your own chat.