Hepatitis c
"hepatitis C"[MeSH Terms] AND treatment
Hepatitis C 2025 2026 treatment guidelines DAA update
| Protein | Function |
|---|---|
| Core + E1/E2 (envelope) | Structural proteins |
| NS2 | Transmembrane protein |
| NS3 | Protease + RNA helicase activity |
| NS4A/B | Cofactors for NS3 |
| NS5A | Interferon-resistance protein |
| NS5B | RNA-dependent RNA polymerase (replication) |
| Test | What it Detects | Notes |
|---|---|---|
| Anti-HCV EIA (2nd gen) | Antibodies to core, E1/E2, NS3, NS4 | Does NOT distinguish acute, chronic, or resolved; detects 50-70% at symptom onset, remainder 3-6 weeks later |
| HCV RNA (RT-PCR) | Circulating viral RNA | Best for acute infection, monitoring therapy, confirming active infection |
| HCV genotyping | Genotype 1-6 | Guides treatment duration and regimen |
| HCV core antigen assay | Core protein | Less sensitive than RNA assays |
| Class | Target | Examples |
|---|---|---|
| NS3/4A Protease Inhibitors | Viral protease | Boceprevir, telaprevir, simeprevir, glecaprevir, voxilaprevir |
| NS5A Inhibitors | NS5A protein | Ledipasvir, pibrentasvir, velpatasvir |
| NS5B Polymerase Inhibitors | RNA polymerase | Sofosbuvir |
| Complication | Prevalence/Risk |
|---|---|
| Chronic infection | ~75% of acute cases |
| Cirrhosis | ~20% of chronic cases |
| HCC | 1-5% per year in cirrhosis |
| Cryoglobulinemia | Common extrahepatic; linked to glomerulonephritis, vasculitis |
| Post-LT recurrence | Near-universal pre-DAA era; now manageable |
| Feature | HCV | HBV | HAV |
|---|---|---|---|
| Genome | RNA | DNA | RNA |
| Chronicity rate | ~75% | ~5-10% (adults) | None |
| Vaccine available | No | Yes | Yes |
| Primary transmission | Blood | Blood/sexual/perinatal | Fecal-oral |
| Main treatment | DAAs (curative) | Antivirals (suppressive) | Supportive |
Sources: Jawetz, Melnick & Adelberg's Medical Microbiology 28e; Henry's Clinical Diagnosis and Management by Laboratory Methods; Sleisenger & Fordtran's Gastrointestinal and Liver Disease; 2025 KASL Clinical Practice Guidelines; FDA/EMA 2025-2026 regulatory updates
Make presentation with photo
mkdir -p /home/daytona/workspace/hcv-presentation && ls /home/daytona/workspace/
hepatitis C virus HCV microscopy liver histology free image wikimedia
node /home/daytona/skills/shared/scripts/fetch_images.js \ "https://upload.wikimedia.org/wikipedia/commons/3/3b/HCV_EM_picture_2.png" \ "https://upload.wikimedia.org/wikipedia/commons/thumb/3/3e/HCV.png/960px-HCV.png" \ "https://upload.wikimedia.org/wikipedia/commons/e/e6/Histopathology_of_acute_hepatitis.jpg" \ "https://upload.wikimedia.org/wikipedia/commons/6/64/5_11041788512294_sl_2.png" \ 2>/dev/null | head -c 2000
node /home/daytona/skills/shared/scripts/fetch_images.js "https://upload.wikimedia.org/wikipedia/commons/3/3b/HCV_EM_picture_2.png" 2>/dev/null | python3 -c "import sys,json; d=json.load(sys.stdin); print('OK' if d[0].get('base64') else 'FAIL', len(d[0].get('base64','')))"
~/hcv-presentation/build.js
const pptxgen = require("pptxgenjs");
const { execSync } = require("child_process");
// Helper: fetch one image as base64
function fetchImg(url) {
try {
const result = execSync(
`node /home/daytona/skills/shared/scripts/fetch_images.js "${url}"`,
{ timeout: 40000 }
).toString();
const parsed = JSON.parse(result);
return parsed[0] && parsed[0].base64 ? parsed[0].base64 : null;
} catch (e) {
console.warn("Image fetch failed:", url, e.message);
return null;
}
}
// Fetch images
console.log("Fetching images...");
const imgEM = fetchImg("https://upload.wikimedia.org/wikipedia/commons/3/3b/HCV_EM_picture_2.png");
console.log("EM image:", imgEM ? "OK" : "FAIL");
const imgDiagram = fetchImg("https://upload.wikimedia.org/wikipedia/commons/thumb/3/3e/HCV.png/960px-HCV.png");
console.log("Diagram image:", imgDiagram ? "OK" : "FAIL");
const imgHisto = fetchImg("https://upload.wikimedia.org/wikipedia/commons/e/e6/Histopathology_of_acute_hepatitis.jpg");
console.log("Histo image:", imgHisto ? "OK" : "FAIL");
// ─── COLORS ─────────────────────────────────────────────────────────────────
const C = {
darkBg: "0B1E2D", // deep navy
midBg: "102A3F", // mid navy
accent: "E84855", // vivid red (HCV danger feel)
accentSoft:"C0392B", // darker red
gold: "F5A623", // warm gold accent
white: "FFFFFF",
lightGray: "D6DDE8",
textMid: "8DA4BF",
cardBg: "153248", // card panels
};
// ─── HELPERS ────────────────────────────────────────────────────────────────
function darkSlide(slide) {
slide.background = { color: C.darkBg };
}
function midSlide(slide) {
slide.background = { color: C.midBg };
}
function addSectionLabel(slide, label) {
slide.addShape(pres.shapes.RECTANGLE, {
x: 0, y: 0, w: 10, h: 0.06, fill: { color: C.accent }, line: { color: C.accent }
});
slide.addText(label.toUpperCase(), {
x: 0.35, y: 0.12, w: 4, h: 0.28,
fontSize: 8, bold: true, color: C.accent, charSpacing: 3, margin: 0
});
}
function addSlideTitle(slide, title) {
slide.addText(title, {
x: 0.35, y: 0.48, w: 9.3, h: 0.65,
fontSize: 26, bold: true, color: C.white, margin: 0
});
slide.addShape(pres.shapes.RECTANGLE, {
x: 0.35, y: 1.16, w: 1.1, h: 0.05,
fill: { color: C.accent }, line: { color: C.accent }
});
}
function addCard(slide, x, y, w, h, title, lines, titleColor) {
slide.addShape(pres.shapes.RECTANGLE, {
x, y, w, h, fill: { color: C.cardBg },
shadow: { type: "outer", color: "000000", blur: 8, offset: 3, angle: 135, opacity: 0.25 }
});
slide.addShape(pres.shapes.RECTANGLE, {
x, y, w, h: 0.04, fill: { color: titleColor || C.accent }, line: { color: titleColor || C.accent }
});
slide.addText(title, {
x: x + 0.15, y: y + 0.08, w: w - 0.3, h: 0.35,
fontSize: 11, bold: true, color: titleColor || C.gold, margin: 0
});
const bullets = lines.map((l, i) => ({
text: l,
options: { bullet: { code: "2022" }, color: C.lightGray, fontSize: 9.5, breakLine: i < lines.length - 1 }
}));
slide.addText(bullets, {
x: x + 0.15, y: y + 0.48, w: w - 0.3, h: h - 0.55,
fontSize: 9.5, color: C.lightGray, valign: "top", margin: 0
});
}
// ─── PRES ────────────────────────────────────────────────────────────────────
const pres = new pptxgen();
pres.layout = "LAYOUT_16x9";
pres.title = "Hepatitis C – A Comprehensive Clinical Review";
pres.author = "Orris Medical";
// ══════════════════════════════════════════════════════
// SLIDE 1 – TITLE
// ══════════════════════════════════════════════════════
{
const s = pres.addSlide();
darkSlide(s);
// Full-width red bar at top
s.addShape(pres.shapes.RECTANGLE, { x:0, y:0, w:10, h:0.55, fill:{ color: C.accent }, line:{color:C.accent} });
s.addText("HEPATITIS C", {
x:0, y:0.04, w:10, h:0.47, align:"center",
fontSize:18, bold:true, color:C.white, charSpacing:8, margin:0
});
// Virus EM image
if (imgEM) {
s.addImage({ data: imgEM, x:6.4, y:0.7, w:3.3, h:3.3, rounding:true });
}
// Main title
s.addText("A Comprehensive\nClinical Review", {
x:0.5, y:0.9, w:5.7, h:1.8,
fontSize:36, bold:true, color:C.white, valign:"middle", margin:0
});
s.addShape(pres.shapes.RECTANGLE, { x:0.5, y:2.75, w:2.2, h:0.06, fill:{color:C.gold}, line:{color:C.gold} });
s.addText("Virology · Epidemiology · Pathogenesis · Diagnosis · Treatment", {
x:0.5, y:2.9, w:5.8, h:0.4, fontSize:11, color:C.textMid, italic:true, margin:0
});
s.addText("June 2026 | Sources: Jawetz Microbiology · Henry's Lab Methods · Sleisenger & Fordtran's GI", {
x:0.5, y:5.1, w:9, h:0.35, fontSize:8, color:C.textMid, italic:true, margin:0
});
}
// ══════════════════════════════════════════════════════
// SLIDE 2 – OVERVIEW / KEY FACTS
// ══════════════════════════════════════════════════════
{
const s = pres.addSlide();
midSlide(s);
addSectionLabel(s, "Overview");
addSlideTitle(s, "What is Hepatitis C?");
const facts = [
["RNA Virus", "Flaviviridae family\nPositive-sense ssRNA genome\nEnters hepatocytes via CD81 receptor"],
["Global Burden", "~70 million chronic carriers worldwide\n~3 million in the United States\nLeading cause of liver cirrhosis & HCC"],
["Chronicity", "~75% of acute infections\nbecome chronic\n(vs. 5-10% for HBV)"],
["Cure Rate", "Direct-acting antivirals (DAAs)\nachieve >95% cure (SVR)\nacross all genotypes"],
];
const cols = [[0.3,1.4,4.5,3.8],[5.0,1.4,4.5,3.8],[0.3,3.45,4.5,1.9],[5.0,3.45,4.5,1.9]];
facts.forEach(([title, txt], i) => {
const [x,y,w,h] = cols[i];
s.addShape(pres.shapes.RECTANGLE, { x,y,w,h, fill:{color:C.cardBg},
shadow:{type:"outer",color:"000000",blur:8,offset:3,angle:135,opacity:0.2} });
s.addShape(pres.shapes.RECTANGLE, { x,y,w,h:0.04,fill:{color:C.accent},line:{color:C.accent} });
s.addText(title, { x:x+0.15,y:y+0.08,w:w-0.3,h:0.32, fontSize:12,bold:true,color:C.gold,margin:0 });
s.addText(txt, { x:x+0.15,y:y+0.45,w:w-0.3,h:h-0.55, fontSize:10.5,color:C.lightGray,valign:"top",margin:0 });
});
}
// ══════════════════════════════════════════════════════
// SLIDE 3 – VIROLOGY
// ══════════════════════════════════════════════════════
{
const s = pres.addSlide();
midSlide(s);
addSectionLabel(s, "Virology");
addSlideTitle(s, "HCV Structure & Proteins");
if (imgDiagram) {
s.addImage({ data: imgDiagram, x:5.9, y:1.35, w:3.8, h:3.8 });
s.addText("HCV viral structure diagram", {
x:5.9,y:5.2,w:3.8,h:0.25,fontSize:7,color:C.textMid,align:"center",italic:true,margin:0
});
}
const proteins = [
{ name:"Core / E1 / E2", role:"Structural proteins; E2 binds CD81 receptor" },
{ name:"NS2", role:"Transmembrane protein" },
{ name:"NS3", role:"Protease + RNA helicase — key DAA target" },
{ name:"NS4A/B", role:"NS3 cofactors" },
{ name:"NS5A", role:"Interferon-resistance protein — DAA target" },
{ name:"NS5B", role:"RNA-dependent RNA polymerase (replication)" },
];
proteins.forEach((p, i) => {
const y = 1.38 + i * 0.64;
s.addShape(pres.shapes.RECTANGLE, { x:0.3,y,w:5.3,h:0.55, fill:{color:C.cardBg} });
s.addShape(pres.shapes.RECTANGLE, { x:0.3,y,w:0.06,h:0.55, fill:{color:C.accent},line:{color:C.accent} });
s.addText(p.name, { x:0.5,y:y+0.05,w:1.9,h:0.22, fontSize:10,bold:true,color:C.gold,margin:0 });
s.addText(p.role, { x:0.5,y:y+0.27,w:4.8,h:0.24, fontSize:9,color:C.lightGray,margin:0 });
});
s.addShape(pres.shapes.RECTANGLE, { x:0.3,y:5.22,w:5.3,h:0.26, fill:{color:"1A3A52"} });
s.addText("High mutation rate (no proofreading by NS5B) → 6 genotypes, multiple subtypes", {
x:0.45,y:5.24,w:5.1,h:0.24, fontSize:8.5,color:C.gold,bold:true,italic:true,margin:0
});
}
// ══════════════════════════════════════════════════════
// SLIDE 4 – GENOTYPES
// ══════════════════════════════════════════════════════
{
const s = pres.addSlide();
midSlide(s);
addSectionLabel(s, "Virology");
addSlideTitle(s, "HCV Genotypes & Geographic Distribution");
const genos = [
{ g:"1a", region:"North America (dominant)", note:"Most resistant to IFN-based therapy (48 wk)" },
{ g:"1b", region:"Europe (dominant)", note:"Most resistant; genotype 1b linked to severe post-LT recurrence" },
{ g:"2", region:"USA, Japan, Europe", note:"Better IFN response (24 wk)" },
{ g:"3", region:"South Asia, Australia", note:"Associated with steatosis; IFN-sensitive" },
{ g:"4", region:"Africa, Middle East", note:"Unique to Africa; IFN-resistant (48 wk)" },
{ g:"5", region:"South Africa", note:"Unique to Africa" },
{ g:"6", region:"Southeast Asia", note:"IFN-sensitive" },
];
genos.forEach((g, i) => {
const x = i < 4 ? 0.3 : 5.2;
const y = 1.38 + (i < 4 ? i : i - 4) * 0.95;
const w = i < 4 ? 4.6 : 4.5;
s.addShape(pres.shapes.RECTANGLE, { x,y,w,h:0.82, fill:{color:C.cardBg} });
s.addShape(pres.shapes.RECTANGLE, { x,y,w:0.55,h:0.82, fill:{color:C.accent},line:{color:C.accent} });
s.addText(`GT ${g.g}`, { x:x+0.04,y:y+0.2,w:0.5,h:0.42, fontSize:13,bold:true,color:C.white,align:"center",margin:0 });
s.addText(g.region, { x:x+0.65,y:y+0.06,w:w-0.75,h:0.3, fontSize:10.5,bold:true,color:C.lightGray,margin:0 });
s.addText(g.note, { x:x+0.65,y:y+0.38,w:w-0.75,h:0.38, fontSize:9,color:C.textMid,margin:0 });
});
s.addShape(pres.shapes.RECTANGLE, { x:5.2,y:4.28,w:4.5,h:0.82, fill:{color:"1A3A52"} });
s.addText("Pan-genotypic DAAs (sofosbuvir/velpatasvir, glecaprevir/pibrentasvir)\nnow eliminate the need for genotyping in most settings", {
x:5.35,y:4.35,w:4.2,h:0.72, fontSize:9.5,color:C.gold,bold:true,valign:"middle",margin:0
});
}
// ══════════════════════════════════════════════════════
// SLIDE 5 – EPIDEMIOLOGY & TRANSMISSION
// ══════════════════════════════════════════════════════
{
const s = pres.addSlide();
midSlide(s);
addSectionLabel(s, "Epidemiology");
addSlideTitle(s, "Transmission & Risk Factors");
// Left column: transmission
addCard(s, 0.3, 1.38, 4.55, 3.95, "Transmission Routes", [
"Injection drug use — ~80% of new cases",
"Blood transfusions / transplants (pre-1990)",
"Hemodialysis patients (~10%)",
"Sexual transmission (~10% of cases)",
"Mother-to-child vertical: 3-10%",
"Needlestick / healthcare workers (~1%)",
"No transmission via breastfeeding",
"Tattoos, folk medicine (some countries)",
]);
// Right column: global burden
addCard(s, 5.1, 1.38, 4.55, 1.85, "Global Burden", [
"~1% world population infected",
"Africa subgroups up to 10% prevalence",
"Egypt ~20% (schistosomiasis campaign 1950s-80s)",
"South America & Asia: high prevalence areas",
]);
// Right bottom: incubation
s.addShape(pres.shapes.RECTANGLE, { x:5.1,y:3.42,w:4.55,h:1.91, fill:{color:C.cardBg},
shadow:{type:"outer",color:"000000",blur:8,offset:3,angle:135,opacity:0.2} });
s.addShape(pres.shapes.RECTANGLE, { x:5.1,y:3.42,w:4.55,h:0.04, fill:{color:C.gold},line:{color:C.gold} });
s.addText("Incubation & Seroconversion", { x:5.25,y:3.5,w:4.3,h:0.32, fontSize:11,bold:true,color:C.gold,margin:0 });
const timeline = [
["Incubation period", "avg. 6-7 weeks"],
["Exposure → seroconversion", "avg. 8-9 weeks"],
["Anti-HCV positive (90%)", "within 5 months"],
["Source unknown in", "10-50% of cases"],
];
timeline.forEach(([label, val], i) => {
const y = 3.88 + i * 0.3;
s.addText(label, { x:5.25,y,w:2.5,h:0.28, fontSize:9,color:C.textMid,margin:0 });
s.addText(val, { x:7.8,y,w:1.7,h:0.28, fontSize:9,bold:true,color:C.white,align:"right",margin:0 });
});
}
// ══════════════════════════════════════════════════════
// SLIDE 6 – PATHOGENESIS & NATURAL HISTORY
// ══════════════════════════════════════════════════════
{
const s = pres.addSlide();
midSlide(s);
addSectionLabel(s, "Pathogenesis");
addSlideTitle(s, "Natural History of HCV Infection");
if (imgHisto) {
s.addImage({ data: imgHisto, x:5.85, y:1.35, w:3.85, h:2.9 });
s.addText("Liver histopathology in acute hepatitis (H&E stain)", {
x:5.85,y:4.3,w:3.85,h:0.25,fontSize:7,color:C.textMid,align:"center",italic:true,margin:0
});
}
// Flowchart steps
const steps = [
{ label:"Acute Infection", pct:"100%", detail:"80% asymptomatic; 20-30% jaundice; 10-20% nonspecific symptoms", color: C.gold },
{ label:"Chronic Infection", pct:"~75%", detail:"Persistent viremia; elevated ALT in ~50%; symptoms absent for first 2 decades", color: C.accent },
{ label:"Cirrhosis", pct:"~20%", detail:"Of chronic cases; progressive inflammation → fibrosis → cirrhosis", color: "E05C67" },
{ label:"HCC / Liver Failure", pct:"1-5%/yr", detail:"HCC risk 1-5% per year in cirrhosis; HCC ONLY in cirrhotic patients", color: "C0392B" },
];
steps.forEach((st, i) => {
const y = 1.38 + i * 0.95;
s.addShape(pres.shapes.RECTANGLE, { x:0.3,y,w:5.25,h:0.82, fill:{color:C.cardBg} });
s.addShape(pres.shapes.RECTANGLE, { x:0.3,y,w:0.08,h:0.82, fill:{color:st.color},line:{color:st.color} });
s.addShape(pres.shapes.RECTANGLE, { x:3.9,y:y+0.1,w:1.4,h:0.55, fill:{color:"0E2235"},
shadow:{type:"outer",color:"000000",blur:4,offset:2,angle:135,opacity:0.2} });
s.addText(st.pct, { x:3.9,y:y+0.1,w:1.4,h:0.55, fontSize:16,bold:true,color:st.color,align:"center",valign:"middle",margin:0 });
s.addText(st.label, { x:0.5,y:y+0.05,w:3.3,h:0.3, fontSize:11,bold:true,color:C.white,margin:0 });
s.addText(st.detail, { x:0.5,y:y+0.37,w:3.3,h:0.42, fontSize:8.5,color:C.textMid,margin:0 });
if (i < steps.length - 1) {
s.addShape(pres.shapes.RECTANGLE, { x:0.82,y:y+0.82,w:0.08,h:0.13, fill:{color:C.textMid},line:{color:C.textMid} });
}
});
}
// ══════════════════════════════════════════════════════
// SLIDE 7 – DIAGNOSIS
// ══════════════════════════════════════════════════════
{
const s = pres.addSlide();
midSlide(s);
addSectionLabel(s, "Diagnosis");
addSlideTitle(s, "Laboratory Diagnosis of HCV");
const tests = [
{ name:"Anti-HCV EIA\n(2nd generation)", use:"Screening; detects antibodies to Core, E1/E2, NS3/NS4",
note:"Does NOT distinguish acute / chronic / resolved\n50-70% positive at symptom onset; rest by 3-6 wks\nWindow period: avg. 10-12 weeks", color:C.gold },
{ name:"HCV RNA\n(RT-PCR)", use:"Confirms active infection; monitors therapy; diagnoses acute infection early",
note:"Undetectable RNA = Sustained Virological Response (SVR)\nLTT tubes give higher readings than PPT tubes", color:C.accent },
{ name:"HCV Genotyping", use:"Determines genotype 1-6 for treatment planning",
note:"Guides regimen selection and duration\nGenotypes 1 & 4: more resistant to IFN (48 wk)\nLess critical with pan-genotypic DAAs", color:"5DADE2" },
{ name:"HCV Core Antigen", use:"Detects core protein; alternative to RNA",
note:"Less sensitive than HCV RNA assays\nUseful when molecular testing unavailable", color:C.textMid },
];
tests.forEach((t, i) => {
const x = i % 2 === 0 ? 0.3 : 5.2;
const y = i < 2 ? 1.38 : 3.55;
const w = 4.6;
s.addShape(pres.shapes.RECTANGLE, { x,y,w,h:1.85, fill:{color:C.cardBg},
shadow:{type:"outer",color:"000000",blur:8,offset:3,angle:135,opacity:0.2} });
s.addShape(pres.shapes.RECTANGLE, { x,y,w,h:0.04, fill:{color:t.color},line:{color:t.color} });
s.addText(t.name, { x:x+0.15,y:y+0.1,w:w-0.3,h:0.5, fontSize:11,bold:true,color:t.color,margin:0 });
s.addText(t.use, { x:x+0.15,y:y+0.62,w:w-0.3,h:0.3, fontSize:9,color:C.lightGray,bold:true,margin:0 });
s.addText(t.note, { x:x+0.15,y:y+0.97,w:w-0.3,h:0.8, fontSize:8.5,color:C.textMid,margin:0 });
});
}
// ══════════════════════════════════════════════════════
// SLIDE 8 – TREATMENT: DAAs
// ══════════════════════════════════════════════════════
{
const s = pres.addSlide();
midSlide(s);
addSectionLabel(s, "Treatment");
addSlideTitle(s, "Direct-Acting Antivirals (DAAs)");
// Three DAA classes
const classes = [
{ cls:"NS3/4A\nProtease Inhibitors", drugs:"Boceprevir, Telaprevir\nSimeprevir, Glecaprevir\nVoxilaprevir", mech:"Block viral protease → prevent\nprocessing of HCV polyprotein", color:C.accent },
{ cls:"NS5A\nInhibitors", drugs:"Ledipasvir\nPibrentasvir\nVelpatasvir", mech:"Inhibit NS5A replication\ncomplex assembly", color:C.gold },
{ cls:"NS5B\nPolymerase Inhibitors", drugs:"Sofosbuvir\n(nucleotide analogue)", mech:"Block RNA-dependent RNA\npolymerase → stop replication", color:"5DADE2" },
];
classes.forEach((c, i) => {
const x = 0.3 + i * 3.23;
s.addShape(pres.shapes.RECTANGLE, { x,y:1.38,w:3.05,h:3.9, fill:{color:C.cardBg},
shadow:{type:"outer",color:"000000",blur:10,offset:4,angle:135,opacity:0.25} });
s.addShape(pres.shapes.RECTANGLE, { x,y:1.38,w:3.05,h:0.06, fill:{color:c.color},line:{color:c.color} });
s.addText(c.cls, { x:x+0.15,y:1.48,w:2.75,h:0.65, fontSize:12,bold:true,color:c.color,margin:0 });
s.addShape(pres.shapes.RECTANGLE, { x:x+0.15,y:2.2,w:2.75,h:0.04, fill:{color:"1A3A52"},line:{color:"1A3A52"} });
s.addText("Mechanism", { x:x+0.15,y:2.3,w:2.75,h:0.24, fontSize:9,bold:true,color:C.textMid,charSpacing:2,margin:0 });
s.addText(c.mech, { x:x+0.15,y:2.58,w:2.75,h:0.7, fontSize:9,color:C.lightGray,margin:0 });
s.addText("Key Drugs", { x:x+0.15,y:3.35,w:2.75,h:0.24, fontSize:9,bold:true,color:C.textMid,charSpacing:2,margin:0 });
s.addText(c.drugs, { x:x+0.15,y:3.63,w:2.75,h:0.85, fontSize:9,color:C.lightGray,margin:0 });
});
// Bottom banner: outcomes
s.addShape(pres.shapes.RECTANGLE, { x:0.3,y:5.44,w:9.4,h:0.03, fill:{color:C.accent},line:{color:C.accent} });
}
// ══════════════════════════════════════════════════════
// SLIDE 9 – KEY REGIMENS & OUTCOMES
// ══════════════════════════════════════════════════════
{
const s = pres.addSlide();
midSlide(s);
addSectionLabel(s, "Treatment");
addSlideTitle(s, "Key Regimens & Clinical Outcomes");
const regimens = [
{ name:"Sofosbuvir /\nVelpatasvir\n(Epclusa)", detail:"Pan-genotypic\n12 weeks\nAll genotypes 1-6", color:C.accent },
{ name:"Glecaprevir /\nPibrentasvir\n(Maviret)", detail:"Pan-genotypic\n8 weeks (treatment-naive)\nAcute HCV: FDA-approved 2025", color:C.gold },
{ name:"SOF / VEL /\nVoxilaprevir\n(Vosevi)", detail:"Pan-genotypic\n12 weeks\nFor DAA-experienced patients", color:"5DADE2" },
];
regimens.forEach((r, i) => {
const x = 0.3 + i * 3.2;
s.addShape(pres.shapes.RECTANGLE, { x,y:1.38,w:3.0,h:2.6, fill:{color:C.cardBg} });
s.addShape(pres.shapes.RECTANGLE, { x,y:1.38,w:3.0,h:0.06, fill:{color:r.color},line:{color:r.color} });
s.addText(r.name, { x:x+0.15,y:1.48,w:2.7,h:0.75, fontSize:11.5,bold:true,color:r.color,margin:0 });
s.addText(r.detail, { x:x+0.15,y:2.28,w:2.7,h:1.0, fontSize:9.5,color:C.lightGray,margin:0 });
});
// SVR outcomes
s.addText("Outcomes with DAA Therapy — Sustained Virological Response (SVR)", {
x:0.3,y:4.12,w:9.4,h:0.35, fontSize:12,bold:true,color:C.white,margin:0
});
const outcomes = [
{ stat:">95%", label:"SVR rate\n(all genotypes)" },
{ stat:"0.27", label:"Hazard ratio for\nmortality reduction" },
{ stat:"0.26", label:"HR for decreased\nhepatic decompensation" },
{ stat:"0.29", label:"HR for reduced\nHCC incidence" },
];
outcomes.forEach((o, i) => {
const x = 0.3 + i * 2.38;
s.addShape(pres.shapes.RECTANGLE, { x,y:4.55,w:2.2,h:0.9, fill:{color:C.cardBg} });
s.addText(o.stat, { x,y:4.57,w:2.2,h:0.45, fontSize:20,bold:true,color:C.gold,align:"center",margin:0 });
s.addText(o.label, { x,y:4.99,w:2.2,h:0.42, fontSize:8,color:C.textMid,align:"center",margin:0 });
});
}
// ══════════════════════════════════════════════════════
// SLIDE 10 – COMPLICATIONS
// ══════════════════════════════════════════════════════
{
const s = pres.addSlide();
midSlide(s);
addSectionLabel(s, "Complications");
addSlideTitle(s, "Complications of Chronic HCV");
const comps = [
{ title:"Liver Cirrhosis", pct:"~20%", desc:"Of chronic cases; over 20+ years of infection\nPredictors: genotype 1b, high viral load, alcohol use, HIV co-infection", color:C.accent },
{ title:"Hepatocellular\nCarcinoma (HCC)", pct:"1-5%/yr", desc:"Occurs almost exclusively in cirrhotic patients\nHCV achieving SVR reduces HCC risk (HR 0.29)", color:"C0392B" },
{ title:"Cryoglobulinemia", pct:"~50%", desc:"Mixed type II/III cryoglobulinemia\nManifests as purpura, vasculitis, glomerulonephritis", color:C.gold },
{ title:"Fibrosing Cholestatic\nHepatitis (post-LT)", pct:"5-10%", desc:"Dense portal fibrosis, cholestasis in liver transplant patients\nTreatment: reduce immunosuppression + start DAA", color:"5DADE2" },
];
comps.forEach((c, i) => {
const x = i % 2 === 0 ? 0.3 : 5.2;
const y = i < 2 ? 1.38 : 3.5;
s.addShape(pres.shapes.RECTANGLE, { x,y,w:4.55,h:1.82, fill:{color:C.cardBg},
shadow:{type:"outer",color:"000000",blur:8,offset:3,angle:135,opacity:0.2} });
s.addShape(pres.shapes.RECTANGLE, { x,y,w:4.55,h:0.05, fill:{color:c.color},line:{color:c.color} });
s.addShape(pres.shapes.RECTANGLE, { x:x+3.3,y:y+0.12,w:1.1,h:0.55, fill:{color:"0E2235"} });
s.addText(c.pct, { x:x+3.3,y:y+0.12,w:1.1,h:0.55, fontSize:14,bold:true,color:c.color,align:"center",valign:"middle",margin:0 });
s.addText(c.title, { x:x+0.15,y:y+0.1,w:3.1,h:0.55, fontSize:11,bold:true,color:C.white,margin:0 });
s.addText(c.desc, { x:x+0.15,y:y+0.72,w:4.2,h:0.9, fontSize:8.8,color:C.textMid,margin:0 });
});
}
// ══════════════════════════════════════════════════════
// SLIDE 11 – CONCLUSION
// ══════════════════════════════════════════════════════
{
const s = pres.addSlide();
darkSlide(s);
s.addShape(pres.shapes.RECTANGLE, { x:0,y:0,w:10,h:0.55, fill:{color:C.accent},line:{color:C.accent} });
s.addText("KEY TAKEAWAYS", {
x:0,y:0.04,w:10,h:0.47,align:"center",fontSize:16,bold:true,color:C.white,charSpacing:6,margin:0
});
if (imgEM) {
s.addImage({ data: imgEM, x:7.0,y:0.7,w:2.7,h:2.7, rounding:true, transparency:20 });
}
const points = [
"HCV is a single-stranded RNA Flavivirus with 6 genotypes; high mutation rate creates treatment challenges",
"~75% of acute infections become chronic — the highest chronicity rate of all hepatitis viruses",
"~70 million chronic carriers globally; leading infectious cause of cirrhosis and HCC worldwide",
"Diagnosis: anti-HCV EIA for screening, HCV RNA (RT-PCR) for confirmation and monitoring",
"Pan-genotypic DAAs (Epclusa, Maviret, Vosevi) achieve >95% SVR — HCV is now curable",
"SVR significantly reduces mortality (HR 0.27), liver decompensation (HR 0.26), and HCC (HR 0.29)",
"2025 update: Glecaprevir/pibrentasvir FDA-approved for acute HCV (8 wks, 96% cure rate)",
"No vaccine exists — prevention relies on harm reduction and blood safety",
];
points.forEach((pt, i) => {
const y = 0.72 + i * 0.58;
s.addShape(pres.shapes.RECTANGLE, { x:0.3,y,w:0.3,h:0.38, fill:{color:C.accent},line:{color:C.accent} });
s.addText(`${i+1}`, { x:0.3,y,w:0.3,h:0.38, fontSize:10,bold:true,color:C.white,align:"center",valign:"middle",margin:0 });
s.addText(pt, { x:0.72,y:y+0.02,w:6.1,h:0.38, fontSize:9.5,color:C.lightGray,valign:"middle",margin:0 });
});
s.addText("Sources: Jawetz Microbiology 28e · Henry's Lab Methods · Sleisenger & Fordtran's GI & Liver Disease · FDA / EMA 2025-26", {
x:0.3,y:5.28,w:9.4,h:0.28, fontSize:7,color:C.textMid,italic:true,margin:0
});
}
// ─── WRITE FILE ──────────────────────────────────────────────────────────────
const outPath = "/home/daytona/workspace/hcv-presentation/Hepatitis_C_Presentation.pptx";
pres.writeFile({ fileName: outPath })
.then(() => console.log("SUCCESS:", outPath))
.catch(e => { console.error("ERROR:", e); process.exit(1); });
cd /home/daytona/workspace/hcv-presentation && node build.js 2>&1
ls -lh /home/daytona/workspace/hcv-presentation/Hepatitis_C_Presentation.pptx
Hepatitis C Presentation
Presentation · PPTX
| Slide | Content |
|---|---|
| 1 | Title slide with HCV electron microscopy photo |
| 2 | Overview & Key Facts (4-card layout) |
| 3 | Viral Structure & NS Proteins (with HCV diagram) |
| 4 | Genotypes 1-6 & Geographic Distribution |
| 5 | Epidemiology, Transmission & Risk Factors |
| 6 | Natural History flowchart (with liver histopathology photo) |
| 7 | Laboratory Diagnosis (anti-HCV, RNA, genotyping) |
| 8 | DAA Classes - NS3/4A, NS5A, NS5B |
| 9 | Key Regimens (Epclusa, Maviret, Vosevi) + SVR outcomes |
| 10 | Complications (Cirrhosis, HCC, Cryoglobulinemia, FCH) |
| 11 | Key Takeaways (conclusion slide) with 2025 updates |