Can create a presentation on topic drugs for treatment of mycosis of skin and its derivatives from KD tripathi
antifungal drugs mechanism ergosterol synthesis pathway
tinea pedis dermatophyte skin infection clinical
onychomycosis nail fungal infection treatment
ls -la /home/daytona/workspace/ 2>/dev/null || echo "workspace does not exist"
mkdir -p /home/daytona/workspace/antifungal-pptx && echo "done"
~/antifungal-pptx/create_pptx.js
const pptxgen = require("pptxgenjs");
const { execSync } = require("child_process");
// Fetch images as base64
function fetchImages(urls) {
try {
const result = execSync(
`node /home/daytona/skills/shared/scripts/fetch_images.js ${urls.map(u => `"${u}"`).join(" ")}`,
{ timeout: 30000 }
).toString();
return JSON.parse(result);
} catch (e) {
console.error("Image fetch error:", e.message);
return urls.map(() => ({ base64: null, error: e.message }));
}
}
const imageUrls = [
"https://cdn.orris.care/cdss_images/585cc05c46e0821032775915a73cb2a9fb4fd3168d8f218856fdf10051f34e13.png", // ergosterol pathway
"https://cdn.orris.care/cdss_images/pmc_clinical_VQA_9cba238b28ddb695bf76b8ea05f85765cda3dfd04d149f32c7dd0a713338bfdd.jpg", // amphotericin B MOA
"https://cdn.orris.care/cdss_images/DermNetNZ_1760031388440_a7240925-8188-4fe2-bc0c-19fa2cd962ff.jpg", // tinea pedis
"https://cdn.orris.care/cdss_images/DermNetNZ_1760031790129_8f43eb0d-b9dd-4b5b-a800-4d57732cbb7b.jpg", // onychomycosis
];
console.log("Fetching images...");
const imgs = fetchImages(imageUrls);
console.log("Images fetched:", imgs.map((i, idx) => `[${idx}]: ${i.error ? 'FAIL:'+i.error : 'OK'}`).join(", "));
// Color scheme - deep teal/medical dark blue
const C = {
bg: "0D2137", // deep navy bg
accent1: "1ABC9C", // teal
accent2: "E74C3C", // red for warnings
white: "FFFFFF",
offwhite: "ECF0F1",
yellow: "F1C40F",
lightblue: "5DADE2",
darkCard: "13293D",
midCard: "1A3A52",
pill: "16A085",
};
let pres = new pptxgen();
pres.layout = "LAYOUT_16x9";
pres.author = "KD Tripathi Pharmacology";
pres.title = "Drugs for Treatment of Mycosis of Skin & Its Derivatives";
// ─────────────────────────────────────────────
// SLIDE 1 – TITLE
// ─────────────────────────────────────────────
{
let s = pres.addSlide();
// Full dark background
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.bg }, line: { color: C.bg } });
// Teal accent bar left
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 0.12, h: 5.625, fill: { color: C.accent1 }, line: { color: C.accent1 } });
// Top accent strip
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 0.08, fill: { color: C.accent1 }, line: { color: C.accent1 } });
// Bottom strip
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 5.45, w: 10, h: 0.18, fill: { color: C.accent1 }, line: { color: C.accent1 } });
// Main title
s.addText("DRUGS FOR TREATMENT OF", {
x: 0.4, y: 0.9, w: 9.2, h: 0.7,
fontSize: 28, bold: true, color: C.accent1,
fontFace: "Calibri", align: "center", charSpacing: 4
});
s.addText("MYCOSIS OF SKIN", {
x: 0.4, y: 1.55, w: 9.2, h: 1.0,
fontSize: 52, bold: true, color: C.white,
fontFace: "Calibri", align: "center"
});
s.addText("& ITS DERIVATIVES", {
x: 0.4, y: 2.5, w: 9.2, h: 0.65,
fontSize: 30, bold: false, color: C.lightblue,
fontFace: "Calibri", align: "center", charSpacing: 2
});
// Divider line
s.addShape(pres.shapes.RECTANGLE, { x: 2.5, y: 3.28, w: 5, h: 0.04, fill: { color: C.accent1 }, line: { color: C.accent1 } });
// Subtitle
s.addText("Hair · Nails · Skin Folds", {
x: 0.4, y: 3.42, w: 9.2, h: 0.45,
fontSize: 18, bold: false, color: C.offwhite,
fontFace: "Calibri", align: "center", italic: true
});
// Source tag
s.addText("Based on KD Tripathi — Essentials of Medical Pharmacology", {
x: 0.4, y: 4.1, w: 9.2, h: 0.35,
fontSize: 13, color: "7FB3C8", fontFace: "Calibri", align: "center"
});
// Drug class pills row
const pills = ["Polyenes", "Azoles", "Allylamines", "Griseofulvin", "Others"];
pills.forEach((p, i) => {
const x = 0.5 + i * 1.8;
s.addShape(pres.shapes.ROUNDED_RECTANGLE, { x, y: 4.65, w: 1.6, h: 0.38, fill: { color: C.pill }, line: { color: C.pill }, rectRadius: 0.08 });
s.addText(p, { x, y: 4.65, w: 1.6, h: 0.38, fontSize: 11, bold: true, color: C.white, fontFace: "Calibri", align: "center", valign: "middle" });
});
}
// ─────────────────────────────────────────────
// SLIDE 2 – OVERVIEW / CLASSIFICATION
// ─────────────────────────────────────────────
{
let s = pres.addSlide();
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.bg }, line: { color: C.bg } });
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 0.08, fill: { color: C.accent1 }, line: { color: C.accent1 } });
// Slide title
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0.08, w: 10, h: 0.75, fill: { color: C.midCard }, line: { color: C.midCard } });
s.addText("CLASSIFICATION OF ANTIFUNGAL DRUGS FOR SKIN MYCOSES", {
x: 0.3, y: 0.1, w: 9.4, h: 0.71,
fontSize: 18, bold: true, color: C.accent1, fontFace: "Calibri", align: "left", valign: "middle"
});
// Intro text
s.addText("Mycosis of skin and its derivatives (hair & nails) includes dermatophytoses (tinea), cutaneous candidiasis, and pityriasis versicolor. Treatment is classified into topical and systemic agents.", {
x: 0.3, y: 0.97, w: 9.4, h: 0.55,
fontSize: 12, color: C.offwhite, fontFace: "Calibri", italic: false
});
// Two columns of classification boxes
const leftClasses = [
{ title: "TOPICAL AGENTS", color: C.pill, items: ["Azoles: Clotrimazole, Miconazole, Ketoconazole", "Allylamines: Terbinafine, Naftifine", "Polyenes: Nystatin, Amphotericin B", "Ciclopirox olamine", "Tolnaftate, Whitfield's ointment"] },
];
const rightClasses = [
{ title: "SYSTEMIC AGENTS", color: "E67E22", items: ["Griseofulvin (dermatophytes)", "Terbinafine oral (dermatophytes, nails)", "Itraconazole (broad spectrum)", "Fluconazole (Candida, dermatophytes)", "Amphotericin B (severe systemic)"] },
];
// Left box
s.addShape(pres.shapes.RECTANGLE, { x: 0.3, y: 1.62, w: 4.4, h: 3.5, fill: { color: C.darkCard }, line: { color: C.pill }, lineSize: 2 });
s.addShape(pres.shapes.RECTANGLE, { x: 0.3, y: 1.62, w: 4.4, h: 0.42, fill: { color: C.pill }, line: { color: C.pill } });
s.addText("TOPICAL AGENTS", { x: 0.32, y: 1.63, w: 4.36, h: 0.4, fontSize: 13, bold: true, color: C.white, fontFace: "Calibri", align: "center", valign: "middle" });
const topItems = [
"Azoles: Clotrimazole, Miconazole,\n Ketoconazole (1-2% cream/gel)",
"Allylamines: Terbinafine 1%,\n Naftifine, Butenafine",
"Polyenes: Nystatin (Candida only),\n Amphotericin B lotion",
"Ciclopirox olamine 1% (broad)",
"Tolnaftate 1%\nWhitfield's ointment (keratolytic)"
];
topItems.forEach((item, i) => {
s.addShape(pres.shapes.RECTANGLE, { x: 0.35, y: 2.12 + i * 0.56, w: 4.3, h: 0.5, fill: { color: i % 2 === 0 ? C.midCard : C.darkCard }, line: { color: C.midCard } });
s.addText([
{ text: "▸ ", options: { color: C.accent1, bold: true } },
{ text: item, options: { color: C.offwhite } }
], { x: 0.42, y: 2.12 + i * 0.56, w: 4.16, h: 0.5, fontSize: 10.5, fontFace: "Calibri", valign: "middle" });
});
// Right box
s.addShape(pres.shapes.RECTANGLE, { x: 5.3, y: 1.62, w: 4.4, h: 3.5, fill: { color: C.darkCard }, line: { color: "E67E22" }, lineSize: 2 });
s.addShape(pres.shapes.RECTANGLE, { x: 5.3, y: 1.62, w: 4.4, h: 0.42, fill: { color: "E67E22" }, line: { color: "E67E22" } });
s.addText("SYSTEMIC AGENTS", { x: 5.32, y: 1.63, w: 4.36, h: 0.4, fontSize: 13, bold: true, color: C.white, fontFace: "Calibri", align: "center", valign: "middle" });
const sysItems = [
"Griseofulvin\n (dermatophytes, DOC in children)",
"Terbinafine oral\n (dermatophytes, onychomycosis)",
"Itraconazole\n (dermatophytes, Candida, tinea)",
"Fluconazole\n (Candida, tinea capitis)",
"Amphotericin B IV\n (severe/invasive infections)"
];
sysItems.forEach((item, i) => {
s.addShape(pres.shapes.RECTANGLE, { x: 5.35, y: 2.12 + i * 0.56, w: 4.3, h: 0.5, fill: { color: i % 2 === 0 ? C.midCard : C.darkCard }, line: { color: C.midCard } });
s.addText([
{ text: "▸ ", options: { color: C.yellow, bold: true } },
{ text: item, options: { color: C.offwhite } }
], { x: 5.42, y: 2.12 + i * 0.56, w: 4.16, h: 0.5, fontSize: 10.5, fontFace: "Calibri", valign: "middle" });
});
}
// ─────────────────────────────────────────────
// SLIDE 3 – GRISEOFULVIN
// ─────────────────────────────────────────────
{
let s = pres.addSlide();
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.bg }, line: { color: C.bg } });
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 0.08, fill: { color: C.yellow }, line: { color: C.yellow } });
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0.08, w: 10, h: 0.75, fill: { color: C.midCard }, line: { color: C.midCard } });
s.addText("GRISEOFULVIN", {
x: 0.3, y: 0.1, w: 7, h: 0.71,
fontSize: 24, bold: true, color: C.yellow, fontFace: "Calibri", align: "left", valign: "middle"
});
s.addShape(pres.shapes.ROUNDED_RECTANGLE, { x: 7.5, y: 0.17, w: 2.1, h: 0.45, fill: { color: "C0392B" }, line: { color: "C0392B" }, rectRadius: 0.08 });
s.addText("Fungistatic", { x: 7.5, y: 0.17, w: 2.1, h: 0.45, fontSize: 12, bold: true, color: C.white, fontFace: "Calibri", align: "center", valign: "middle" });
const sections = [
{
title: "SOURCE & CHEMISTRY",
color: "8E44AD",
text: "Isolated from Penicillium griseofulvum. Practically insoluble in water.\nMicrosize & ultramicrosize formulations available."
},
{
title: "MECHANISM OF ACTION",
color: C.accent1,
text: "Inhibits microtubule function → disrupts mitotic spindle assembly → fungistatic effect.\nBinds to tubulin → prevents cell division in fungi.\nDeposits in keratin precursor cells; active drug in new keratin is toxic to dermatophytes."
},
{
title: "SPECTRUM",
color: C.lightblue,
text: "ONLY dermatophytes: Trichophyton, Microsporum, Epidermophyton spp.\nNOT active against: Candida, Pityrosporum, non-dermatophyte molds."
},
{
title: "INDICATIONS",
color: "27AE60",
text: "DOC for tinea capitis in children (scalp ringworm)\nTinea corporis, tinea pedis, tinea unguium (nails — long course)\nResistant tinea not responding to topical agents."
},
{
title: "PHARMACOKINETICS",
color: "E67E22",
text: "Oral — absorption enhanced by fatty meal. Deposited in keratinizing cells.\nMetabolized by liver (CYP450). Induces hepatic enzymes.\nDuration: skin 2–4 wks; nails 6–12 months."
},
{
title: "ADVERSE EFFECTS & INTERACTIONS",
color: C.accent2,
text: "Headache, GI disturbances, photosensitivity, urticaria.\nHepatotoxicity (rare). Teratogenic — avoid in pregnancy.\nDrug interactions: reduces efficacy of warfarin, OCPs (enzyme inducer)."
}
];
sections.forEach((sec, i) => {
const col = i < 3 ? 0 : 1;
const row = i % 3;
const x = col === 0 ? 0.2 : 5.1;
const y = 1.02 + row * 1.48;
s.addShape(pres.shapes.RECTANGLE, { x, y, w: 4.7, h: 1.38, fill: { color: C.darkCard }, line: { color: sec.color }, lineSize: 1.5 });
s.addShape(pres.shapes.RECTANGLE, { x, y, w: 4.7, h: 0.3, fill: { color: sec.color }, line: { color: sec.color } });
s.addText(sec.title, { x: x + 0.08, y: y + 0.01, w: 4.54, h: 0.28, fontSize: 10, bold: true, color: C.white, fontFace: "Calibri", valign: "middle" });
s.addText(sec.text, { x: x + 0.1, y: y + 0.33, w: 4.5, h: 1.0, fontSize: 10, color: C.offwhite, fontFace: "Calibri", valign: "top" });
});
}
// ─────────────────────────────────────────────
// SLIDE 4 – AZOLE ANTIFUNGALS
// ─────────────────────────────────────────────
{
let s = pres.addSlide();
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.bg }, line: { color: C.bg } });
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 0.08, fill: { color: C.lightblue }, line: { color: C.lightblue } });
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0.08, w: 10, h: 0.75, fill: { color: C.midCard }, line: { color: C.midCard } });
s.addText("AZOLE ANTIFUNGALS", {
x: 0.3, y: 0.1, w: 7, h: 0.71,
fontSize: 24, bold: true, color: C.lightblue, fontFace: "Calibri", align: "left", valign: "middle"
});
s.addText("Imidazoles · Triazoles", { x: 6.8, y: 0.25, w: 2.9, h: 0.4, fontSize: 13, color: C.offwhite, fontFace: "Calibri", italic: true, align: "center" });
// MOA box (full width)
s.addShape(pres.shapes.RECTANGLE, { x: 0.2, y: 0.95, w: 9.6, h: 0.75, fill: { color: C.midCard }, line: { color: C.lightblue }, lineSize: 1.5 });
s.addText([
{ text: "MECHANISM: ", options: { bold: true, color: C.lightblue } },
{ text: "Inhibit fungal CYP450 enzyme 14α-demethylase → block conversion of lanosterol → ergosterol → ergosterol depletion → altered membrane permeability → fungistatic (fungicidal at high conc.)", options: { color: C.offwhite } }
], { x: 0.35, y: 0.97, w: 9.3, h: 0.71, fontSize: 11.5, fontFace: "Calibri", valign: "middle" });
// Ergosterol image if available
const ergoImg = imgs[0];
if (ergoImg && ergoImg.base64) {
s.addImage({ data: ergoImg.base64, x: 6.3, y: 1.82, w: 3.5, h: 2.2 });
s.addText("Ergosterol synthesis pathway\n(Dermatology 5e)", { x: 6.3, y: 3.98, w: 3.5, h: 0.38, fontSize: 8, color: "7FB3C8", fontFace: "Calibri", align: "center", italic: true });
}
const azoles = [
{ name: "Clotrimazole", type: "Imidazole", use: "Topical — tinea, cutaneous candidiasis", note: "1% cream, powder, lotion, pessary" },
{ name: "Miconazole", type: "Imidazole", use: "Topical skin & nail infections, Candida", note: "2% cream/powder; nail lacquer" },
{ name: "Ketoconazole", type: "Imidazole", use: "Topical: tinea versicolor, seborrheic dermatitis\nOral: restricted (hepatotoxicity risk)", note: "2% shampoo/cream" },
{ name: "Fluconazole", type: "Triazole", use: "Systemic Candida; off-label dermatophytes", note: "Weekly dose for tinea; nail 150mg/wk x 6m" },
{ name: "Itraconazole", type: "Triazole", use: "Onychomycosis, tinea capitis, versicolor", note: "Pulse therapy: 200mg BD x 1wk/month" },
];
azoles.forEach((az, i) => {
const y = 1.82 + i * 0.68;
s.addShape(pres.shapes.RECTANGLE, { x: 0.2, y, w: 5.9, h: 0.62, fill: { color: i % 2 === 0 ? C.darkCard : C.midCard }, line: { color: C.midCard } });
s.addShape(pres.shapes.ROUNDED_RECTANGLE, { x: 0.25, y: y + 0.07, w: 1.4, h: 0.28, fill: { color: C.lightblue }, line: { color: C.lightblue }, rectRadius: 0.05 });
s.addText(az.name, { x: 0.25, y: y + 0.07, w: 1.4, h: 0.28, fontSize: 10, bold: true, color: C.white, fontFace: "Calibri", align: "center", valign: "middle" });
s.addShape(pres.shapes.ROUNDED_RECTANGLE, { x: 1.72, y: y + 0.07, w: 1.1, h: 0.24, fill: { color: C.darkCard }, line: { color: C.lightblue }, rectRadius: 0.04 });
s.addText(az.type, { x: 1.72, y: y + 0.07, w: 1.1, h: 0.24, fontSize: 9, color: C.lightblue, fontFace: "Calibri", align: "center", valign: "middle" });
s.addText(az.use, { x: 2.9, y: y + 0.04, w: 3.1, h: 0.3, fontSize: 9.5, color: C.offwhite, fontFace: "Calibri", valign: "top" });
s.addText(az.note, { x: 2.9, y: y + 0.33, w: 3.1, h: 0.25, fontSize: 8.5, color: "7FB3C8", fontFace: "Calibri", italic: true });
});
}
// ─────────────────────────────────────────────
// SLIDE 5 – ALLYLAMINES
// ─────────────────────────────────────────────
{
let s = pres.addSlide();
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.bg }, line: { color: C.bg } });
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 0.08, fill: { color: C.accent1 }, line: { color: C.accent1 } });
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0.08, w: 10, h: 0.75, fill: { color: C.midCard }, line: { color: C.midCard } });
s.addText("ALLYLAMINES & BENZYLAMINES", { x: 0.3, y: 0.1, w: 8, h: 0.71, fontSize: 24, bold: true, color: C.accent1, fontFace: "Calibri", align: "left", valign: "middle" });
s.addShape(pres.shapes.ROUNDED_RECTANGLE, { x: 7.7, y: 0.17, w: 1.95, h: 0.45, fill: { color: C.accent1 }, line: { color: C.accent1 }, rectRadius: 0.08 });
s.addText("Fungicidal", { x: 7.7, y: 0.17, w: 1.95, h: 0.45, fontSize: 12, bold: true, color: C.bg, fontFace: "Calibri", align: "center", valign: "middle" });
// MOA
s.addShape(pres.shapes.RECTANGLE, { x: 0.2, y: 0.95, w: 9.6, h: 0.65, fill: { color: C.midCard }, line: { color: C.accent1 }, lineSize: 1.5 });
s.addText([
{ text: "MECHANISM: ", options: { bold: true, color: C.accent1 } },
{ text: "Inhibit squalene epoxidase → squalene accumulates (toxic) + ergosterol depleted → fungicidal effect. More selective than azoles (no human CYP450 inhibition).", options: { color: C.offwhite } }
], { x: 0.35, y: 0.97, w: 9.3, h: 0.61, fontSize: 11.5, fontFace: "Calibri", valign: "middle" });
// Terbinafine large card
s.addShape(pres.shapes.RECTANGLE, { x: 0.2, y: 1.72, w: 5.85, h: 3.5, fill: { color: C.darkCard }, line: { color: C.accent1 }, lineSize: 2 });
s.addShape(pres.shapes.RECTANGLE, { x: 0.2, y: 1.72, w: 5.85, h: 0.38, fill: { color: C.accent1 }, line: { color: C.accent1 } });
s.addText("TERBINAFINE (Allylamine)", { x: 0.25, y: 1.73, w: 5.75, h: 0.36, fontSize: 13, bold: true, color: C.bg, fontFace: "Calibri", valign: "middle" });
const terbRows = [
["Spectrum", "Dermatophytes (T. rubrum, T. mentagrophytes, Epidermophyton). Limited Candida activity."],
["Forms", "1% topical cream (tinea corporis, pedis, cruris); Oral 250 mg tablets (onychomycosis, severe tinea)"],
["Indications", "Tinea pedis, tinea corporis, tinea cruris (topical). Onychomycosis, tinea capitis (oral). Drug of choice for dermatophyte nail infections."],
["Dosing", "Tinea pedis: 1 wk topical. Onychomycosis: 250mg/day oral — 6 wks (fingernails), 12 wks (toenails).\nMycologic cure: ~70% toenails, 80% fingernails."],
["Adverse FX", "Oral: GI disturbances, taste/smell disturbances, hepatotoxicity (rare), Stevens-Johnson syndrome.\nTopical: mild irritation. Accumulates in skin/nails/fat."],
];
terbRows.forEach((row, i) => {
const y = 2.18 + i * 0.58;
s.addShape(pres.shapes.RECTANGLE, { x: 0.25, y, w: 1.35, h: 0.52, fill: { color: C.pill }, line: { color: C.pill } });
s.addText(row[0], { x: 0.25, y, w: 1.35, h: 0.52, fontSize: 10, bold: true, color: C.white, fontFace: "Calibri", align: "center", valign: "middle" });
s.addText(row[1], { x: 1.66, y: y + 0.03, w: 4.3, h: 0.5, fontSize: 9.5, color: C.offwhite, fontFace: "Calibri", valign: "top" });
});
// Right - Naftifine & Others
s.addShape(pres.shapes.RECTANGLE, { x: 6.25, y: 1.72, w: 3.55, h: 1.65, fill: { color: C.darkCard }, line: { color: "16A085" }, lineSize: 1.5 });
s.addShape(pres.shapes.RECTANGLE, { x: 6.25, y: 1.72, w: 3.55, h: 0.35, fill: { color: "16A085" }, line: { color: "16A085" } });
s.addText("NAFTIFINE", { x: 6.3, y: 1.73, w: 3.45, h: 0.33, fontSize: 12, bold: true, color: C.white, fontFace: "Calibri", valign: "middle" });
s.addText("Allylamine • Topical only (1% cream/gel)\nSpectrum: dermatophytes, some Candida\nUse: tinea corporis, pedis, cruris\nAdvantage: anti-inflammatory effect\nFrequency: once daily (gel) or twice daily (cream)", {
x: 6.3, y: 2.1, w: 3.45, h: 1.22, fontSize: 10, color: C.offwhite, fontFace: "Calibri"
});
s.addShape(pres.shapes.RECTANGLE, { x: 6.25, y: 3.5, w: 3.55, h: 1.7, fill: { color: C.darkCard }, line: { color: "F39C12" }, lineSize: 1.5 });
s.addShape(pres.shapes.RECTANGLE, { x: 6.25, y: 3.5, w: 3.55, h: 0.35, fill: { color: "F39C12" }, line: { color: "F39C12" } });
s.addText("BUTENAFINE (Benzylamine)", { x: 6.3, y: 3.51, w: 3.45, h: 0.33, fontSize: 11, bold: true, color: C.bg, fontFace: "Calibri", valign: "middle" });
s.addText("Topical 1% cream\nSpectrum: dermatophytes (fungicidal)\nUse: tinea pedis, corporis, cruris\nNote: longer post-antifungal effect than\nterbinafine cream", {
x: 6.3, y: 3.88, w: 3.45, h: 1.25, fontSize: 10, color: C.offwhite, fontFace: "Calibri"
});
}
// ─────────────────────────────────────────────
// SLIDE 6 – POLYENES (Nystatin & Amphotericin B)
// ─────────────────────────────────────────────
{
let s = pres.addSlide();
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.bg }, line: { color: C.bg } });
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 0.08, fill: { color: "9B59B6" }, line: { color: "9B59B6" } });
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0.08, w: 10, h: 0.75, fill: { color: C.midCard }, line: { color: C.midCard } });
s.addText("POLYENE ANTIFUNGALS", { x: 0.3, y: 0.1, w: 7.5, h: 0.71, fontSize: 24, bold: true, color: "9B59B6", fontFace: "Calibri", align: "left", valign: "middle" });
s.addShape(pres.shapes.ROUNDED_RECTANGLE, { x: 7.6, y: 0.17, w: 2.05, h: 0.45, fill: { color: "9B59B6" }, line: { color: "9B59B6" }, rectRadius: 0.08 });
s.addText("Fungicidal", { x: 7.6, y: 0.17, w: 2.05, h: 0.45, fontSize: 12, bold: true, color: C.white, fontFace: "Calibri", align: "center", valign: "middle" });
// MOA + image
s.addShape(pres.shapes.RECTANGLE, { x: 0.2, y: 0.95, w: 9.6, h: 0.65, fill: { color: C.midCard }, line: { color: "9B59B6" }, lineSize: 1.5 });
s.addText([
{ text: "MECHANISM: ", options: { bold: true, color: "9B59B6" } },
{ text: "Bind ergosterol in fungal cell membrane → form transmembrane pores → leakage of K⁺, Mg²⁺, amino acids, sugars → cell death. Selectivity based on higher affinity for ergosterol vs. cholesterol.", options: { color: C.offwhite } }
], { x: 0.35, y: 0.97, w: 9.3, h: 0.61, fontSize: 11.5, fontFace: "Calibri", valign: "middle" });
// Nystatin card
s.addShape(pres.shapes.RECTANGLE, { x: 0.2, y: 1.72, w: 4.5, h: 3.5, fill: { color: C.darkCard }, line: { color: "27AE60" }, lineSize: 2 });
s.addShape(pres.shapes.RECTANGLE, { x: 0.2, y: 1.72, w: 4.5, h: 0.38, fill: { color: "27AE60" }, line: { color: "27AE60" } });
s.addText("NYSTATIN", { x: 0.25, y: 1.73, w: 4.4, h: 0.36, fontSize: 14, bold: true, color: C.white, fontFace: "Calibri", valign: "middle" });
const nysRows = [
["Source", "Streptomyces noursei — polyene macrolide"],
["Spectrum", "Candida spp. (skin, mucosal). NOT active against dermatophytes."],
["Topical Use", "Cutaneous candidiasis, candidal intertrigo, diaper dermatitis, perianal candidiasis, vaginal candidiasis (pessaries)"],
["Oral Use", "Oral/GI candidiasis (not absorbed — local effect).\nOropharyngeal thrush: oral suspension 100,000 U/mL"],
["Adverse FX", "Topical: minimal irritation.\nOral: nausea, GI upset. Not used IV (too toxic)."],
];
nysRows.forEach((row, i) => {
const y = 2.18 + i * 0.58;
s.addShape(pres.shapes.RECTANGLE, { x: 0.25, y, w: 1.1, h: 0.52, fill: { color: "27AE60" }, line: { color: "27AE60" } });
s.addText(row[0], { x: 0.25, y, w: 1.1, h: 0.52, fontSize: 10, bold: true, color: C.white, fontFace: "Calibri", align: "center", valign: "middle" });
s.addText(row[1], { x: 1.42, y: y + 0.03, w: 3.2, h: 0.5, fontSize: 9.5, color: C.offwhite, fontFace: "Calibri", valign: "top" });
});
// AmB image + card
const ambImg = imgs[1];
if (ambImg && ambImg.base64) {
s.addImage({ data: ambImg.base64, x: 4.9, y: 1.72, w: 2.5, h: 1.95 });
s.addText("Amphotericin B pore mechanism", { x: 4.9, y: 3.65, w: 2.5, h: 0.25, fontSize: 7.5, color: "7FB3C8", fontFace: "Calibri", align: "center", italic: true });
}
s.addShape(pres.shapes.RECTANGLE, { x: 4.9, y: 3.95, w: 4.9, h: 1.27, fill: { color: C.darkCard }, line: { color: "9B59B6" }, lineSize: 1.5 });
s.addShape(pres.shapes.RECTANGLE, { x: 4.9, y: 3.95, w: 4.9, h: 0.3, fill: { color: "9B59B6" }, line: { color: "9B59B6" } });
s.addText("AMPHOTERICIN B — TOPICAL", { x: 4.95, y: 3.96, w: 4.8, h: 0.28, fontSize: 11, bold: true, color: C.white, fontFace: "Calibri", valign: "middle" });
s.addText("3% cream/lotion — cutaneous candidiasis, mucocutaneous candidiasis\nNOT effective for dermatophyte skin infections\nIV formulation reserved for severe/systemic fungal infections\nNephrotoxic IV: pre-hydration required; liposomal form safer", {
x: 4.97, y: 4.28, w: 4.8, h: 0.92, fontSize: 9.5, color: C.offwhite, fontFace: "Calibri"
});
}
// ─────────────────────────────────────────────
// SLIDE 7 – OTHER TOPICAL AGENTS
// ─────────────────────────────────────────────
{
let s = pres.addSlide();
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.bg }, line: { color: C.bg } });
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 0.08, fill: { color: "E67E22" }, line: { color: "E67E22" } });
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0.08, w: 10, h: 0.75, fill: { color: C.midCard }, line: { color: C.midCard } });
s.addText("OTHER TOPICAL ANTIFUNGAL AGENTS", { x: 0.3, y: 0.1, w: 9.4, h: 0.71, fontSize: 22, bold: true, color: "E67E22", fontFace: "Calibri", align: "left", valign: "middle" });
const agents = [
{
name: "CICLOPIROX OLAMINE", color: "E67E22",
text: "Hydroxypyridinone class (unique MOA)\nMechanism: Chelates metal ions → inhibits fungal enzymes\nSpectrum: Broadest topical — dermatophytes, Candida, Malassezia, bacteria\nForms: 1% cream/lotion (tinea), 8% nail lacquer (onychomycosis)\nIndications: Tinea corporis, pedis, cruris, versicolor, onychomycosis, seborrheic dermatitis"
},
{
name: "TOLNAFTATE 1%", color: C.lightblue,
text: "Mechanism: Inhibits squalene epoxidase (like allylamines)\nSpectrum: Dermatophytes ONLY — no activity vs Candida\nForms: Cream, powder, solution, spray\nUse: Tinea pedis, corporis, cruris (mild-moderate)\nMost useful as prophylaxis in tinea pedis"
},
{
name: "WHITFIELD'S OINTMENT", color: C.accent1,
text: "Keratolytic combination: Benzoic acid 6% + Salicylic acid 3%\nMechanism: Keratolytic (removes infected keratin) + mild antifungal\nUse: Tinea pedis, tinea corporis (moccasin-type)\nBenefits: Cheap, widely available; reduces hyperkeratotic lesions\nLimitations: Staining, irritation; less effective than modern agents"
},
{
name: "UNDECYLENIC ACID & ZINC", color: "8E44AD",
text: "Mechanism: Fatty acid — interferes with fungal cell growth\nForms: Cream, powder, spray (OTC)\nUse: Tinea pedis, tinea cruris (mild)\nLess potent than azoles or allylamines; often in OTC foot preparations"
},
{
name: "SELENIUM SULFIDE 2.5%", color: "C0392B",
text: "Mechanism: Cytostatic — reduces Malassezia overgrowth\nUse: Pityriasis versicolor (tinea versicolor), seborrheic dermatitis\nForms: 2.5% lotion/shampoo; applied for 10 min then rinsed\nNote: Apply weekly for 4 weeks. Avoid on inflamed/broken skin."
},
{
name: "EFINACONAZOLE 10% & TAVABOROLE 5%", color: "16A085",
text: "Newer topical agents approved for onychomycosis\nEfinaconazole: triazole antifungal nail solution\nTavaborole: oxaborole — boron-based, excellent nail penetration\nBoth applied daily × 48 weeks; can be used over nail polish\nCure rate 6–18% — adjunct to oral therapy for mild nail disease"
},
];
agents.forEach((ag, i) => {
const col = i % 2;
const row = Math.floor(i / 2);
const x = col === 0 ? 0.2 : 5.15;
const y = 0.97 + row * 1.56;
s.addShape(pres.shapes.RECTANGLE, { x, y, w: 4.7, h: 1.46, fill: { color: C.darkCard }, line: { color: ag.color }, lineSize: 1.5 });
s.addShape(pres.shapes.RECTANGLE, { x, y, w: 4.7, h: 0.3, fill: { color: ag.color }, line: { color: ag.color } });
s.addText(ag.name, { x: x + 0.08, y: y + 0.01, w: 4.54, h: 0.28, fontSize: 9.5, bold: true, color: C.white, fontFace: "Calibri", valign: "middle" });
s.addText(ag.text, { x: x + 0.1, y: y + 0.33, w: 4.5, h: 1.1, fontSize: 9, color: C.offwhite, fontFace: "Calibri", valign: "top" });
});
}
// ─────────────────────────────────────────────
// SLIDE 8 – DISEASE-SPECIFIC TREATMENT (with clinical images)
// ─────────────────────────────────────────────
{
let s = pres.addSlide();
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.bg }, line: { color: C.bg } });
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 0.08, fill: { color: C.accent2 }, line: { color: C.accent2 } });
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0.08, w: 10, h: 0.75, fill: { color: C.midCard }, line: { color: C.midCard } });
s.addText("DISEASE-SPECIFIC TREATMENT APPROACH", { x: 0.3, y: 0.1, w: 9.4, h: 0.71, fontSize: 20, bold: true, color: C.accent2, fontFace: "Calibri", align: "left", valign: "middle" });
const diseases = [
{ name: "Tinea Pedis\n(Athlete's Foot)", first: "Terbinafine 1% cream × 1–2 wks\nClotrimazole/Miconazole 2–4 wks", second: "Terbinafine oral 250mg/day × 2 wks\nItraconazole 100mg/day × 4 wks" },
{ name: "Tinea Corporis\n(Ringworm)", first: "Any topical azole or allylamine × 2–4 wks\nExtend 1 wk beyond healing", second: "Griseofulvin 500mg/day × 4–6 wks\nTerbinafine oral × 1–2 wks" },
{ name: "Tinea Cruris\n(Jock Itch)", first: "Terbinafine cream × 1 wk\nClotrimazole/Miconazole × 2 wks\nKeep area dry", second: "Griseofulvin or Terbinafine oral\n× 2–4 wks" },
{ name: "Tinea Capitis\n(Scalp Ringworm)", first: "Topical alone INSUFFICIENT\nKetoconazole 2% shampoo (adjunct)", second: "Griseofulvin 15–20mg/kg/day × 6–8 wks (DOC)\nTerbinafine (Trichophyton)\nItraconazole (Microsporum)" },
{ name: "Tinea Versicolor\n(Malassezia)", first: "Selenium sulfide 2.5% × 2–4 wks\nKetoconazole 2% shampoo\nClotrimazole/Miconazole cream", second: "Itraconazole 200mg/day × 5–7 days\nFluconazole 300mg single dose\nItraconazole 200mg once/month (prophylaxis)" },
{ name: "Cutaneous\nCandidiasis", first: "Nystatin cream (any Candida)\nClotrimazole/Miconazole cream\nCiclopirox olamine", second: "Fluconazole 150mg/week × 4–6 wks\n(severe or resistant)" },
];
// Add clinical images in a strip at top right area
const tinPedisImg = imgs[2];
if (tinPedisImg && tinPedisImg.base64) {
s.addImage({ data: tinPedisImg.base64, x: 8.2, y: 0.97, w: 1.6, h: 1.3, rounding: false });
s.addText("Tinea pedis", { x: 8.2, y: 2.27, w: 1.6, h: 0.2, fontSize: 7, color: "7FB3C8", fontFace: "Calibri", align: "center", italic: true });
}
const onychImg = imgs[3];
if (onychImg && onychImg.base64) {
s.addImage({ data: onychImg.base64, x: 8.2, y: 2.55, w: 1.6, h: 1.3 });
s.addText("Onychomycosis", { x: 8.2, y: 3.85, w: 1.6, h: 0.2, fontSize: 7, color: "7FB3C8", fontFace: "Calibri", align: "center", italic: true });
}
diseases.forEach((d, i) => {
const y = 0.97 + i * 0.77;
s.addShape(pres.shapes.RECTANGLE, { x: 0.2, y, w: 7.8, h: 0.71, fill: { color: i % 2 === 0 ? C.darkCard : C.midCard }, line: { color: C.midCard } });
s.addShape(pres.shapes.RECTANGLE, { x: 0.2, y, w: 1.75, h: 0.71, fill: { color: "C0392B" }, line: { color: "C0392B" } });
s.addText(d.name, { x: 0.22, y, w: 1.71, h: 0.71, fontSize: 9.5, bold: true, color: C.white, fontFace: "Calibri", align: "center", valign: "middle" });
s.addShape(pres.shapes.RECTANGLE, { x: 1.97, y, w: 0.55, h: 0.31, fill: { color: C.pill }, line: { color: C.pill } });
s.addText("1st", { x: 1.97, y, w: 0.55, h: 0.31, fontSize: 8, bold: true, color: C.white, fontFace: "Calibri", align: "center", valign: "middle" });
s.addText(d.first, { x: 2.55, y: y + 0.03, w: 5.3, h: 0.3, fontSize: 8.5, color: C.offwhite, fontFace: "Calibri" });
s.addShape(pres.shapes.RECTANGLE, { x: 1.97, y: y + 0.35, w: 0.55, h: 0.28, fill: { color: "E67E22" }, line: { color: "E67E22" } });
s.addText("2nd", { x: 1.97, y: y + 0.35, w: 0.55, h: 0.28, fontSize: 8, bold: true, color: C.white, fontFace: "Calibri", align: "center", valign: "middle" });
s.addText(d.second, { x: 2.55, y: y + 0.37, w: 5.3, h: 0.3, fontSize: 8.5, color: "7FB3C8", fontFace: "Calibri" });
});
}
// ─────────────────────────────────────────────
// SLIDE 9 – ONYCHOMYCOSIS (Nail Infections)
// ─────────────────────────────────────────────
{
let s = pres.addSlide();
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.bg }, line: { color: C.bg } });
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 0.08, fill: { color: "F39C12" }, line: { color: "F39C12" } });
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0.08, w: 10, h: 0.75, fill: { color: C.midCard }, line: { color: C.midCard } });
s.addText("ONYCHOMYCOSIS — TREATMENT OF NAIL FUNGAL INFECTIONS", { x: 0.3, y: 0.1, w: 9.4, h: 0.71, fontSize: 18, bold: true, color: "F39C12", fontFace: "Calibri", align: "left", valign: "middle" });
// Key note
s.addShape(pres.shapes.RECTANGLE, { x: 0.2, y: 0.95, w: 9.6, h: 0.58, fill: { color: C.midCard }, line: { color: "F39C12" }, lineSize: 1.5 });
s.addText("Onychomycosis (tinea unguium) is the most common nail disorder. Caused by T. rubrum (>90%). Nail infections are difficult to cure — poor antifungal penetration into nail + slow nail turnover require prolonged therapy with high recurrence rates.", {
x: 0.35, y: 0.97, w: 9.3, h: 0.54, fontSize: 11, color: C.offwhite, fontFace: "Calibri", valign: "middle"
});
// Oral drugs comparison table
s.addShape(pres.shapes.RECTANGLE, { x: 0.2, y: 1.62, w: 9.6, h: 0.35, fill: { color: "F39C12" }, line: { color: "F39C12" } });
["DRUG", "DOSE", "FINGERNAILS", "TOENAILS", "CURE RATE", "NOTES"].forEach((h, i) => {
const widths = [1.6, 2.0, 1.4, 1.4, 1.2, 2.0];
const x = 0.2 + widths.slice(0, i).reduce((a, b) => a + b, 0);
s.addText(h, { x, y: 1.63, w: widths[i], h: 0.33, fontSize: 10, bold: true, color: C.bg, fontFace: "Calibri", align: "center", valign: "middle" });
});
const rows = [
["Terbinafine 250mg", "250 mg/day\ncontinuous", "6 weeks", "12 weeks", "~80% fingers\n~70% toes", "DOC; fungicidal; superior mycologic cure"],
["Itraconazole\n(continuous)", "200 mg/day", "6 weeks", "12 weeks", "~70%", "Pulse or continuous; check for drug interactions"],
["Itraconazole\n(pulse)", "200 mg BD\n1 wk/month", "2 pulses", "3 pulses", "~60–70%", "Better patient compliance; cheaper"],
["Fluconazole", "150–300 mg\nonce/week", "6 months", "9–12 months", "~50%", "Off-label; useful when other drugs not tolerated"],
];
rows.forEach((row, ri) => {
const widths = [1.6, 2.0, 1.4, 1.4, 1.2, 2.0];
const y = 2.05 + ri * 0.66;
const bg = ri % 2 === 0 ? C.darkCard : C.midCard;
row.forEach((cell, ci) => {
const x = 0.2 + widths.slice(0, ci).reduce((a, b) => a + b, 0);
s.addShape(pres.shapes.RECTANGLE, { x, y, w: widths[ci], h: 0.6, fill: { color: bg }, line: { color: "F39C12", transparency: 70 } });
s.addText(cell, { x: x + 0.05, y, w: widths[ci] - 0.1, h: 0.6, fontSize: ci === 0 ? 10 : 9, bold: ci === 0, color: ci === 0 ? "F39C12" : C.offwhite, fontFace: "Calibri", align: "center", valign: "middle" });
});
});
// Topical section
s.addShape(pres.shapes.RECTANGLE, { x: 0.2, y: 4.75, w: 9.6, h: 0.6, fill: { color: C.darkCard }, line: { color: C.lightblue }, lineSize: 1.5 });
s.addText([
{ text: "TOPICAL: ", options: { bold: true, color: C.lightblue } },
{ text: "Ciclopirox 8% nail lacquer (48 wks) — mild disease. Efinaconazole 10% solution (48 wks). Tavaborole 5% solution (48 wks). Amorolfine 5% nail lacquer (6–12 months). All have low cure rates (~6–18%) — suitable only for mild superficial disease.", options: { color: C.offwhite } }
], { x: 0.35, y: 4.77, w: 9.3, h: 0.56, fontSize: 10.5, fontFace: "Calibri", valign: "middle" });
}
// ─────────────────────────────────────────────
// SLIDE 10 – SUMMARY / KEY POINTS
// ─────────────────────────────────────────────
{
let s = pres.addSlide();
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.bg }, line: { color: C.bg } });
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 0.08, fill: { color: C.accent1 }, line: { color: C.accent1 } });
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0.08, w: 10, h: 0.75, fill: { color: C.midCard }, line: { color: C.midCard } });
s.addText("KEY CLINICAL POINTS & SUMMARY", { x: 0.3, y: 0.1, w: 9.4, h: 0.71, fontSize: 22, bold: true, color: C.accent1, fontFace: "Calibri", align: "left", valign: "middle" });
const keyPoints = [
{ icon: "◈", color: C.accent1, text: "Griseofulvin: DOC for tinea capitis in children; only active against dermatophytes; fungistatic; needs long therapy (6–8 wks scalp, 6–12 months nails); enzyme inducer." },
{ icon: "◈", color: C.lightblue, text: "Azoles (topical): First choice for most superficial dermatophyte and Candida skin infections. Ketoconazole oral — avoid due to hepatotoxicity." },
{ icon: "◈", color: C.accent1, text: "Terbinafine: Fungicidal allylamine — superior to griseofulvin and azoles for onychomycosis and most adult dermatophytoses. DOC for nail infections." },
{ icon: "◈", color: "F39C12", text: "Nystatin: Only for Candida infections. NOT for dermatophytes. Topical & oral (not absorbed) forms available." },
{ icon: "◈", color: "9B59B6", text: "Polyenes bind ergosterol (pore formation). Azoles inhibit ergosterol synthesis (14α-demethylase). Allylamines inhibit squalene epoxidase. Griseofulvin inhibits microtubules." },
{ icon: "◈", color: C.accent2, text: "Tinea capitis requires systemic therapy — topical alone insufficient. Tinea versicolor: selenium sulfide 2.5% or itraconazole. Recurrence common." },
{ icon: "◈", color: "27AE60", text: "Onychomycosis: Terbinafine oral (12 wks toenails, 6 wks fingernails) — highest cure rate. Itraconazole pulse therapy equally effective, better compliance." },
];
keyPoints.forEach((kp, i) => {
const y = 0.97 + i * 0.65;
s.addShape(pres.shapes.RECTANGLE, { x: 0.2, y, w: 9.6, h: 0.6, fill: { color: i % 2 === 0 ? C.darkCard : C.midCard }, line: { color: C.midCard } });
s.addShape(pres.shapes.RECTANGLE, { x: 0.2, y, w: 0.35, h: 0.6, fill: { color: kp.color }, line: { color: kp.color } });
s.addText(kp.icon, { x: 0.2, y, w: 0.35, h: 0.6, fontSize: 14, color: C.white, fontFace: "Calibri", align: "center", valign: "middle" });
s.addText(kp.text, { x: 0.62, y: y + 0.05, w: 9.1, h: 0.52, fontSize: 10.5, color: C.offwhite, fontFace: "Calibri", valign: "top" });
});
}
// Save
const outPath = "/home/daytona/workspace/antifungal-pptx/Antifungal_Skin_Mycosis_KDTripathi.pptx";
pres.writeFile({ fileName: outPath }).then(() => {
console.log("SUCCESS: " + outPath);
}).catch(e => {
console.error("FAILED:", e);
});
cd /home/daytona/workspace/antifungal-pptx && node create_pptx.js 2>&1