Most commonly used kit and equipment of microbiology on Viva
microbiology lab equipment kit viva questions principles uses
https://microbenotes.com/instruments-used-in-microbiology-la…
| Type | Principle | Use in Microbiology |
|---|---|---|
| Light (Brightfield) | Transmitted visible light | Routine staining (Gram, ZN) |
| Darkfield | Oblique light, no direct illumination | Treponema pallidum, spirochetes |
| Phase Contrast | Refractive index difference | Unstained living cells |
| Fluorescence | UV excitation of fluorochromes | AFB (auramine), immunofluorescence |
| Electron (TEM/SEM) | Electron beam | Viral morphology, ultrastructure |
| Class | Protection | Used For |
|---|---|---|
| Class I | Personnel + environment | Low-risk organisms |
| Class II A/B | Personnel + product + environment | Most clinical work |
| Class III | Maximum containment | BSL-3/4 organisms |
| Type | Example | Use |
|---|---|---|
| Nutrient / General | Nutrient agar | Most organisms |
| Selective | MacConkey, TCBS | Select specific bacteria |
| Differential | Blood agar, CLED | Differentiate by colony morphology |
| Enriched | Chocolate agar | Fastidious organisms (H. influenzae) |
| Enrichment broth | Selenite F | Isolate pathogens from mixed flora |
| Transport media | Stuart's, VTM | Preserve viability during transit |
| Step | Reagent | Result |
|---|---|---|
| Primary stain | Crystal violet (1 min) | All cells purple |
| Mordant | Gram's iodine (1 min) | Crystal violet-iodine complex |
| Decolorizer | Acetone-alcohol (5-10 sec) | Gram-neg lose color, Gram-pos retain |
| Counterstain | Safranin (1 min) | Gram-neg red/pink |
| Equipment | Temperature | Use |
|---|---|---|
| Refrigerator | 4°C | Short-term storage of media, reagents, specimens |
| -20°C freezer | -20°C | Serum, enzymes, reagents |
| Deep freezer | -70°C to -80°C | Long-term stock cultures, viruses |
| Liquid nitrogen | -196°C | Permanent culture preservation |
| Equipment | Key Temperature / Parameter | Principle |
|---|---|---|
| Autoclave | 121°C, 15 psi, 15-20 min | Moist heat, protein denaturation |
| Hot air oven | 160°C, 2 hrs | Dry heat, oxidation |
| Incubator (bacteria) | 37°C | Temperature control for growth |
| Incubator (fungi) | 25-28°C | Temperature control |
| Deep freezer | -70 to -80°C | Preservation by low temperature |
| Water bath | 37-56°C (variable) | Controlled water temperature |
| Membrane filter | 0.2 µm pore | Physical sieving of bacteria |
| Laminar hood (BSC II) | HEPA filtered | Unidirectional sterile airflow |
Microbiology commonly used equipment and slide and life cycle of organism test kit with pictures and slide with diagram and proper labelling
Detailed scientific diagram of a compound light microscope with clear proper labels pointing to each part: Eyepiece (ocular lens), Body tube, Revolving nosepiece, Objective lenses (4x 10x 40x 100x oil immersion), Stage with stage clips, Diaphragm/iris diaphragm, Condenser, Light source/illuminator, Coarse adjustment knob, Fine adjustment knob, Arm, Base. Clean white background, educational style, blue and black color scheme.
Scientific diagram of an autoclave (pressure steam sterilizer) cross-section with labels: Chamber/vessel, Door with locking mechanism, Pressure gauge, Temperature gauge, Safety valve, Steam inlet, Steam outlet/exhaust, Drain valve, Heating element, Thermometer port, Gasket/seal. Shows steam arrows inside chamber. Educational medical microbiology style, clean white background, blue and grey color scheme.
Scientific diagram showing Gram stain procedure on a glass microscope slide with step-by-step labels: Step 1 - Apply Crystal Violet (primary stain, 1 min) - all bacteria purple; Step 2 - Apply Gram's Iodine (mordant, 1 min) - mordant fixes dye; Step 3 - Decolorize with Acetone-Alcohol (5-10 sec) - Gram-positive stays purple, Gram-negative loses color; Step 4 - Apply Safranin (counterstain, 1 min) - Gram-negative turns pink/red. Show bacterial cells in each step changing color. Bottom shows final result: Gram-positive cocci in purple clusters (Staphylococcus) and Gram-negative rods in pink (E.coli). Educational microbiology style, clear labels, white background.
Detailed life cycle diagram of Ascaris lumbricoides (giant roundworm) showing complete cycle with labels: 1) Embryonated egg in soil (infective stage); 2) Ingestion by human; 3) Egg hatches in small intestine releasing larva; 4) Larva penetrates intestinal wall; 5) Larva migrates via blood to liver; 6) Larva travels to lungs via pulmonary circulation; 7) Larva in lung alveoli (Loeffler's syndrome); 8) Larva coughed up, swallowed; 9) Adult worm in small intestine; 10) Female worm lays 200,000 eggs/day; 11) Fertilized and unfertilized eggs passed in feces to soil. Show human body silhouette with migration path arrows. Educational medical style, clear numbered labels.
Microbiology lab test kit diagram showing commonly used consumables and equipment laid out on a lab bench with labels: 1) Petri dishes (90mm) - bacterial culture; 2) Test tubes with caps; 3) Inoculation loop (wire loop); 4) Straight inoculation needle; 5) Glass slides and coverslips; 6) Disposable syringes and needles; 7) Swab transport system (Stuart's medium); 8) Blood culture bottles (aerobic and anaerobic); 9) McFarland 0.5 turbidity standard; 10) API strips for bacterial identification; 11) Antibiotic sensitivity discs (Kirby-Bauer); 12) Agar plates - Blood agar, MacConkey, CLED; 13) Staining reagents rack (Crystal violet, Iodine, Safranin); 14) Sterile pipettes and tips. Clean white background, professional scientific illustration style with clear numbered labels.
Scientific diagram showing Ziehl-Neelsen (ZN) acid-fast staining procedure with labelled steps: Step 1 - Hot Carbol Fuchsin applied with heating (5 min) - all bacteria red; Step 2 - Decolorize with 20% H2SO4 or 3% HCl-alcohol (3-5 min) - non-AFB lose color; Step 3 - Counterstain with Methylene Blue (1 min) - non-AFB turn blue. Final microscopy result shows: Acid-Fast Bacilli (Mycobacterium tuberculosis) - bright red rods; Background cells - blue. Include labels showing mycolic acid in cell wall mechanism. Educational microbiology viva style, clean background.

| Part | Function |
|---|---|
| Eyepiece (10x) | Magnifies the image from the objective |
| Body tube | Connects eyepiece to nosepiece |
| Revolving nosepiece | Holds and rotates objective lenses |
| Objective lenses | 4x (scanning), 10x (low), 40x (high), 100x (oil immersion) for bacteria |
| Stage + clips | Holds the glass slide |
| Iris diaphragm | Regulates amount of light |
| Condenser | Focuses light onto the specimen |
| Coarse knob | Initial focusing (large movements) |
| Fine knob | Precise sharp focusing |
| Base/Illuminator | Supports microscope, contains light source |


| Item | Purpose | Key Detail |
|---|---|---|
| Petri dishes (90mm) | Solid culture media plates | Disposable; inverted during incubation |
| Inoculation loop (1µL/10µL) | Streaking plates, subculture | Sterilize by flaming (incineration) |
| Straight needle | Stab cultures, picking colonies | |
| Glass slides + coverslips | Smear preparation, wet mount | Clean, grease-free |
| Swab + Stuart's transport | Specimen collection/transport | Maintains viability without growth |
| Blood culture bottles | Aerobic + anaerobic blood culture | Signal growth by CO₂ detection |
| McFarland 0.5 standard | Calibrates bacterial suspension for AST | Equivalent to ~1.5 × 10⁸ CFU/mL |
| Kirby-Bauer discs | Antibiotic sensitivity testing | Zone of inhibition measured in mm |
| API strips | Rapid biochemical identification | 20 biochemical tests in one strip |
| Blood agar, MacConkey, CLED | Differential/selective culture | Differentiate and isolate pathogens |

| Step | Reagent | Time | Result |
|---|---|---|---|
| 1. Primary stain | Crystal violet | 1 min | All bacteria purple |
| 2. Mordant | Gram's iodine | 1 min | Crystal violet-iodine complex forms |
| 3. Decolorize | Acetone-alcohol | 5-10 sec | Gram+ retains purple; Gram- loses color |
| 4. Counterstain | Safranin | 1 min | Gram- turns pink/red |

| Step | Reagent | Condition | Time |
|---|---|---|---|
| 1. Primary stain | Carbol fuchsin | Heat (steaming) | 5 min |
| 2. Decolorize | 20% H₂SO₄ or 3% HCl-alcohol | Room temp | 3-5 min |
| 3. Counterstain | Methylene blue (or malachite green) | Room temp | 1 min |
| Stain | Organism | Color of Organism |
|---|---|---|
| India Ink / Nigrosin | Cryptococcus neoformans capsule | Clear halo on dark background |
| Albert's stain | Corynebacterium diphtheriae (metachromatic granules) | Blue-green rods with dark granules |
| Giemsa stain | Malaria, Leishmania, Borrelia | Violet/purple parasites |
| PAS stain | Fungal cell walls | Magenta/pink |
| Calcofluo white | Fungi (fluorescence) | Bright blue-white under UV |
| Lactophenol cotton blue | Fungi (slide culture) | Blue hyphal structures |

| Phase | Location | Stage | Duration |
|---|---|---|---|
| Exo-erythrocytic (Pre-erythrocytic) | Liver parenchymal cells | Sporozoites → Schizonts → Merozoites | 8-25 days |
| Erythrocytic cycle | Red blood cells | Merozoites → Ring → Trophozoite → Schizont → Merozoites (x16-24) | 48-72 hrs |
| Gametocyte formation | RBCs | Some merozoites → Male/Female gametocytes | - |
| Feature | P. falciparum | P. vivax | P. malariae | P. ovale |
|---|---|---|---|---|
| Fever cycle | 48 hrs (tertian) | 48 hrs (tertian) | 72 hrs (quartan) | 48 hrs |
| Relapse | No | Yes | Recrudescence | Yes |
| Severe malaria | Yes | Rare | No | No |
| RBC infected | Any age | Young (reticulocytes) | Older RBCs | Reticulocytes |


| Feature | Trophozoite | Cyst |
|---|---|---|
| Size | 12-60 µm | 10-20 µm |
| Nuclei | 1 | 1-4 (mature = 4) |
| Motility | Active, unidirectional | None |
| Stool type | Loose/bloody | Formed |
| Ingested RBCs | Present (invasive) | Absent |

SOIL → Embryonated egg (infective)
↓ Ingested
SMALL INTESTINE → Larva hatches from egg
↓ Penetrates intestinal wall
PORTAL BLOOD → Larva migrates to LIVER
↓ Via inferior vena cava
RIGHT HEART → Lungs (pulmonary capillaries → alveoli)
↓ Larva matures in lung (Loeffler's syndrome: eosinophilia + pulmonary infiltrates)
TRACHEA → Larva coughed up to pharynx
↓ Swallowed
SMALL INTESTINE → Adult worm matures (15-35 cm long)
↓ Female lays 200,000 eggs/day
FECES → Eggs passed to soil (need 2-3 weeks in warm moist soil to embryonate)
↓ Embryonated egg is infective
SOIL → (Cycle repeats)
| Feature | Detail |
|---|---|
| Route of infection | Fecal-oral (ingestion of embryonated egg) |
| Infective stage | Embryonated egg (with L2 larva inside) |
| Diagnostic stage | Fertilized/unfertilized eggs in stool, adult worm |
| Lung migration | Causes Loeffler's syndrome (transient eosinophilia + pulmonary infiltrates) |
| Adult worm site | Jejunum of small intestine |
| Egg morphology | Bile-stained, mammilated (bosselated) outer coat; 60x45 µm |
| Worm size | Female 20-35 cm; Male 15-30 cm (male has curved tail) |
| Eggs per day | 200,000 (female) |
| Soil requirement | 2-3 weeks, warm moist soil for embryonation |
| Treatment | Albendazole (single dose) or Mebendazole |
| Complication | Intestinal obstruction (bolus of worms), biliary ascariasis |
| Equipment | Temp/Parameter | Principle | Cannot Use For |
|---|---|---|---|
| Autoclave | 121°C, 15 psi, 15-20 min | Moist heat protein denaturation | Heat-labile items |
| Hot air oven | 160°C, 2 hours | Dry heat, oxidation | Rubber, plastic, media |
| Incubator (bacteria) | 37°C | Temperature control | - |
| Incubator (fungi) | 25-28°C | Temperature control | - |
| Membrane filter | 0.2 µm pore size | Physical sieving | Viruses (too small) |
| Stain | Organism Color | Background | Key Mechanism |
|---|---|---|---|
| Gram (G+) | Purple/blue | - | Thick peptidoglycan retains CV-I |
| Gram (G-) | Pink/red | - | Thin peptidoglycan; CV-I washes out |
| ZN (AFB) | Bright red | Blue | Mycolic acid binds carbol fuchsin |
| India ink | Clear halo | Black | Negative stain (capsule) |
| Giemsa | Violet parasites | Pink | Romanowsky-type stain |
| Organism | Infective Stage | Diagnostic Stage | Host |
|---|---|---|---|
| Plasmodium | Sporozoite (via mosquito) | Ring/trophozoite/schizont/gametocyte in blood smear | Human + Anopheles mosquito |
| E. histolytica | Mature quadrinucleate cyst | Cyst (formed stool) / Trophozoite with RBCs (loose stool) | Human only |
| Ascaris | Embryonated egg | Egg in stool / adult worm | Human (+ soil phase) |
Generate a PowerPoint presentation on microbiology practicals
mkdir -p /home/daytona/workspace/microbiology-pptx && ls /home/daytona/workspace…
Professional scientific illustration of a microbiology lab showing: compound microscope on bench, autoclave sterilizer, incubator, Bunsen burner with inoculation loop, petri dishes with bacterial colonies, staining rack with reagents, centrifuge. Clean modern laboratory background, teal and white color scheme, educational poster style.
Four-panel diagram showing the Gram stain procedure in microbiology: Panel 1 - Apply Crystal Violet (purple, 1 min), Panel 2 - Apply Gram's Iodine mordant (brown, 1 min), Panel 3 - Decolorize with acetone-alcohol (colorless solvent), Panel 4 - Apply Safranin counterstain (pink, 1 min). Final result shows purple Gram-positive cocci and pink Gram-negative rods under microscope. Blue teal color scheme, clean scientific diagram style with clear labels.
node /home/daytona/skills/shared/scripts/fetch_images.js \ "https://cdn.orris.…
~/microbiology-pptx/build.js
const pptxgen = require("pptxgenjs");
const { execSync } = require("child_process");
// ── Colour palette ──────────────────────────────────────────────────────────
const C = {
darkTeal: "0D4F5C", // dominant dark – title/section bg
midTeal: "0F7285", // header bars
lightTeal: "D6EEF2", // card / panel backgrounds
accent: "E8A020", // gold accent – highlights
accentRed: "C0392B", // danger / Gram-negative
accentPurp: "6A3F9E", // Gram-positive
white: "FFFFFF",
offWhite: "F4F9FA",
dark: "1A1A2E",
midGrey: "64748B",
lightGrey: "CBD5E1",
textDark: "1E2D3D",
};
// ── Fetch all images as base64 ───────────────────────────────────────────────
const URLS = [
"https://cdn.orris.care/image-gen/e8404ed01a824b8d88ff1e2d1b4d0140.png", // 0 lab overview
"https://cdn.orris.care/image-gen/ef602cb87fb64afdae2493974e7198d2.png", // 1 gram stain steps
"https://cdn.orris.care/image-gen/294b1550777f406eb115357e454dc183.png", // 2 microscope
"https://cdn.orris.care/image-gen/a73738d3490246e9b5883f541bb62b25.png", // 3 autoclave
"https://cdn.orris.care/image-gen/89a3e05a72c34dce8547b25556e2414d.png", // 4 ZN stain
"https://cdn.orris.care/cdss_images/fc6dce50ba9f55a0c34ea5fdd5a7de6a9db46381a71ba422d46dcf555c4f460d.png", // 5 Plasmodium
"https://cdn.orris.care/cdss_images/b6239a182d21bd7040efc70ad0fbc087fa05a03b757cf626f630923a4c70fbf1.png", // 6 Entamoeba
"https://cdn.orris.care/image-gen/cd114d64ef2e4f4fbb56f93b3cec15b6.png", // 7 Ascaris
"https://cdn.orris.care/image-gen/b04a46843c5a43b3834990b86c0ba888.png", // 8 test kit
];
const imgs = JSON.parse(
execSync(`node /home/daytona/skills/shared/scripts/fetch_images.js ${URLS.map(u=>`"${u}"`).join(" ")}`)
.toString()
);
const img = (i) => imgs[i].base64; // shorthand
// ── Helpers ──────────────────────────────────────────────────────────────────
function headerBar(slide, title, { bg = C.midTeal, fg = C.white } = {}) {
slide.addShape("rect", { x: 0, y: 0, w: 10, h: 0.65, fill: { color: bg }, line: { type: "none" } });
slide.addText(title, {
x: 0.3, y: 0, w: 9.4, h: 0.65, fontSize: 18, bold: true,
color: fg, valign: "middle", fontFace: "Calibri", margin: 0,
});
}
function footerBar(slide, text = "Microbiology Practicals") {
slide.addShape("rect", { x: 0, y: 5.35, w: 10, h: 0.28, fill: { color: C.darkTeal }, line: { type: "none" } });
slide.addText(text, {
x: 0.3, y: 5.35, w: 9.4, h: 0.28, fontSize: 8,
color: "AACCCC", valign: "middle", fontFace: "Calibri", margin: 0,
});
}
function sectionDivider(pres, sectionNum, sectionTitle, subtitle) {
const s = pres.addSlide();
// full-bleed dark bg
s.addShape("rect", { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.darkTeal }, line: { type: "none" } });
// accent stripe
s.addShape("rect", { x: 0, y: 2.5, w: 10, h: 0.08, fill: { color: C.accent }, line: { type: "none" } });
s.addText(`SECTION ${sectionNum}`, {
x: 0.8, y: 1.6, w: 8.4, h: 0.5, fontSize: 13, bold: true, charSpacing: 6,
color: C.accent, fontFace: "Calibri", align: "center",
});
s.addText(sectionTitle, {
x: 0.8, y: 2.1, w: 8.4, h: 0.8, fontSize: 34, bold: true,
color: C.white, fontFace: "Calibri", align: "center",
});
s.addText(subtitle, {
x: 1.5, y: 3.0, w: 7, h: 0.45, fontSize: 14,
color: "88BBCC", fontFace: "Calibri", align: "center",
});
}
// ── BUILD PRESENTATION ───────────────────────────────────────────────────────
const pres = new pptxgen();
pres.layout = "LAYOUT_16x9";
pres.title = "Microbiology Practicals";
pres.author = "Microbiology Department";
// ════════════════════════════════════════════════════════════════════════════
// SLIDE 1 – TITLE
// ════════════════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
// left dark panel
s.addShape("rect", { x: 0, y: 0, w: 4.8, h: 5.625, fill: { color: C.darkTeal }, line: { type: "none" } });
// right panel
s.addShape("rect", { x: 4.8, y: 0, w: 5.2, h: 5.625, fill: { color: C.offWhite }, line: { type: "none" } });
// accent bar on seam
s.addShape("rect", { x: 4.7, y: 0, w: 0.12, h: 5.625, fill: { color: C.accent }, line: { type: "none" } });
s.addText("MICROBIOLOGY", {
x: 0.3, y: 1.1, w: 4.2, h: 0.65, fontSize: 26, bold: true, charSpacing: 3,
color: C.accent, fontFace: "Calibri", align: "center",
});
s.addText("PRACTICALS", {
x: 0.3, y: 1.7, w: 4.2, h: 0.85, fontSize: 36, bold: true,
color: C.white, fontFace: "Calibri", align: "center",
});
s.addText("A Comprehensive Laboratory Guide", {
x: 0.3, y: 2.55, w: 4.2, h: 0.45, fontSize: 13,
color: "99CCDD", fontFace: "Calibri", align: "center",
});
s.addShape("rect", { x: 0.7, y: 3.1, w: 3.4, h: 0.04, fill: { color: C.accent }, line: { type: "none" } });
const topics = ["Equipment & Sterilization", "Staining Techniques", "Culture Methods", "Life Cycles of Pathogens", "Antibiotic Sensitivity Testing"];
const topicText = topics.map((t, i) => [
{ text: `${["①","②","③","④","⑤"][i]} `, options: { bold: true, color: C.accent } },
{ text: t, options: { color: C.textDark } },
...(i < topics.length - 1 ? [{ text: "\n", options: {} }] : []),
]).flat();
s.addText(topicText, {
x: 5.1, y: 1.3, w: 4.5, h: 3.0, fontSize: 13, fontFace: "Calibri",
lineSpacingMultiple: 1.6,
});
s.addImage({ data: img(0), x: 5.0, y: 0, w: 5.0, h: 1.2, transparency: 20 });
}
// ════════════════════════════════════════════════════════════════════════════
// SLIDE 2 – TABLE OF CONTENTS
// ════════════════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape("rect", { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.offWhite }, line: { type: "none" } });
headerBar(s, "TABLE OF CONTENTS");
const sections = [
["01", "Laboratory Equipment & Test Kits", "Microscope, Autoclave, BSC, Centrifuge, Media"],
["02", "Staining Techniques", "Gram Stain, ZN Stain, India Ink, Giemsa"],
["03", "Culture Media & Methods", "Types of Media, Streak Plate, Selective/Differential"],
["04", "Life Cycles of Organisms", "Plasmodium, Entamoeba, Ascaris lumbricoides"],
["05", "Antibiotic Sensitivity Testing", "Kirby-Bauer, MIC, Breakpoints, Reporting"],
];
sections.forEach(([num, title, sub], i) => {
const y = 0.85 + i * 0.88;
s.addShape("rect", { x: 0.35, y, w: 0.6, h: 0.62,
fill: { color: i % 2 === 0 ? C.midTeal : C.accent }, line: { type: "none" } });
s.addText(num, { x: 0.35, y, w: 0.6, h: 0.62, fontSize: 18, bold: true,
color: C.white, align: "center", valign: "middle", fontFace: "Calibri", margin: 0 });
s.addShape("rect", { x: 1.08, y: y + 0.04, w: 8.5, h: 0.55,
fill: { color: C.white }, line: { color: C.lightGrey, pt: 0.5 },
shadow: { type: "outer", color: "000000", blur: 4, offset: 1, angle: 135, opacity: 0.07 } });
s.addText(title, { x: 1.2, y: y + 0.04, w: 5.5, h: 0.28, fontSize: 12, bold: true,
color: C.textDark, fontFace: "Calibri", valign: "bottom", margin: 0 });
s.addText(sub, { x: 1.2, y: y + 0.3, w: 7.0, h: 0.24, fontSize: 9,
color: C.midGrey, fontFace: "Calibri", valign: "top", margin: 0 });
});
footerBar(s);
}
// ════════════════════════════════════════════════════════════════════════════
// SECTION 1 DIVIDER
// ════════════════════════════════════════════════════════════════════════════
sectionDivider(pres, "01", "Laboratory Equipment & Test Kits",
"Instruments, Sterilization Methods & Consumables");
// ════════════════════════════════════════════════════════════════════════════
// SLIDE 3 – MICROSCOPE
// ════════════════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape("rect", { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.offWhite }, line: { type: "none" } });
headerBar(s, "COMPOUND LIGHT MICROSCOPE – Parts & Functions");
s.addImage({ data: img(2), x: 0.2, y: 0.75, w: 4.4, h: 4.6 });
const parts = [
["Eyepiece (10×)", "Magnifies image from objective"],
["Revolving Nosepiece", "Holds & switches objective lenses"],
["Objectives", "4×, 10×, 40×, 100× (oil immersion)"],
["Stage & Clips", "Holds the glass slide"],
["Iris Diaphragm", "Controls light intensity"],
["Condenser", "Focuses light onto specimen"],
["Coarse/Fine Knobs", "Gross & precise focusing"],
["Oil Immersion (100×)", "Total magnification 1000×; resolving power 0.2 µm"],
];
parts.forEach(([label, desc], i) => {
const col = i < 4 ? 0 : 1;
const row = i % 4;
const x = 4.85 + col * 2.55;
const y = 0.85 + row * 1.15;
s.addShape("rect", { x, y, w: 2.4, h: 1.05,
fill: { color: i % 2 === 0 ? C.white : C.lightTeal },
line: { color: C.lightGrey, pt: 0.5 },
shadow: { type: "outer", color: "000000", blur: 3, offset: 1, angle: 135, opacity: 0.08 } });
s.addText(label, { x: x + 0.1, y: y + 0.04, w: 2.2, h: 0.3, fontSize: 9, bold: true,
color: C.midTeal, fontFace: "Calibri", margin: 0 });
s.addText(desc, { x: x + 0.1, y: y + 0.32, w: 2.2, h: 0.58, fontSize: 8,
color: C.textDark, fontFace: "Calibri", margin: 0, wrap: true });
});
footerBar(s);
}
// ════════════════════════════════════════════════════════════════════════════
// SLIDE 4 – AUTOCLAVE & STERILIZATION
// ════════════════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape("rect", { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.offWhite }, line: { type: "none" } });
headerBar(s, "AUTOCLAVE & STERILIZATION METHODS");
s.addImage({ data: img(3), x: 0.2, y: 0.75, w: 4.2, h: 4.5 });
// Autoclave specs box
s.addShape("rect", { x: 4.6, y: 0.8, w: 5.1, h: 1.5,
fill: { color: C.darkTeal }, line: { type: "none" },
shadow: { type: "outer", color: "000000", blur: 5, offset: 2, angle: 135, opacity: 0.15 } });
s.addText("AUTOCLAVE PARAMETERS", { x: 4.7, y: 0.82, w: 4.9, h: 0.3, fontSize: 9, bold: true,
charSpacing: 2, color: C.accent, fontFace: "Calibri", margin: 0 });
s.addText([
{ text: "Temperature: ", options: { bold: true, color: C.accent } },
{ text: "121°C\n", options: { color: C.white } },
{ text: "Pressure: ", options: { bold: true, color: C.accent } },
{ text: "15 psi (103 kPa)\n", options: { color: C.white } },
{ text: "Time: ", options: { bold: true, color: C.accent } },
{ text: "15–20 minutes", options: { color: C.white } },
], { x: 4.7, y: 1.12, w: 4.9, h: 1.1, fontSize: 11, fontFace: "Calibri",
lineSpacingMultiple: 1.5, margin: 0 });
// Sterilization methods table
const methods = [
["METHOD", "TEMP / PARAM", "USE", true],
["Autoclave", "121°C · 15 psi · 15 min", "Media, glassware, instruments", false],
["Hot Air Oven", "160°C · 2 hours", "Glassware, metal, oils", false],
["Membrane Filter", "0.2 µm pore", "Heat-labile fluids (serum, antibiotics)", false],
["Ethylene Oxide gas", "RT, sealed chamber", "Plastics, lensed instruments", false],
["UV Radiation", "254 nm wavelength", "Air / surface decontamination", false],
["Pasteurization", "63°C / 30 min", "Milk, beverages", false],
];
const tw = [2.7, 2.2, 2.1];
const tx = [4.6, 7.3]; // only 2 cols needed; 3rd continues
const tColX = [4.6, 7.3, 8.55];
const tColW = [2.6, 1.6, 1.75];
methods.forEach(([m, p, u, isHdr], ri) => {
const ty = 2.42 + ri * 0.44;
const bg = isHdr ? C.midTeal : (ri % 2 === 0 ? C.white : C.lightTeal);
const fc = isHdr ? C.white : C.textDark;
s.addShape("rect", { x: 4.6, y: ty, w: 5.15, h: 0.42,
fill: { color: bg }, line: { color: C.lightGrey, pt: 0.5 } });
[[m, 0], [p, 1], [u, 2]].forEach(([txt, ci]) => {
s.addText(txt, { x: tColX[ci] + 0.05, y: ty + 0.02, w: tColW[ci] - 0.1, h: 0.38,
fontSize: isHdr ? 8 : 7.5, bold: isHdr, color: fc,
fontFace: "Calibri", valign: "middle", margin: 0, wrap: true });
});
});
footerBar(s);
}
// ════════════════════════════════════════════════════════════════════════════
// SLIDE 5 – TEST KIT & CONSUMABLES
// ════════════════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape("rect", { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.offWhite }, line: { type: "none" } });
headerBar(s, "COMMON TEST KITS & CONSUMABLES");
s.addImage({ data: img(8), x: 5.2, y: 0.72, w: 4.6, h: 4.7, transparency: 5 });
const items = [
["Petri Dishes (90 mm)", "Solid culture, colony counting; inverted during incubation"],
["Inoculation Loop (1/10 µL)", "Streaking plates; sterilize by incineration in flame"],
["Swab + Stuart's Transport", "Specimen collection; maintains viability without growth"],
["Blood Culture Bottles", "Aerobic + anaerobic; CO₂ sensor detects growth"],
["McFarland 0.5 Standard", "~1.5×10⁸ CFU/mL; calibrates bacterial suspension for AST"],
["Kirby-Bauer Discs", "Antibiotic sensitivity testing; zone of inhibition in mm"],
["API Identification Strip", "20 biochemical tests in one strip for rapid ID"],
["Selective Media Plates", "Blood agar, MacConkey, CLED, TCBS, XLD"],
];
items.forEach(([label, desc], i) => {
const y = 0.82 + i * 0.6;
s.addShape("rect", { x: 0.2, y, w: 0.32, h: 0.32,
fill: { color: i % 2 === 0 ? C.midTeal : C.accent }, line: { type: "none" } });
s.addText(`${i + 1}`, { x: 0.2, y, w: 0.32, h: 0.32, fontSize: 9, bold: true,
color: C.white, align: "center", valign: "middle", fontFace: "Calibri", margin: 0 });
s.addText(label, { x: 0.62, y, w: 4.3, h: 0.22, fontSize: 10, bold: true,
color: C.midTeal, fontFace: "Calibri", margin: 0 });
s.addText(desc, { x: 0.62, y: y + 0.21, w: 4.3, h: 0.3, fontSize: 8,
color: C.midGrey, fontFace: "Calibri", margin: 0, wrap: true });
});
footerBar(s);
}
// ════════════════════════════════════════════════════════════════════════════
// SECTION 2 DIVIDER
// ════════════════════════════════════════════════════════════════════════════
sectionDivider(pres, "02", "Staining Techniques",
"Gram Stain · Ziehl-Neelsen · Special Stains");
// ════════════════════════════════════════════════════════════════════════════
// SLIDE 6 – GRAM STAIN
// ════════════════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape("rect", { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.offWhite }, line: { type: "none" } });
headerBar(s, "GRAM STAIN – Procedure, Principle & Results");
s.addImage({ data: img(1), x: 0.2, y: 0.72, w: 4.5, h: 4.6 });
const steps = [
["1", "Crystal Violet", "1 min", "All bacteria → purple", C.accentPurp],
["2", "Gram's Iodine", "1 min", "CV-iodine complex forms (mordant)", "4A6FA5"],
["3", "Acetone-Alcohol","5-10 sec","G+ retains purple | G− loses colour", "2E8B57"],
["4", "Safranin", "1 min", "G− counterstained → pink/red", C.accentRed],
];
steps.forEach(([num, reagent, time, result, color], i) => {
const y = 0.82 + i * 1.17;
s.addShape("rect", { x: 4.85, y, w: 4.9, h: 1.08,
fill: { color: C.white }, line: { color: C.lightGrey, pt: 0.5 },
shadow: { type: "outer", color: "000000", blur: 3, offset: 1, angle: 135, opacity: 0.08 } });
s.addShape("rect", { x: 4.85, y, w: 0.38, h: 1.08,
fill: { color }, line: { type: "none" } });
s.addText(`${num}`, { x: 4.85, y, w: 0.38, h: 1.08, fontSize: 16, bold: true,
color: C.white, align: "center", valign: "middle", fontFace: "Calibri", margin: 0 });
s.addText(reagent, { x: 5.3, y: y + 0.04, w: 4.3, h: 0.28, fontSize: 11, bold: true,
color: C.textDark, fontFace: "Calibri", margin: 0 });
s.addText(`⏱ ${time}`, { x: 5.3, y: y + 0.3, w: 1.2, h: 0.22, fontSize: 8,
color: C.midGrey, fontFace: "Calibri", margin: 0 });
s.addText(result, { x: 5.3, y: y + 0.52, w: 4.3, h: 0.46, fontSize: 9,
color: color, fontFace: "Calibri", margin: 0, wrap: true });
});
// principle footnote
s.addShape("rect", { x: 0.2, y: 5.05, w: 9.6, h: 0.35,
fill: { color: C.lightTeal }, line: { type: "none" } });
s.addText("Principle: Thick peptidoglycan (G+) retains CV-iodine complex on decolorization. Thin peptidoglycan + outer lipid membrane (G−) allows CV-iodine to wash out → counterstained pink by safranin.",
{ x: 0.3, y: 5.05, w: 9.4, h: 0.35, fontSize: 8, color: C.darkTeal,
fontFace: "Calibri", valign: "middle", margin: 0, wrap: true });
footerBar(s);
}
// ════════════════════════════════════════════════════════════════════════════
// SLIDE 7 – ZN STAIN
// ════════════════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape("rect", { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.offWhite }, line: { type: "none" } });
headerBar(s, "ZIEHL-NEELSEN (ZN) STAIN – Acid-Fast Technique");
s.addImage({ data: img(4), x: 5.2, y: 0.72, w: 4.6, h: 4.5 });
// Steps
const znSteps = [
["1", "Hot Carbol Fuchsin", "Heat to steam, 5 min", "All organisms → red", C.accentRed],
["2", "20% H₂SO₄ / 3% HCl-Alcohol", "3–5 min decolorize", "Non-AFB lose colour; AFB retains red", C.midGrey],
["3", "Methylene Blue counterstain", "1 min", "Non-AFB / background → blue", "2A7FBF"],
];
znSteps.forEach(([num, reagent, time, result, color], i) => {
const y = 0.82 + i * 1.0;
s.addShape("rect", { x: 0.2, y, w: 4.7, h: 0.9,
fill: { color: C.white }, line: { color: C.lightGrey, pt: 0.5 },
shadow: { type: "outer", color: "000000", blur: 3, offset: 1, angle: 135, opacity: 0.08 } });
s.addShape("rect", { x: 0.2, y, w: 0.38, h: 0.9,
fill: { color }, line: { type: "none" } });
s.addText(num, { x: 0.2, y, w: 0.38, h: 0.9, fontSize: 16, bold: true,
color: C.white, align: "center", valign: "middle", fontFace: "Calibri", margin: 0 });
s.addText(reagent, { x: 0.68, y: y + 0.04, w: 4.1, h: 0.25, fontSize: 10, bold: true,
color: C.textDark, fontFace: "Calibri", margin: 0, wrap: true });
s.addText(`${time} → ${result}`, { x: 0.68, y: y + 0.34, w: 4.1, h: 0.48, fontSize: 8.5,
color: C.midGrey, fontFace: "Calibri", margin: 0, wrap: true });
});
// Special stains table
s.addShape("rect", { x: 0.2, y: 3.18, w: 4.7, h: 0.28,
fill: { color: C.midTeal }, line: { type: "none" } });
s.addText("OTHER IMPORTANT STAINS", { x: 0.3, y: 3.18, w: 4.5, h: 0.28, fontSize: 9, bold: true,
color: C.white, fontFace: "Calibri", valign: "middle", margin: 0 });
const specials = [
["India Ink/Nigrosin", "Cryptococcus neoformans – capsule (clear halo)"],
["Albert's Stain", "C. diphtheriae – metachromatic granules"],
["Giemsa Stain", "Malaria, Leishmania, Borrelia (Romanowsky)"],
["PAS Stain", "Fungal cell walls – magenta/pink"],
["Calcofluo White", "Fungi – fluorescent blue-white under UV"],
];
specials.forEach(([stain, use], i) => {
const y = 3.48 + i * 0.39;
s.addShape("rect", { x: 0.2, y, w: 4.7, h: 0.36,
fill: { color: i % 2 === 0 ? C.white : C.lightTeal }, line: { color: C.lightGrey, pt: 0.5 } });
s.addText(stain, { x: 0.28, y: y + 0.02, w: 1.8, h: 0.3, fontSize: 8.5, bold: true,
color: C.midTeal, fontFace: "Calibri", valign: "middle", margin: 0 });
s.addText(use, { x: 2.1, y: y + 0.02, w: 2.7, h: 0.3, fontSize: 8,
color: C.textDark, fontFace: "Calibri", valign: "middle", margin: 0, wrap: true });
});
footerBar(s);
}
// ════════════════════════════════════════════════════════════════════════════
// SECTION 3 DIVIDER
// ════════════════════════════════════════════════════════════════════════════
sectionDivider(pres, "03", "Culture Media & Methods",
"Types of Media · Streaking · Incubation");
// ════════════════════════════════════════════════════════════════════════════
// SLIDE 8 – CULTURE MEDIA
// ════════════════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape("rect", { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.offWhite }, line: { type: "none" } });
headerBar(s, "CULTURE MEDIA – Types & Classification");
const mediaTypes = [
{ title: "NUTRIENT / GENERAL", color: C.midTeal, items: ["Nutrient Agar / Broth", "Brain-Heart Infusion (BHI)", "Tryptic Soy Agar (TSA)", "→ Supports growth of most organisms"] },
{ title: "SELECTIVE", color: "1A7F4B", items: ["MacConkey Agar (Gram-neg)", "TCBS (Vibrio)", "Mannitol Salt Agar (Staph)", "→ Inhibits unwanted organisms"] },
{ title: "DIFFERENTIAL", color: "8B6914", items: ["Blood Agar (haemolysis)", "CLED (UTI pathogens)", "Eosin Methylene Blue (EMB)", "→ Distinguishes by colony appearance"] },
{ title: "ENRICHED", color: C.accentPurp, items: ["Chocolate Agar (heated blood)", "Löwenstein-Jensen (TB)", "Thayer-Martin (Neisseria)", "→ For fastidious organisms"] },
{ title: "ENRICHMENT BROTH", color: C.accentRed, items: ["Selenite F (Salmonella)", "Alkaline Peptone Water (Vibrio)", "GN Broth (Enterobacteriaceae)", "→ Increase yield from mixed flora"] },
{ title: "TRANSPORT MEDIA", color: "4A8A9C", items: ["Stuart's Medium", "Viral Transport Medium (VTM)", "Thioglycollate Broth (anaerobes)", "→ Preserves viability in transit"] },
];
mediaTypes.forEach(({ title, color, items }, i) => {
const col = i % 3;
const row = Math.floor(i / 3);
const x = 0.2 + col * 3.25;
const y = 0.8 + row * 2.35;
s.addShape("rect", { x, y, w: 3.1, h: 2.2,
fill: { color: C.white }, line: { color: C.lightGrey, pt: 0.5 },
shadow: { type: "outer", color: "000000", blur: 4, offset: 1, angle: 135, opacity: 0.08 } });
s.addShape("rect", { x, y, w: 3.1, h: 0.38,
fill: { color }, line: { type: "none" } });
s.addText(title, { x: x + 0.1, y, w: 2.9, h: 0.38, fontSize: 9, bold: true,
color: C.white, fontFace: "Calibri", valign: "middle", margin: 0 });
items.forEach((item, j) => {
s.addText(item, { x: x + 0.15, y: y + 0.44 + j * 0.4, w: 2.8, h: 0.38,
fontSize: 8.5, color: j === 3 ? color : C.textDark, italic: j === 3,
fontFace: "Calibri", margin: 0, wrap: true });
});
});
footerBar(s);
}
// ════════════════════════════════════════════════════════════════════════════
// SECTION 4 DIVIDER
// ════════════════════════════════════════════════════════════════════════════
sectionDivider(pres, "04", "Life Cycles of Organisms",
"Plasmodium · Entamoeba histolytica · Ascaris lumbricoides");
// ════════════════════════════════════════════════════════════════════════════
// SLIDE 9 – PLASMODIUM LIFE CYCLE
// ════════════════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape("rect", { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.offWhite }, line: { type: "none" } });
headerBar(s, "PLASMODIUM – Life Cycle (Malaria)");
s.addImage({ data: img(5), x: 0.2, y: 0.72, w: 5.1, h: 4.7 });
const facts = [
["Definitive Host", "Female Anopheles mosquito (sexual cycle)"],
["Intermediate Host", "Human (asexual cycle)"],
["Infective Stage", "Sporozoites (inoculated via mosquito bite)"],
["Pre-erythrocytic", "Sporozoites → Liver → Schizonts → Merozoites"],
["Erythrocytic Cycle", "Ring → Trophozoite → Schizont → Merozoites (48-72 h)"],
["Gametocytes", "Some merozoites → male + female gametocytes"],
["Hypnozoites", "P. vivax / P. ovale → dormant liver forms → RELAPSE"],
["Diagnostic Stage", "Thick + thin blood film (Giemsa-stained)"],
];
facts.forEach(([label, val], i) => {
const y = 0.82 + i * 0.59;
s.addShape("rect", { x: 5.5, y, w: 4.3, h: 0.52,
fill: { color: i % 2 === 0 ? C.white : C.lightTeal },
line: { color: C.lightGrey, pt: 0.5 } });
s.addText(label + ":", { x: 5.58, y: y + 0.02, w: 1.6, h: 0.46, fontSize: 8.5, bold: true,
color: C.midTeal, fontFace: "Calibri", valign: "middle", margin: 0 });
s.addText(val, { x: 7.15, y: y + 0.02, w: 2.55, h: 0.46, fontSize: 8,
color: C.textDark, fontFace: "Calibri", valign: "middle", margin: 0, wrap: true });
});
footerBar(s);
}
// ════════════════════════════════════════════════════════════════════════════
// SLIDE 10 – ENTAMOEBA HISTOLYTICA
// ════════════════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape("rect", { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.offWhite }, line: { type: "none" } });
headerBar(s, "ENTAMOEBA HISTOLYTICA – Life Cycle & Diagnosis");
s.addImage({ data: img(6), x: 0.2, y: 0.72, w: 4.6, h: 4.7 });
// Two-stage header
const stages = [
{ title: "CYST (Infective Stage)", bg: C.midTeal, points: [
"Quadrinucleate (4 nuclei) mature cyst",
"Passed in FORMED stools",
"Survives weeks-months in damp environment",
"Resistant to chlorination",
"Infects via contaminated food/water",
]},
{ title: "TROPHOZOITE (Pathogenic Stage)", bg: C.accentRed, points: [
"Actively motile via pseudopodia (directional)",
"Found in LOOSE / BLOODY stools",
"Ingested RBCs = hallmark of invasive disease",
"Can invade colonic wall → flask-shaped ulcers",
"Spreads via blood → liver abscess (MC extra-intestinal)",
]},
];
stages.forEach(({ title, bg, points }, si) => {
const y = 0.82 + si * 2.35;
s.addShape("rect", { x: 5.1, y, w: 4.7, h: 0.34,
fill: { color: bg }, line: { type: "none" } });
s.addText(title, { x: 5.2, y, w: 4.5, h: 0.34, fontSize: 9, bold: true,
color: C.white, fontFace: "Calibri", valign: "middle", margin: 0 });
points.forEach((pt, j) => {
const py = y + 0.38 + j * 0.37;
s.addShape("rect", { x: 5.1, y: py, w: 4.7, h: 0.34,
fill: { color: j % 2 === 0 ? C.white : C.lightTeal }, line: { color: C.lightGrey, pt: 0.5 } });
s.addText("• " + pt, { x: 5.2, y: py + 0.02, w: 4.5, h: 0.3, fontSize: 8,
color: C.textDark, fontFace: "Calibri", valign: "middle", margin: 0, wrap: true });
});
});
footerBar(s);
}
// ════════════════════════════════════════════════════════════════════════════
// SLIDE 11 – ASCARIS LUMBRICOIDES
// ════════════════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape("rect", { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.offWhite }, line: { type: "none" } });
headerBar(s, "ASCARIS LUMBRICOIDES – Life Cycle (Soil-Transmitted Helminth)");
s.addImage({ data: img(7), x: 0.2, y: 0.72, w: 4.8, h: 4.7 });
const cycleSteps = [
["①", "Embryonated egg ingested (infective stage)", C.accent],
["②", "Hatches in small intestine → L2 larva", C.midTeal],
["③", "Larva penetrates intestinal wall → portal blood → LIVER", C.midTeal],
["④", "Larva → right heart → lungs (alveoli) = Loeffler's syndrome", C.accentRed],
["⑤", "Larva coughed up → swallowed → small intestine", C.midTeal],
["⑥", "Adult worm matures in jejunum (female 20–35 cm)", C.midTeal],
["⑦", "Female lays 200,000 eggs/day → passed in feces", C.accent],
["⑧", "Eggs embryonate in warm moist soil (2–3 weeks)", C.midGrey],
];
cycleSteps.forEach(([num, desc, color], i) => {
const y = 0.82 + i * 0.59;
s.addShape("rect", { x: 5.2, y, w: 4.6, h: 0.52,
fill: { color: i % 2 === 0 ? C.white : C.lightTeal },
line: { color: C.lightGrey, pt: 0.5 } });
s.addText(num, { x: 5.22, y, w: 0.42, h: 0.52, fontSize: 13, bold: true,
color, align: "center", valign: "middle", fontFace: "Calibri", margin: 0 });
s.addText(desc, { x: 5.68, y: y + 0.04, w: 4.0, h: 0.44, fontSize: 8.5,
color: C.textDark, fontFace: "Calibri", valign: "middle", margin: 0, wrap: true });
});
footerBar(s);
}
// ════════════════════════════════════════════════════════════════════════════
// SECTION 5 DIVIDER
// ════════════════════════════════════════════════════════════════════════════
sectionDivider(pres, "05", "Antibiotic Sensitivity Testing",
"Kirby-Bauer Disc Diffusion · MIC · Interpretation");
// ════════════════════════════════════════════════════════════════════════════
// SLIDE 12 – AST
// ════════════════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape("rect", { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.offWhite }, line: { type: "none" } });
headerBar(s, "ANTIBIOTIC SENSITIVITY TESTING – Kirby-Bauer Method");
// Steps panel
const steps = [
["1. Prepare inoculum", "Adjust turbidity to McFarland 0.5 standard (~1.5×10⁸ CFU/mL)"],
["2. Inoculate plate", "Flood Mueller-Hinton Agar; rotate plate 60° × 3 for even lawn"],
["3. Apply antibiotic discs", "Place Kirby-Bauer discs with dispenser; press gently"],
["4. Incubate", "37°C for 16–18 hours (bacteria) or 24–48 h (fungi)"],
["5. Measure zones", "Measure zone of inhibition (mm) from back of plate"],
["6. Interpret (CLSI/EUCAST)", "Compare to breakpoints → S (Sensitive), I (Intermediate), R (Resistant)"],
];
steps.forEach(([step, desc], i) => {
const y = 0.82 + i * 0.77;
s.addShape("rect", { x: 0.2, y, w: 5.6, h: 0.7,
fill: { color: i % 2 === 0 ? C.white : C.lightTeal },
line: { color: C.lightGrey, pt: 0.5 },
shadow: { type: "outer", color: "000000", blur: 3, offset: 1, angle: 135, opacity: 0.06 } });
s.addShape("rect", { x: 0.2, y, w: 0.4, h: 0.7,
fill: { color: C.midTeal }, line: { type: "none" } });
s.addText(`${i+1}`, { x: 0.2, y, w: 0.4, h: 0.7, fontSize: 13, bold: true,
color: C.white, align: "center", valign: "middle", fontFace: "Calibri", margin: 0 });
s.addText(step, { x: 0.7, y: y + 0.03, w: 4.9, h: 0.26, fontSize: 9.5, bold: true,
color: C.textDark, fontFace: "Calibri", margin: 0 });
s.addText(desc, { x: 0.7, y: y + 0.3, w: 4.9, h: 0.36, fontSize: 8,
color: C.midGrey, fontFace: "Calibri", margin: 0, wrap: true });
});
// Key concepts right panel
const concepts = [
["Mueller-Hinton Agar", "Standard medium for AST; low sulfonamide inhibitors"],
["Zone of Inhibition", "Area of no growth around disc = antibiotic diffusion zone"],
["MIC", "Minimum Inhibitory Concentration – lowest conc. that inhibits visible growth"],
["CLSI / EUCAST", "International breakpoint guidelines for S / I / R classification"],
["Inducible Resistance", "D-zone test (clindamycin + erythromycin) for D-test"],
["ESBL Detection", "Double disc synergy test – screen for extended spectrum beta-lactamase"],
];
s.addShape("rect", { x: 6.0, y: 0.8, w: 3.8, h: 0.3,
fill: { color: C.darkTeal }, line: { type: "none" } });
s.addText("KEY CONCEPTS", { x: 6.05, y: 0.8, w: 3.7, h: 0.3, fontSize: 9, bold: true,
color: C.accent, fontFace: "Calibri", valign: "middle", margin: 0, charSpacing: 2 });
concepts.forEach(([term, def], i) => {
const y = 1.14 + i * 0.72;
s.addShape("rect", { x: 6.0, y, w: 3.8, h: 0.66,
fill: { color: i % 2 === 0 ? C.white : C.lightTeal },
line: { color: C.lightGrey, pt: 0.5 } });
s.addText(term, { x: 6.08, y: y + 0.02, w: 3.6, h: 0.24, fontSize: 9, bold: true,
color: C.midTeal, fontFace: "Calibri", margin: 0 });
s.addText(def, { x: 6.08, y: y + 0.26, w: 3.6, h: 0.36, fontSize: 8,
color: C.midGrey, fontFace: "Calibri", margin: 0, wrap: true });
});
footerBar(s);
}
// ════════════════════════════════════════════════════════════════════════════
// SLIDE 13 – VIVA QUICK REFERENCE
// ════════════════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape("rect", { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.offWhite }, line: { type: "none" } });
headerBar(s, "VIVA QUICK REFERENCE – Key Facts to Remember");
const cards = [
{ title: "Autoclave", color: C.midTeal, lines: ["121°C · 15 psi · 15–20 min", "Biological indicator: B. stearothermophilus", "Cannot use for heat-labile items"] },
{ title: "Gram Stain", color: C.accentPurp, lines: ["CV → Iodine → Acetone-alcohol → Safranin", "G+ = Purple | G− = Pink", "Over-decolorize → false G-negative"] },
{ title: "ZN Stain", color: C.accentRed, lines: ["Hot carbol fuchsin + acid decolorize", "AFB = Red | Background = Blue", "Mycolic acid = acid-fastness mechanism"] },
{ title: "Membrane Filter", color: "2E7D6B", lines: ["Pore size 0.2 µm removes bacteria", "Does NOT remove viruses", "Used for heat-labile fluids (serum, antibiotics)"] },
{ title: "Plasmodium", color: "7B3F00", lines: ["Sporozoite = infective; Gametocyte = diagnostic", "Hypnozoites → relapse (P. vivax, P. ovale)", "Treat with primaquine for hypnozoites"] },
{ title: "Entamoeba", color: "C0392B", lines: ["Infective = mature cyst (4 nuclei)", "Diagnostic = trophozoite with ingested RBCs", "MC extra-intestinal = liver abscess"] },
{ title: "Ascaris", color: "1A5276", lines: ["Infective = embryonated egg", "Lung migration → Loeffler's syndrome", "Female lays 200,000 eggs/day"] },
{ title: "Kirby-Bauer AST", color: "6B4226", lines: ["McFarland 0.5 = 1.5×10⁸ CFU/mL", "Mueller-Hinton agar · 37°C · 16–18 h", "Breakpoints: S / I / R (CLSI or EUCAST)"] },
];
cards.forEach(({ title, color, lines }, i) => {
const col = i % 4;
const row = Math.floor(i / 4);
const x = 0.2 + col * 2.43;
const y = 0.82 + row * 2.35;
s.addShape("rect", { x, y, w: 2.3, h: 2.2,
fill: { color: C.white }, line: { color: C.lightGrey, pt: 0.5 },
shadow: { type: "outer", color: "000000", blur: 4, offset: 1, angle: 135, opacity: 0.1 } });
s.addShape("rect", { x, y, w: 2.3, h: 0.38,
fill: { color }, line: { type: "none" } });
s.addText(title, { x: x + 0.08, y, w: 2.14, h: 0.38, fontSize: 10, bold: true,
color: C.white, fontFace: "Calibri", valign: "middle", margin: 0 });
lines.forEach((line, j) => {
s.addText("• " + line, { x: x + 0.1, y: y + 0.44 + j * 0.56, w: 2.1, h: 0.52,
fontSize: 8, color: C.textDark, fontFace: "Calibri", margin: 0, wrap: true });
});
});
footerBar(s);
}
// ════════════════════════════════════════════════════════════════════════════
// SLIDE 14 – CLOSING
// ════════════════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape("rect", { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.darkTeal }, line: { type: "none" } });
s.addShape("rect", { x: 0, y: 2.6, w: 10, h: 0.06, fill: { color: C.accent }, line: { type: "none" } });
s.addText("MICROBIOLOGY", { x: 1, y: 0.8, w: 8, h: 0.55, fontSize: 22, bold: true,
charSpacing: 6, color: C.accent, fontFace: "Calibri", align: "center" });
s.addText("PRACTICALS", { x: 1, y: 1.3, w: 8, h: 0.7, fontSize: 40, bold: true,
color: C.white, fontFace: "Calibri", align: "center" });
s.addText("Thank you for watching", { x: 1, y: 2.0, w: 8, h: 0.4, fontSize: 14,
color: "88BBCC", fontFace: "Calibri", align: "center" });
const summary = [
"Equipment & Sterilization • Gram & ZN Staining",
"Culture Media • Life Cycles • Antibiotic Sensitivity Testing",
];
summary.forEach((line, i) => {
s.addText(line, { x: 1, y: 2.95 + i * 0.52, w: 8, h: 0.45, fontSize: 12,
color: "AACCCC", fontFace: "Calibri", align: "center" });
});
s.addText("Sources: Medical Microbiology 9e (Murray) · Jawetz Medical Microbiology 28e · Sherris & Ryan's Medical Microbiology 8e",
{ x: 1, y: 4.8, w: 8, h: 0.35, fontSize: 8, color: "557788",
fontFace: "Calibri", align: "center" });
}
// ════════════════════════════════════════════════════════════════════════════
// WRITE FILE
// ════════════════════════════════════════════════════════════════════════════
pres.writeFile({ fileName: "/home/daytona/workspace/microbiology-pptx/Microbiology_Practicals.pptx" })
.then(() => console.log("SUCCESS: Microbiology_Practicals.pptx written"))
.catch(e => { console.error("ERROR:", e); process.exit(1); });
cd /home/daytona/workspace/microbiology-pptx && node build.js 2>&1
cd /home/daytona/workspace/microbiology-pptx && node -e " const {execSync} = req…
~/microbiology-pptx/build.js
Successfully replaced 1 instance(s) of the string in '/home/daytona/workspace/microbiology-pptx/build.js'
~/microbiology-pptx/build.js
Successfully replaced 1 instance(s) of the string in '/home/daytona/workspace/microbiology-pptx/build.js'
cd /home/daytona/workspace/microbiology-pptx && node build.js 2>&1
ls -lh /home/daytona/workspace/microbiology-pptx/Microbiology_Practicals.pptx
Microbiology Practicals
Presentation · PPTX
| Slide | Content |
|---|---|
| 1 | Title slide - split-panel teal/white design with topic overview |
| 2 | Table of Contents with 5 numbered sections |
| 3 | Section 1 divider |
| 4 | Compound Microscope - labelled diagram + 8 parts/functions cards |
| 5 | Autoclave & Sterilization - cross-section diagram + full methods table |
| 6 | Test Kits & Consumables - 8 labelled items with uses |
| 7 | Section 2 divider |
| 8 | Gram Stain - 4-step procedure diagram with colour-coded steps + principle |
| 9 | ZN Stain - 3-step procedure + special stains quick-reference table |
| 10 | Section 3 divider + Culture Media - 6 type cards (nutrient, selective, differential, enriched, enrichment, transport) |
| 11 | Section 4 divider |
| 12 | Plasmodium life cycle - textbook diagram (Medical Microbiology 9e) + key facts table |
| 13 | Entamoeba histolytica - textbook diagram + cyst vs trophozoite comparison |
| 14 | Ascaris lumbricoides - life cycle diagram + 8-step migration pathway |
| 15 | Section 5 + Antibiotic Sensitivity Testing - Kirby-Bauer 6-step protocol + key concepts |
| 16 | Viva Quick Reference - 8 colour-coded memory cards |
| 17 | Closing slide |