I am currently preparing for neet pg i have only 50 days left and i have done 1 read that too not so confident and i am 2018 batch help me go through this rough phase
NEET PG 2026 exam date syllabus high yield topics last 50 days strategy
NEET PG preparation strategy 2018 batch repeater high yield subjects 2026
https://www.prepladder.com/neet-pg-study-material/preparatio…
| Subject | ~Questions | Days to Allocate |
|---|---|---|
| Surgery | ~23 | 4-5 days |
| Medicine | ~21 | 4-5 days |
| OBG | ~19 | 3-4 days |
| Subject | Days |
|---|---|
| Pathology | 3 days |
| Pharmacology | 3 days |
| PSM/Community Medicine | 3 days |
| Microbiology | 2 days |
| Anatomy + Physiology + Biochemistry | 2 days each |
| Time | Activity |
|---|---|
| 6:00 - 7:00 AM | Rapid revision of previous day's one-liners |
| 7:00 - 11:00 AM | Main subject study (new material) |
| 11:00 AM - 12:00 PM | PYQs from the subject just studied |
| 12:00 - 1:00 PM | Break + eat |
| 1:00 - 4:00 PM | Second subject or continuation |
| 4:00 - 5:00 PM | Quick-win subject revision |
| 5:00 - 6:00 PM | Break, walk, NO screen |
| 6:00 - 9:00 PM | Mock test OR previous year paper |
| 9:00 - 10:00 PM | Mistake analysis + notes |
| 10:00 PM onward | Sleep (non-negotiable) |
Create a detailed 50-day study schedule with specific topics
mkdir -p /home/daytona/workspace/neet-pg-schedule && ls /home/daytona/workspace/…
Create a detailed 50-day study schedule with specific topics
~/neet-pg-schedule/generate.js
const pptxgen = require("pptxgenjs");
const pres = new pptxgen();
pres.layout = "LAYOUT_WIDE"; // 13.3" x 7.5"
pres.title = "NEET PG 2026 - 50 Day Study Schedule";
// ── COLOUR PALETTE ──────────────────────────────────────────────
const C = {
navy: "0A1628", // dominant dark bg
deepblue:"112244", // card bg
teal: "0D7377", // accent / phase header
gold: "F5A623", // highlight / day number
white: "FFFFFF",
offwhite:"E8EDF5",
mint: "14A085",
red: "E05C5C",
grey: "8A9BBF",
lightblue:"C5D8F0",
phase1: "1A6B3C", // Phase 1 green
phase2: "0D5C8A", // Phase 2 blue
phase3: "7A3B8A", // Phase 3 purple
phase4: "B5450B", // Phase 4 orange
};
// ── HELPERS ──────────────────────────────────────────────────────
function bgRect(slide, color) {
slide.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 13.3, h: 7.5, fill: { color } });
}
function addSlideHeader(slide, phase, phaseColor, title, subtitle) {
// top strip
slide.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 13.3, h: 1.1, fill: { color: phaseColor } });
slide.addText(phase, { x: 0.3, y: 0.05, w: 3, h: 0.5, fontSize: 11, color: C.white, bold: true, charSpacing: 3 });
slide.addText(title, { x: 0.3, y: 0.52, w: 9, h: 0.55, fontSize: 22, color: C.white, bold: true });
if (subtitle) slide.addText(subtitle, { x: 0.3, y: 0.0, w: 13, h: 1.1, fontSize: 11, color: "FFFFFF88", align: "right", valign: "bottom", margin: 6 });
}
function card(slide, x, y, w, h, color) {
slide.addShape(pres.ShapeType.roundRect, {
x, y, w, h,
fill: { color },
line: { color: "FFFFFF22", width: 0.5 },
rectRadius: 0.08,
});
}
function dayCard(slide, x, y, w, h, dayNum, date, subject, topics, accentColor) {
card(slide, x, y, w, h, C.deepblue);
// left accent bar
slide.addShape(pres.ShapeType.rect, { x, y: y + 0.04, w: 0.07, h: h - 0.08, fill: { color: accentColor } });
// day number
slide.addText(`Day ${dayNum}`, { x: x + 0.12, y: y + 0.06, w: w - 0.2, h: 0.28, fontSize: 10, bold: true, color: accentColor });
// date
slide.addText(date, { x: x + 0.12, y: y + 0.32, w: w - 0.2, h: 0.2, fontSize: 8, color: C.grey });
// subject
slide.addText(subject, { x: x + 0.12, y: y + 0.52, w: w - 0.2, h: 0.22, fontSize: 9, bold: true, color: C.white });
// topics
const topicLines = topics.map(t => ({ text: "• " + t, options: { breakLine: true, fontSize: 7.5, color: C.lightblue } }));
if (topicLines.length) topicLines[topicLines.length - 1].options.breakLine = false;
slide.addText(topicLines, { x: x + 0.12, y: y + 0.75, w: w - 0.2, h: h - 0.85, valign: "top" });
}
// ── DATE HELPER ───────────────────────────────────────────────────
function dateStr(dayOffset) {
const start = new Date("2026-07-12");
start.setDate(start.getDate() + dayOffset);
return start.toLocaleDateString("en-IN", { day: "2-digit", month: "short" });
}
// ── SCHEDULE DATA ─────────────────────────────────────────────────
// Phase 1: Days 1-10 PYQ Sprint + Orientation
// Phase 2: Days 11-35 Subject Revision
// Phase 3: Days 36-45 Mock Test Mode
// Phase 4: Days 46-50 Final Blitz
const schedule = [
// ── PHASE 1: Days 1-10 ───────────────────────────────────────────
{ day:1, subject:"PYQ Sprint", topics:["NEET PG 2025 full paper","Identify weak zones","Make mistake log","Target: 180 Qs"] },
{ day:2, subject:"PYQ Sprint", topics:["NEET PG 2024 full paper","Categorise errors by subject","Review explanations"] },
{ day:3, subject:"PYQ Sprint", topics:["NEET PG 2023 full paper","Pattern recognition","Note repeated themes"] },
{ day:4, subject:"PYQ Sprint", topics:["NEET PG 2022 full paper","High-repeat question list","Drug of choice PYQs"] },
{ day:5, subject:"PYQ Sprint", topics:["NEET PG 2021 full paper","Integrated/clinical Qs","PSM + Pathology PYQs"] },
{ day:6, subject:"PYQ Analysis", topics:["Compile personal weak-zone list","Subject-wise error %","Plan remaining 44 days","Set daily targets"] },
{ day:7, subject:"Quick Win Subjects I",topics:["Ophthalmology: Glaucoma, Retinal detachment","Diabetic retinopathy grading","Squint classification","Uveitis types"] },
{ day:8, subject:"Quick Win Subjects II",topics:["ENT: Cholesteatoma / CSOM","Rinne & Weber tests","Otosclerosis","Tracheostomy indications"] },
{ day:9, subject:"Quick Win Subjects III",topics:["Dermatology: Pemphigus vs Pemphigoid","Psoriasis treatment","Hansen's Ridley-Jopling","SJS / TEN"] },
{ day:10, subject:"Quick Win Subjects IV",topics:["Forensic: Rigor mortis timelines","Medico-legal wounds","Poisons - organophosphate","Thanatology basics"] },
// ── PHASE 2: Days 11-35 ──────────────────────────────────────────
// Surgery block
{ day:11, subject:"Surgery I", topics:["Fluid & electrolytes","Parkland formula (burns)","Shock types & management","Blood transfusion reactions"] },
{ day:12, subject:"Surgery II", topics:["Thyroid: carcinoma types, RLN injury","Parathyroid disorders","Adrenal tumors","MEN syndromes"] },
{ day:13, subject:"Surgery III", topics:["Hernia: types, mesh repair, complications","Intestinal obstruction","Acute abdomen workup","Appendicitis scoring"] },
{ day:14, subject:"Surgery IV", topics:["Colorectal cancer: Duke's vs TNM","IBD - surgical indications","Hemorrhoids: grades & treatment","Fistula-in-ano Parks classification"] },
{ day:15, subject:"Surgery V", topics:["Breast cancer: staging, SLNB, ALND","Lymph node workup","Mastectomy types","Chemotherapy indications"] },
// Medicine block
{ day:16, subject:"Medicine I", topics:["WHO Hypertension 2024 guidelines","JNC stages","Anti-hypertensives: class + indication","Drug contraindications in HTN"] },
{ day:17, subject:"Medicine II", topics:["Heart failure: HFrEF vs HFpEF","NYHA classification","GDMT drugs (ACEi/ARNi/BB/MRA)","Acute decompensated HF"] },
{ day:18, subject:"Medicine III", topics:["IHD: ACS - STEMI vs NSTEMI","Thrombolysis criteria","Killip classification","Post-MI complications"] },
{ day:19, subject:"Medicine IV", topics:["Connective tissue diseases: ANA patterns","SLE criteria 2019","Rheumatoid arthritis management","Vasculitis: Chapel Hill 2012"] },
{ day:20, subject:"Medicine V", topics:["Diabetes: ADA 2025 targets","Diabetic nephropathy staging","Neuropathy types","Insulin regimens"] },
{ day:21, subject:"Medicine VI", topics:["Respiratory: COPD GOLD stages","Asthma BTS steps","Interstitial lung diseases","Pleural effusion Light's criteria"] },
// OBG block
{ day:22, subject:"OBG I", topics:["Normal labour: stages, partograph","Bishop score","Fetal monitoring: CTG patterns","Episiotomy types"] },
{ day:23, subject:"OBG II", topics:["Ante-partum hemorrhage: placenta previa, abruption","Postpartum hemorrhage: management","Oxytocics: methylergometrine CI in HTN","4 Ts of PPH"] },
{ day:24, subject:"OBG III", topics:["Pre-eclampsia & eclampsia","Magnesium toxicity values","HELLP syndrome","Hypertensive disorders classification"] },
{ day:25, subject:"OBG IV", topics:["PCOS: Rotterdam criteria","Infertility workup","Ovulation induction","Endometriosis staging"] },
{ day:26, subject:"OBG V", topics:["Cervical cancer: FIGO staging","HPV vaccines","Colposcopy indications","Carcinoma endometrium"] },
// Pathology block
{ day:27, subject:"Pathology I", topics:["Neoplasia: tumor markers complete list","Grading vs Staging","Paraneoplastic syndromes","Carcinogenesis mechanisms"] },
{ day:28, subject:"Pathology II", topics:["Hematological malignancies: ALL vs AML (Auer rods)","CML: Philadelphia chromosome","CLL: smudge cells","Lymphomas: Hodgkin vs NHL"] },
{ day:29, subject:"Pathology III", topics:["Glomerulonephritis: nephrotic vs nephritic","Histopath: minimal change, FSGS, MPGN","IgA nephropathy","Diabetic nephropathy (Kimmelstiel-Wilson)"] },
// Pharmacology block
{ day:30, subject:"Pharmacology I", topics:["Drug of choice master list (all systems)","Drugs contraindicated in pregnancy","Teratogenic drugs","Antimicrobials: DOC table"] },
{ day:31, subject:"Pharmacology II", topics:["CNS drugs: antiepileptics, antipsychotics","Status epilepticus protocol","Parkinsons drugs: MOA","Antidepressants: classification"] },
{ day:32, subject:"Pharmacology III", topics:["Cardiovascular drugs: anti-arrhythmics Vaughan-Williams","Anticoagulants: heparin, warfarin, DOACs","Antihypertensives: new guidelines","Lipid-lowering agents"] },
// PSM / Community Medicine block
{ day:33, subject:"PSM I", topics:["National Health Programs: RNTCP, NVBDCP, NPCDCS","Universal Immunisation Programme 2024 schedule","Cold chain: equipment & break-points","Surveillance systems"] },
{ day:34, subject:"PSM II", topics:["Epidemiology: attack rate, R0, herd immunity","Sensitivity, Specificity, PPV, NPV","NNT, NNH, Odds ratio, RR","Screening criteria Wilson-Jungner"] },
{ day:35, subject:"PSM III + Micro", topics:["NFHS-5 key indicators: IMR, MMR, TFR","MCH indicators","Microbiology: bacterial toxins","Viral hepatitis serology markers","STI management"] },
// ── PHASE 3: Days 36-45 ──────────────────────────────────────────
{ day:36, subject:"MOCK TEST #1", topics:["Full 180-question timed mock","210 minutes strict timing","Log every wrong answer","Subject-wise score analysis"] },
{ day:37, subject:"Mock 1 Review", topics:["Deep-dive all wrong answers","Make 2-line notes per error","Identify top 3 weak areas","Plan mock 2 accordingly"] },
{ day:38, subject:"MOCK TEST #2", topics:["Full 180-question timed mock","Focus on weak areas identified","Note pattern of errors","Target: 125+"] },
{ day:39, subject:"Mock 2 Review + Anatomy/Physio",topics:["Review mock errors","Anatomy: neuroanatomy high-yield","Embryology: pharyngeal arches","Physiology: renal, cardiac, respiratory"] },
{ day:40, subject:"MOCK TEST #3", topics:["Full 180-question timed mock","Improve time management","Clinical vignette strategy","Target: 130+"] },
{ day:41, subject:"Mock 3 Review + Biochemistry",topics:["Review mock errors","Biochemistry: enzyme deficiencies","Lysosomal storage disorders","Porphyrias, PKU, homocystinuria"] },
{ day:42, subject:"MOCK TEST #4", topics:["Full 180-question timed mock","Integrated question focus","Reasoning-based approach","Target: 135+"] },
{ day:43, subject:"Mock 4 Review + Paediatrics",topics:["Review mock errors","Paediatrics: developmental milestones","Vaccination schedule","Neonatal emergencies","Growth charts"] },
{ day:44, subject:"MOCK TEST #5", topics:["Full 180-question timed mock","All subject coverage","Time per section: 42 min","Target: 140+"] },
{ day:45, subject:"Mock 5 Review + Psychiatry/Ortho",topics:["Review mock errors","Psychiatry: ICD-11 criteria","Orthopaedics: fracture management","Compartment syndrome"] },
// ── PHASE 4: Days 46-50 ──────────────────────────────────────────
{ day:46, subject:"Final Blitz I", topics:["Revise personal mistake notes (all mocks)","Drug of choice rapid fire","Contraindicated drugs list","One-liners: Surgery + Medicine"] },
{ day:47, subject:"Final Blitz II", topics:["OBG + Pathology one-liners","PSM key numbers: NFHS-5","National programs last revision","Recent guidelines: WHO HTN, ADA 2025"] },
{ day:48, subject:"Final Blitz III", topics:["Pharmacology DOC list","Short subjects rapid recall","Ophtho + ENT + Derma one-liners","Forensic + Radiology key facts"] },
{ day:49, subject:"Light Revision Only",topics:["Only YOUR notes - no new material","High-confidence topics only","Positive reinforcement review","Sleep by 10 PM - mandatory"] },
{ day:50, subject:"EXAM EVE", topics:["No heavy study today","Light read of one-liners","Prep documents, ID, admit card","Sleep 7-8 hours - NON-NEGOTIABLE"] },
];
// Phase colour map
function phaseAccent(day) {
if (day <= 10) return C.mint;
if (day <= 35) return C.gold;
if (day <= 45) return "#A855F7";
return C.red;
}
function phaseLabel(day) {
if (day <= 10) return "PHASE 1 - PYQ SPRINT";
if (day <= 35) return "PHASE 2 - SUBJECT REVISION";
if (day <= 45) return "PHASE 3 - MOCK TEST MODE";
return "PHASE 4 - FINAL BLITZ";
}
function phaseColor(day) {
if (day <= 10) return "1A5C3A";
if (day <= 35) return "0D4F7A";
if (day <= 45) return "5A2D82";
return "8B2500";
}
// ── SLIDE 1: COVER ────────────────────────────────────────────────
{
const s = pres.addSlide();
bgRect(s, C.navy);
// big accent bar left
s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 0.5, h: 7.5, fill: { color: C.teal } });
// decorative circles
s.addShape(pres.ShapeType.ellipse, { x: 9.5, y: -1.2, w: 5, h: 5, fill: { color: "0D3355" }, line: { type: "none" } });
s.addShape(pres.ShapeType.ellipse, { x: 10.5, y: 4.5, w: 3.5, h: 3.5, fill: { color: "0A2845" }, line: { type: "none" } });
s.addText("NEET PG 2026", { x: 0.9, y: 1.2, w: 9, h: 0.9, fontSize: 38, bold: true, color: C.white, charSpacing: 4 });
s.addText("50-DAY MASTER STUDY SCHEDULE", { x: 0.9, y: 2.1, w: 10, h: 0.65, fontSize: 24, bold: true, color: C.gold, charSpacing: 2 });
s.addText("Exam Date: August 30, 2026 • Start: July 12, 2026", { x: 0.9, y: 2.85, w: 10, h: 0.4, fontSize: 13, color: C.grey });
// Phase legend boxes
const phases = [
{ label: "Phase 1", sub: "Days 1-10 | PYQ Sprint", color: C.mint },
{ label: "Phase 2", sub: "Days 11-35 | Subject Revision", color: C.gold },
{ label: "Phase 3", sub: "Days 36-45 | Mock Test Mode", color: "A855F7" },
{ label: "Phase 4", sub: "Days 46-50 | Final Blitz", color: C.red },
];
phases.forEach((p, i) => {
const x = 0.9 + i * 3.0;
s.addShape(pres.ShapeType.roundRect, { x, y: 3.6, w: 2.7, h: 0.9, fill: { color: C.deepblue }, rectRadius: 0.1, line: { color: p.color, width: 1.5 } });
s.addText(p.label, { x: x + 0.15, y: 3.65, w: 2.4, h: 0.3, fontSize: 11, bold: true, color: p.color });
s.addText(p.sub, { x: x + 0.15, y: 3.93, w: 2.4, h: 0.35, fontSize: 8, color: C.offwhite });
});
// Daily schedule strip
s.addShape(pres.ShapeType.roundRect, { x: 0.9, y: 4.75, w: 11.5, h: 1.85, fill: { color: C.deepblue }, rectRadius: 0.12, line: { color: C.teal, width: 1 } });
s.addText("DAILY SCHEDULE TEMPLATE", { x: 1.1, y: 4.88, w: 5, h: 0.3, fontSize: 9, bold: true, color: C.teal, charSpacing: 2 });
const slots = [
"06:00 - 07:00 Rapid recall from yesterday",
"07:00 - 11:00 Main subject study",
"11:00 - 12:00 PYQs on today's subject",
"13:00 - 16:00 Second subject / continuation",
"16:00 - 17:00 Quick-win subject",
"18:00 - 21:00 Mock test / PYQ paper",
"21:00 - 22:00 Error analysis + notes",
"22:00+ Sleep (7 hrs minimum)",
];
const col1 = slots.slice(0, 4);
const col2 = slots.slice(4);
col1.forEach((t, i) => s.addText("• " + t, { x: 1.1, y: 5.22 + i * 0.26, w: 5.5, h: 0.25, fontSize: 8, color: C.lightblue }));
col2.forEach((t, i) => s.addText("• " + t, { x: 6.9, y: 5.22 + i * 0.26, w: 5.2, h: 0.25, fontSize: 8, color: C.lightblue }));
}
// ── SLIDE 2: HOW TO USE ───────────────────────────────────────────
{
const s = pres.addSlide();
bgRect(s, C.navy);
addSlideHeader(s, "OVERVIEW", C.teal, "How to Use This Schedule", "Read before Day 1");
const tips = [
{ icon: "📌", head: "PYQs First (Days 1-6)", body: "Solve 5 years of NEET PG papers before anything else. Every wrong answer tells you where to spend your next 44 days." },
{ icon: "⚡", head: "30% Questions Repeat", body: "NEET PG has a ~30% repeat rate from previous years. Mastering PYQs is your single highest ROI activity." },
{ icon: "🎯", head: "Prioritise by Weight", body: "Surgery (~23 Qs), Medicine (~21 Qs), OBG (~19 Qs) = top 3 subjects. Never skip these regardless of confidence." },
{ icon: "📝", head: "Mock = Learning Tool", body: "Phase 3 mocks are not tests — they are study sessions. Spend equal time on analysis as the test itself." },
{ icon: "🚫", head: "No New Topics After Day 47", body: "Anything you start after Day 47 will add anxiety, not marks. Trust your preparation." },
{ icon: "😴", head: "Sleep is Non-Negotiable", body: "Memory consolidation happens during sleep. 7 hours minimum every night, especially in the last week." },
];
tips.forEach((t, i) => {
const col = i % 2;
const row = Math.floor(i / 2);
const x = 0.4 + col * 6.3;
const y = 1.35 + row * 1.85;
card(s, x, y, 6.0, 1.65, C.deepblue);
s.addText(t.icon + " " + t.head, { x: x + 0.2, y: y + 0.15, w: 5.6, h: 0.35, fontSize: 12, bold: true, color: C.gold });
s.addText(t.body, { x: x + 0.2, y: y + 0.52, w: 5.6, h: 1.0, fontSize: 9.5, color: C.offwhite, wrap: true });
});
}
// ── SLIDE 3: SUBJECT WEIGHTAGE ────────────────────────────────────
{
const s = pres.addSlide();
bgRect(s, C.navy);
addSlideHeader(s, "REFERENCE", C.teal, "Subject Weightage & Allocation", "NEET PG 2026 pattern");
const subjects = [
{ name: "Surgery", qs: 23, days: 5, color: "E05C5C" },
{ name: "Medicine", qs: 21, days: 6, color: "F5A623" },
{ name: "OBG", qs: 19, days: 5, color: "A855F7" },
{ name: "Pathology", qs: 16, days: 3, color: "14A085" },
{ name: "Pharmacology", qs: 15, days: 3, color: "0D7377" },
{ name: "PSM / Community", qs: 14, days: 3, color: "3B82F6" },
{ name: "Microbiology", qs: 12, days: 2, color: "F472B6" },
{ name: "Paediatrics", qs: 10, days: 1, color: "34D399" },
{ name: "Biochemistry", qs: 9, days: 1, color: "FBBF24" },
{ name: "Anatomy", qs: 8, days: 1, color: "60A5FA" },
{ name: "Physiology", qs: 8, days: 1, color: "A78BFA" },
{ name: "Quick-Win (7 sub)",qs: 25, days: 7, color: "6EE7B7" },
];
subjects.forEach((sub, i) => {
const col = i % 2;
const row = Math.floor(i / 2);
const x = 0.4 + col * 6.3;
const y = 1.3 + row * 0.9;
card(s, x, y, 6.0, 0.82, C.deepblue);
// colour dot
s.addShape(pres.ShapeType.ellipse, { x: x + 0.18, y: y + 0.3, w: 0.22, h: 0.22, fill: { color: sub.color } });
s.addText(sub.name, { x: x + 0.52, y: y + 0.12, w: 3.5, h: 0.58, fontSize: 11, bold: true, color: C.white, valign: "middle" });
// bar
const maxW = 1.6;
const barW = Math.max(0.15, (sub.qs / 23) * maxW);
s.addShape(pres.ShapeType.rect, { x: x + 4.1, y: y + 0.28, w: maxW, h: 0.25, fill: { color: "1E3A5F" } });
s.addShape(pres.ShapeType.rect, { x: x + 4.1, y: y + 0.28, w: barW, h: 0.25, fill: { color: sub.color } });
s.addText(`~${sub.qs} Qs | ${sub.days}d`, { x: x + 3.8, y: y + 0.56, w: 1.8, h: 0.2, fontSize: 7.5, color: C.grey, align: "right" });
});
}
// ── SLIDES 4-13: PHASE 1 (Days 1-10, one slide per 2 days) ────────
// Group days in pairs per slide: [1,2], [3,4], [5,6], [7,8], [9,10]
for (let pair = 0; pair < 5; pair++) {
const s = pres.addSlide();
bgRect(s, C.navy);
const d1 = schedule[pair * 2];
const d2 = schedule[pair * 2 + 1];
const accent = phaseAccent(d1.day);
const pLabel = phaseLabel(d1.day);
const pColor = phaseColor(d1.day);
addSlideHeader(s, pLabel, pColor, `Days ${d1.day} & ${d2.day}`, `${dateStr(d1.day - 1)} – ${dateStr(d2.day - 1)}`);
[[d1, 0.4], [d2, 6.75]].forEach(([d, x]) => {
card(s, x, 1.25, 6.15, 5.9, C.deepblue);
s.addShape(pres.ShapeType.rect, { x, y: 1.29, w: 0.08, h: 5.82, fill: { color: accent } });
s.addText(`DAY ${d.day}`, { x: x + 0.22, y: 1.32, w: 2, h: 0.36, fontSize: 16, bold: true, color: accent, charSpacing: 2 });
s.addText(dateStr(d.day - 1), { x: x + 2.4, y: 1.38, w: 3.5, h: 0.28, fontSize: 10, color: C.grey, align: "right" });
s.addShape(pres.ShapeType.rect, { x: x + 0.22, y: 1.72, w: 5.7, h: 0.03, fill: { color: "FFFFFF22" } });
s.addText(d.subject, { x: x + 0.22, y: 1.82, w: 5.7, h: 0.4, fontSize: 13, bold: true, color: C.white });
d.topics.forEach((t, ti) => {
s.addText("▸ " + t, { x: x + 0.22, y: 2.32 + ti * 0.78, w: 5.7, h: 0.7, fontSize: 10, color: C.lightblue, wrap: true });
});
});
}
// ── SLIDES 14-38: PHASE 2 (Days 11-35, one slide per 2 days) ──────
for (let pair = 0; pair < 13; pair++) {
const s = pres.addSlide();
bgRect(s, C.navy);
const idx1 = 10 + pair * 2;
const idx2 = 10 + pair * 2 + 1;
const d1 = schedule[idx1];
const d2 = schedule[Math.min(idx2, 34)];
const accent = phaseAccent(d1.day);
const pLabel = phaseLabel(d1.day);
const pColor = phaseColor(d1.day);
addSlideHeader(s, pLabel, pColor, `Days ${d1.day}${idx2 <= 34 ? " & " + d2.day : ""}`, `${dateStr(d1.day - 1)}${idx2 <= 34 ? " – " + dateStr(d2.day - 1) : ""}`);
const pairs = idx2 <= 34 ? [[d1, 0.4], [d2, 6.75]] : [[d1, 3.2]];
pairs.forEach(([d, x]) => {
const w = idx2 <= 34 ? 6.15 : 6.9;
card(s, x, 1.25, w, 5.9, C.deepblue);
s.addShape(pres.ShapeType.rect, { x, y: 1.29, w: 0.08, h: 5.82, fill: { color: accent } });
s.addText(`DAY ${d.day}`, { x: x + 0.22, y: 1.32, w: 2, h: 0.36, fontSize: 16, bold: true, color: accent, charSpacing: 2 });
s.addText(dateStr(d.day - 1), { x: x + 2.4, y: 1.38, w: w - 0.65, h: 0.28, fontSize: 10, color: C.grey, align: "right" });
s.addShape(pres.ShapeType.rect, { x: x + 0.22, y: 1.72, w: w - 0.45, h: 0.03, fill: { color: "FFFFFF22" } });
s.addText(d.subject, { x: x + 0.22, y: 1.82, w: w - 0.45, h: 0.4, fontSize: 13, bold: true, color: C.white });
d.topics.forEach((t, ti) => {
s.addText("▸ " + t, { x: x + 0.22, y: 2.32 + ti * 0.82, w: w - 0.45, h: 0.75, fontSize: 10, color: C.lightblue, wrap: true });
});
});
}
// ── SLIDES 39-43: PHASE 3 (Days 36-45, 2 days per slide) ──────────
for (let pair = 0; pair < 5; pair++) {
const s = pres.addSlide();
bgRect(s, C.navy);
const idx1 = 35 + pair * 2;
const idx2 = 35 + pair * 2 + 1;
const d1 = schedule[idx1];
const d2 = schedule[idx2];
const accent = phaseAccent(d1.day);
const pLabel = phaseLabel(d1.day);
const pColor = phaseColor(d1.day);
addSlideHeader(s, pLabel, pColor, `Days ${d1.day} & ${d2.day}`, `${dateStr(d1.day - 1)} – ${dateStr(d2.day - 1)}`);
[[d1, 0.4], [d2, 6.75]].forEach(([d, x]) => {
card(s, x, 1.25, 6.15, 5.9, C.deepblue);
s.addShape(pres.ShapeType.rect, { x, y: 1.29, w: 0.08, h: 5.82, fill: { color: accent } });
s.addText(`DAY ${d.day}`, { x: x + 0.22, y: 1.32, w: 2, h: 0.36, fontSize: 16, bold: true, color: accent, charSpacing: 2 });
s.addText(dateStr(d.day - 1), { x: x + 2.4, y: 1.38, w: 3.5, h: 0.28, fontSize: 10, color: C.grey, align: "right" });
s.addShape(pres.ShapeType.rect, { x: x + 0.22, y: 1.72, w: 5.7, h: 0.03, fill: { color: "FFFFFF22" } });
s.addText(d.subject, { x: x + 0.22, y: 1.82, w: 5.7, h: 0.4, fontSize: 13, bold: true, color: C.white });
d.topics.forEach((t, ti) => {
s.addText("▸ " + t, { x: x + 0.22, y: 2.32 + ti * 0.78, w: 5.7, h: 0.7, fontSize: 10, color: C.lightblue, wrap: true });
});
});
}
// ── SLIDE 44-45: PHASE 4 (Days 46-50, 3+2 days) ──────────────────
{
// Days 46, 47, 48 on one slide (3-column)
const s = pres.addSlide();
bgRect(s, C.navy);
addSlideHeader(s, phaseLabel(46), phaseColor(46), "Days 46, 47 & 48", `${dateStr(45)} – ${dateStr(47)}`);
[schedule[45], schedule[46], schedule[47]].forEach((d, i) => {
const x = 0.35 + i * 4.2;
card(s, x, 1.25, 4.0, 5.9, C.deepblue);
s.addShape(pres.ShapeType.rect, { x, y: 1.29, w: 0.08, h: 5.82, fill: { color: C.red } });
s.addText(`DAY ${d.day}`, { x: x + 0.18, y: 1.32, w: 2, h: 0.36, fontSize: 14, bold: true, color: C.red, charSpacing: 2 });
s.addText(dateStr(d.day - 1), { x: x + 2.1, y: 1.38, w: 1.6, h: 0.28, fontSize: 9, color: C.grey, align: "right" });
s.addShape(pres.ShapeType.rect, { x: x + 0.18, y: 1.72, w: 3.6, h: 0.03, fill: { color: "FFFFFF22" } });
s.addText(d.subject, { x: x + 0.18, y: 1.82, w: 3.6, h: 0.45, fontSize: 11, bold: true, color: C.white, wrap: true });
d.topics.forEach((t, ti) => {
s.addText("▸ " + t, { x: x + 0.18, y: 2.38 + ti * 0.82, w: 3.6, h: 0.75, fontSize: 9.5, color: C.lightblue, wrap: true });
});
});
}
{
// Days 49 & 50 on final slide
const s = pres.addSlide();
bgRect(s, C.navy);
addSlideHeader(s, phaseLabel(49), phaseColor(49), "Days 49 & 50 — The Final Stretch", `${dateStr(48)} – ${dateStr(49)}`);
[[schedule[48], 0.4], [schedule[49], 6.75]].forEach(([d, x]) => {
card(s, x, 1.25, 6.15, 4.5, C.deepblue);
s.addShape(pres.ShapeType.rect, { x, y: 1.29, w: 0.08, h: 4.42, fill: { color: C.red } });
s.addText(`DAY ${d.day}`, { x: x + 0.22, y: 1.32, w: 2, h: 0.36, fontSize: 16, bold: true, color: C.red, charSpacing: 2 });
s.addText(dateStr(d.day - 1), { x: x + 2.4, y: 1.38, w: 3.5, h: 0.28, fontSize: 10, color: C.grey, align: "right" });
s.addShape(pres.ShapeType.rect, { x: x + 0.22, y: 1.72, w: 5.7, h: 0.03, fill: { color: "FFFFFF22" } });
s.addText(d.subject, { x: x + 0.22, y: 1.82, w: 5.7, h: 0.4, fontSize: 13, bold: true, color: C.white });
d.topics.forEach((t, ti) => {
s.addText("▸ " + t, { x: x + 0.22, y: 2.32 + ti * 0.62, w: 5.7, h: 0.56, fontSize: 10, color: C.lightblue, wrap: true });
});
});
// Motivation footer
s.addShape(pres.ShapeType.roundRect, { x: 0.4, y: 5.95, w: 12.5, h: 1.2, fill: { color: "0D4F3A" }, rectRadius: 0.12, line: { color: C.mint, width: 1.5 } });
s.addText("You have done the work. Trust your preparation. Walk in, read carefully, reason clinically. The seat is yours. 🏆", {
x: 0.6, y: 5.98, w: 12.1, h: 1.12, fontSize: 13, bold: true, color: C.white, align: "center", valign: "middle"
});
}
// ── WRITE FILE ────────────────────────────────────────────────────
pres.writeFile({ fileName: "/home/daytona/workspace/neet-pg-schedule/NEET_PG_2026_50Day_Schedule.pptx" })
.then(() => console.log("✅ File written successfully"))
.catch(e => { console.error("❌ Error:", e); process.exit(1); });
Failed to create session: bad request: failed to resolve container IP after 3 attempts: no IP address found. Is the Sandbox started?
We encountered an error while processing your request. Please try again or reach out to us for help.
Can you give me a detailed list of pyts of all 19 subjects to prepare for my neet pg
NEET PG previous year questions high yield topics all 19 subjects 2021 2022 2023 2024 2025
NEET PG subject wise important topics from previous year papers Surgery Medicine OBG Pathology Pharmacology
https://www.medexamsprep.com/blog/neet-pg-2025-paper-analysi…