Hypertensive Emergency treatment
"hypertensive emergency" AND treatment
Important distinction: Hypertensive urgency = severe BP elevation without acute TOD. It does NOT require emergency IV treatment.
| Organ System | Presentation | Incidence |
|---|---|---|
| Brain | Encephalopathy, ischemic stroke, ICH, SAH | 37-45% |
| Heart | Acute heart failure, ACS | 27-49% |
| Kidney | Acute kidney injury | 8-15% |
| Vasculature | Aortic dissection | 1-2% |
| Eye | Hypertensive retinopathy, papilledema | ~1% |
| Obstetric | Eclampsia | ~2% |
A precipitous fall in BP can cause cerebral, coronary, or renal hypoperfusion, worsening end-organ damage. The goal is controlled, gradual reduction.
| Drug | Onset | Duration | Dose | Contraindications | Key Side Effects |
|---|---|---|---|---|---|
| Labetalol | 5-10 min | 3-6 h | 0.25-0.5 mg/kg IV bolus; 2-4 mg/min infusion | 2nd/3rd-degree AV block, systolic HF, asthma, bradycardia | Bronchoconstriction, fetal bradycardia |
| Nicardipine | 5-15 min | 30-40 min | 5-15 mg/h IV; start 5 mg/h, titrate every 15-30 min | Liver failure | Headache, reflex tachycardia |
| Clevidipine | 2-3 min | 5-15 min | 2 mg/h IV; double every 2 min until goal BP | - | Headache, reflex tachycardia |
| Esmolol | 1-2 min | 10-30 min | 500 mcg/kg IV bolus, then 50-300 mcg/kg/min | AV block, systolic HF, asthma, bradycardia | Bradycardia |
| Nitroprusside | Immediate | 1-2 min | 0.3-10 mcg/kg/min | Liver/kidney failure (relative) | Cyanide toxicity |
| Nitroglycerin | 1-5 min | 3-5 min | 5-200 mcg/min | - | Headache, reflex tachycardia |
| Fenoldopam | 5-15 min | 30-60 min | 0.1 mcg/kg/min; titrate every 15 min | - | - |
| Enalaprilat | 5-15 min | 4-6 h | 0.625-1.25 mg IV | History of angioedema | - |
| Phentolamine | 1-2 min | 10-30 min | 5-15 mg IV q5min or 0.2-0.5 mg/min infusion | Coronary artery disease | Tachyarrhythmias, chest pain |
| Hydralazine | 5-20 min | 1-4 h | 10-20 mg IV | - | Reflex tachycardia, hypotension |
| Property | Labetalol | Nicardipine | Nitroprusside |
|---|---|---|---|
| Onset | 5-10 min | 5-15 min | Immediate |
| Offset | Slow (3-6 h) - harder to titrate | Fast (30-40 min) | Immediate - easiest to titrate |
| Cerebral flow | Preserves | Preserves | Reduces |
| Cardiac output | Decreases | Increases | Increases |
| Special risk | Bronchospasm, fetal effects | Reflex tachycardia | Cyanide toxicity (prolonged use) |
Create a quick reference poster of IV agents and dosing
ls -la /home/daytona/workspace/ 2>/dev/null || echo "workspace empty or not found"
mkdir -p /home/daytona/workspace/htn-emergency-poster
~/htn-emergency-poster/poster.js
const pptxgen = require("pptxgenjs");
const pres = new pptxgen();
pres.layout = "LAYOUT_WIDE"; // 13.3" x 7.5" — portrait-ish poster feel when printed
// ─── Color Palette ─────────────────────────────────────────────────────────
const C = {
bgDark: "0D1B2A", // deep navy — dominant
bgMid: "1B2E42", // panel background
bgCard: "162435", // card background
accent: "E63946", // red accent (emergency/critical)
accentOr: "F4A261", // orange - warning
accentGr: "2A9D8F", // teal - safe/preferred
accentBl: "457B9D", // mid blue - neutral
white: "F1FAEE", // off-white text
lightGray: "A8DADC", // light blue-gray
dimText: "7EA8BE", // dim label text
yellow: "FFD166", // highlight
border: "264A6A", // card borders
};
const slide = pres.addSlide();
// ─── Background ─────────────────────────────────────────────────────────────
slide.addShape(pres.ShapeType.rect, {
x: 0, y: 0, w: "100%", h: "100%",
fill: { color: C.bgDark },
line: { type: "none" },
});
// ─── Red accent stripe at top ───────────────────────────────────────────────
slide.addShape(pres.ShapeType.rect, {
x: 0, y: 0, w: "100%", h: 0.07,
fill: { color: C.accent },
line: { type: "none" },
});
// ─── HEADER ─────────────────────────────────────────────────────────────────
// Red "EMERGENCY" pill
slide.addShape(pres.ShapeType.roundRect, {
x: 0.3, y: 0.12, w: 1.7, h: 0.32,
fill: { color: C.accent },
line: { type: "none" },
rectRadius: 0.05,
});
slide.addText("EMERGENCY", {
x: 0.3, y: 0.12, w: 1.7, h: 0.32,
fontSize: 9, bold: true, color: C.white,
align: "center", valign: "middle", margin: 0,
});
slide.addText("Hypertensive Emergency", {
x: 2.15, y: 0.1, w: 7, h: 0.42,
fontSize: 24, bold: true, color: C.white,
align: "left", valign: "middle", margin: 0,
charSpacing: 0.5,
});
slide.addText("IV AGENTS QUICK REFERENCE", {
x: 2.15, y: 0.49, w: 7, h: 0.22,
fontSize: 8.5, bold: false, color: C.dimText,
align: "left", valign: "middle", margin: 0,
charSpacing: 3,
});
// BP reduction target pill — right side
slide.addShape(pres.ShapeType.roundRect, {
x: 9.9, y: 0.12, w: 3.1, h: 0.52,
fill: { color: C.bgMid },
line: { color: C.accentGr, w: 1.2 },
rectRadius: 0.08,
});
slide.addText([
{ text: "TARGET: ", options: { bold: true, color: C.accentGr } },
{ text: "↓MAP ≤25% in 1h → 160/100 at 2-6h", options: { color: C.white } },
], {
x: 9.9, y: 0.12, w: 3.1, h: 0.52,
fontSize: 7.5, align: "center", valign: "middle", margin: 4,
});
// ─── Divider line ────────────────────────────────────────────────────────────
slide.addShape(pres.ShapeType.line, {
x: 0.3, y: 0.78, w: 12.7, h: 0,
line: { color: C.border, w: 0.8 },
});
// ─── MAIN TABLE ─────────────────────────────────────────────────────────────
// Table header
const tHdrY = 0.84;
const tHdrH = 0.3;
const cols = [
{ label: "DRUG", x: 0.3, w: 1.35 },
{ label: "CLASS", x: 1.68, w: 1.2 },
{ label: "DOSE (IV)", x: 2.91, w: 3.4 },
{ label: "ONSET / DURATION", x: 6.34, w: 1.85 },
{ label: "USE WHEN", x: 8.22, w: 2.6 },
{ label: "AVOID WHEN", x: 10.85, w: 2.2 },
];
// Header background
slide.addShape(pres.ShapeType.rect, {
x: 0.3, y: tHdrY, w: 12.73, h: tHdrH,
fill: { color: C.accentBl },
line: { type: "none" },
});
cols.forEach(col => {
slide.addText(col.label, {
x: col.x, y: tHdrY, w: col.w, h: tHdrH,
fontSize: 7.2, bold: true, color: C.white,
align: "left", valign: "middle", margin: [0, 0, 0, 4],
});
});
// ─── Drug rows data ──────────────────────────────────────────────────────────
const drugs = [
{
drug: "Labetalol",
drugColor: C.accentGr,
cls: "α+β Blocker",
dose: "Bolus: 20 mg IV q10min (max 300 mg)\nInfusion: 0.5–2 mg/min",
onset: "5–10 min\n3–6 h",
use: "Stroke, encephalopathy, dissection, eclampsia",
avoid: "Asthma, HF (systolic), bradycardia, AV block",
},
{
drug: "Nicardipine",
drugColor: C.accentGr,
cls: "CCB (DHP)",
dose: "Start 5 mg/h IV → titrate by 2.5 mg/h q15–30 min\n(max 15 mg/h; maint 3 mg/h)",
onset: "5–15 min\n30–40 min",
use: "Stroke, ICH, encephalopathy, AKI, most emergencies",
avoid: "Liver failure, reflex tachycardia risk",
},
{
drug: "Clevidipine",
drugColor: C.accentGr,
cls: "CCB (DHP)",
dose: "Start 2 mg/h IV → double q2 min until goal\n(max 16 mg/h; usual 4–6 mg/h)",
onset: "2–3 min\n5–15 min",
use: "Periop HTN, HF with ↓EF, most emergencies",
avoid: "Lipid metabolism disorders, soy/egg allergy",
},
{
drug: "Esmolol",
drugColor: C.accentBl,
cls: "β1 Blocker",
dose: "Bolus: 500 mcg/kg over 1 min\nInfusion: 50–300 mcg/kg/min",
onset: "1–2 min\n10–30 min",
use: "Aortic dissection (1st line), periop HTN",
avoid: "Asthma, bradycardia, AV block, systolic HF",
},
{
drug: "Nitroprusside",
drugColor: C.accentOr,
cls: "NO donor\n(vasodilator)",
dose: "0.3–10 mcg/kg/min IV infusion\n(start low; titrate every 5 min)",
onset: "Immediate\n1–2 min",
use: "When instant titration needed; most emergencies",
avoid: "Renal/liver failure; ICH/stroke (↓CBF); >24–48 h use → cyanide toxicity",
},
{
drug: "Nitroglycerin",
drugColor: C.accentBl,
cls: "NO donor\n(venodilator)",
dose: "5 mcg/min IV → titrate by 5 mcg/min q5 min\n(max 200 mcg/min)",
onset: "1–5 min\n3–5 min",
use: "ACS, acute pulmonary edema, LVH + HF",
avoid: "Hypovolemia, RV infarction, PDE5 inhibitors",
},
{
drug: "Phentolamine",
drugColor: C.accent,
cls: "α Blocker",
dose: "Bolus: 5–15 mg IV q5 min\nInfusion: 0.2–0.5 mg/min",
onset: "1–2 min\n10–30 min",
use: "Pheochromocytoma, cocaine crisis, MAOI crisis",
avoid: "CAD (↑HR risk), give BEFORE any β-blocker",
},
{
drug: "Fenoldopam",
drugColor: C.accentBl,
cls: "DA-1 agonist",
dose: "0.1 mcg/kg/min IV → titrate by 0.05–0.1 mcg/kg/min\nq15 min (max 1.6 mcg/kg/min)",
onset: "5–15 min\n30–60 min",
use: "AKI or at risk of renal impairment (↑renal flow)",
avoid: "Glaucoma (↑IOP); caution if ↓K+",
},
{
drug: "Hydralazine",
drugColor: C.accentBl,
cls: "Vasodilator\n(direct)",
dose: "10–20 mg IV q20–30 min PRN\n(unpredictable effect — avoid infusion)",
onset: "5–20 min\n1–4 h",
use: "Eclampsia / pregnancy",
avoid: "Aortic dissection, CAD, reflex tachycardia risk",
},
{
drug: "Enalaprilat",
drugColor: C.dimText,
cls: "ACE inhibitor",
dose: "0.625–1.25 mg IV q6 h",
onset: "5–15 min\n4–6 h",
use: "Scleroderma renal crisis, CHF, post-MI",
avoid: "Pregnancy, angioedema history, AKI (bilateral RAS)",
},
];
// Row rendering
const rowStartY = tHdrY + tHdrH + 0.04;
const rowH = 0.49;
drugs.forEach((d, i) => {
const y = rowStartY + i * (rowH + 0.035);
const rowBg = i % 2 === 0 ? C.bgCard : C.bgMid;
// Row background
slide.addShape(pres.ShapeType.rect, {
x: 0.3, y: y, w: 12.73, h: rowH,
fill: { color: rowBg },
line: { color: C.border, w: 0.5 },
});
// Colored left accent bar
slide.addShape(pres.ShapeType.rect, {
x: 0.3, y: y, w: 0.055, h: rowH,
fill: { color: d.drugColor },
line: { type: "none" },
});
// Drug name
slide.addText(d.drug, {
x: cols[0].x + 0.07, y: y, w: cols[0].w - 0.07, h: rowH,
fontSize: 8.5, bold: true, color: d.drugColor,
align: "left", valign: "middle", margin: [0, 0, 0, 3],
});
// Class
slide.addText(d.cls, {
x: cols[1].x, y: y, w: cols[1].w, h: rowH,
fontSize: 7, color: C.lightGray,
align: "left", valign: "middle", margin: [0, 0, 0, 3],
});
// Dose
slide.addText(d.dose, {
x: cols[2].x, y: y, w: cols[2].w, h: rowH,
fontSize: 7, color: C.white,
align: "left", valign: "middle", margin: [0, 0, 0, 3],
});
// Onset / duration
slide.addText(d.onset, {
x: cols[3].x, y: y, w: cols[3].w, h: rowH,
fontSize: 7, color: C.yellow,
align: "left", valign: "middle", margin: [0, 0, 0, 3],
});
// Use when
slide.addText(d.use, {
x: cols[4].x, y: y, w: cols[4].w, h: rowH,
fontSize: 7, color: C.lightGray,
align: "left", valign: "middle", margin: [0, 0, 0, 3],
});
// Avoid when
slide.addText(d.avoid, {
x: cols[5].x, y: y, w: cols[5].w, h: rowH,
fontSize: 7, color: C.accentOr,
align: "left", valign: "middle", margin: [0, 0, 0, 3],
});
});
// ─── BOTTOM PANEL — Special Scenarios ───────────────────────────────────────
const botY = rowStartY + drugs.length * (rowH + 0.035) + 0.04;
const botH = 0.55;
// Panel bg
slide.addShape(pres.ShapeType.rect, {
x: 0.3, y: botY, w: 12.73, h: botH,
fill: { color: C.bgMid },
line: { color: C.border, w: 0.8 },
});
// Section label
slide.addText("SCENARIO-SPECIFIC TARGETS", {
x: 0.38, y: botY + 0.03, w: 2.0, h: 0.18,
fontSize: 6.5, bold: true, color: C.accent,
charSpacing: 1.5, margin: 0,
});
const scenarios = [
{ icon: "🫀", label: "Aortic Dissection", value: "SBP <120 mmHg + HR ≤60 bpm in 1h — Esmolol 1st line" },
{ icon: "🧠", label: "ICH", value: "SBP <140 mmHg — Nicardipine preferred (avoid nitroprusside)" },
{ icon: "🧠", label: "Ischemic Stroke", value: "Treat only if SBP >220/120 (or >185/110 if tPA) — Labetalol" },
{ icon: "🤰", label: "Eclampsia", value: "Labetalol or Hydralazine IV + MgSO4 for seizures" },
{ icon: "⚗️", label: "Pheo/Cocaine Crisis", value: "Phentolamine — NEVER β-blocker alone (↑vasoconstriction)" },
{ icon: "❤️", label: "ACS / Pulm Edema", value: "IV Nitroglycerin 1st line; add loop diuretic if volume overloaded" },
];
const scW = 12.73 / scenarios.length;
scenarios.forEach((s, i) => {
const sx = 0.3 + i * scW;
const sy = botY + 0.22;
// Card bg
slide.addShape(pres.ShapeType.rect, {
x: sx + 0.04, y: sy, w: scW - 0.08, h: botH - 0.25,
fill: { color: C.bgCard },
line: { color: C.border, w: 0.5 },
});
slide.addText([
{ text: s.label + " ", options: { bold: true, color: C.yellow } },
{ text: s.value, options: { color: C.white } },
], {
x: sx + 0.06, y: sy, w: scW - 0.12, h: botH - 0.25,
fontSize: 6.5, align: "left", valign: "middle", margin: 3,
});
});
// ─── Footer ──────────────────────────────────────────────────────────────────
const footerY = botY + botH + 0.04;
slide.addShape(pres.ShapeType.line, {
x: 0.3, y: footerY, w: 12.7, h: 0,
line: { color: C.border, w: 0.6 },
});
slide.addText([
{ text: "Sources: ", options: { bold: true, color: C.dimText } },
{ text: "Goldman-Cecil Medicine · ROSEN's Emergency Medicine · Tintinalli's EM · Washington Manual · Lippincott Pharmacology", options: { color: C.dimText } },
{ text: " | For educational use only — verify doses before clinical administration", options: { color: C.accent, italic: true } },
], {
x: 0.3, y: footerY + 0.02, w: 12.7, h: 0.2,
fontSize: 6, align: "left", valign: "middle", margin: 0,
});
// ─── Save ────────────────────────────────────────────────────────────────────
pres.writeFile({ fileName: "/home/daytona/workspace/htn-emergency-poster/HTN_Emergency_IV_Agents.pptx" })
.then(() => console.log("✅ Poster created successfully"))
.catch(err => console.error("Error:", err));
cd /home/daytona/workspace/htn-emergency-poster && node poster.js
ls -lh /home/daytona/workspace/htn-emergency-poster/
HTN Emergency IV Agents
Presentation · PPTX