most effective PRP preparation method for knee joint osteoarthritis
"platelet-rich plasma" AND "knee osteoarthritis" AND preparation
PRP preparation method knee osteoarthritis leukocyte rich poor platelet concentration most effective 2024 2025
PMID: 36502442
"leukocyte-poor" OR "leukocyte-rich" AND "platelet-rich plasma" AND "knee osteoarthritis"
https://driainduncan.com.au/prp-in-osteoarthritis/
PMID: 41629990
PMID: 36173473
PMID: 34826301
| Parameter | LP-PRP | LR-PRP |
|---|---|---|
| Leukocyte concentration | Below whole blood baseline | Above whole blood baseline |
| Typical centrifugation | Soft spin (single/double) | Hard spin or buffy coat technique |
| Inflammatory profile | Lower IL-1β, TNF-α | Higher IL-1β, TNF-α |
| Local adverse reactions | Lower | Higher (OR 3.3 vs HA, 95% CI 1.1–10.2) |
| Functional improvement (WOMAC, P-score) | 0.96 (highest ranked) | 0.82 |
| Factor | Evidence-based recommendation |
|---|---|
| Number of injections | 3 injections (weekly × 3) outperform single injection for sustained benefit; Kim et al. 2023 (PMID 36173473) — both single and multiple beat HA at 12 months |
| Injection volume | 3–5 mL per injection |
| Interval | 1 week apart |
| Guidance | Ultrasound-guided preferred for accuracy |
| Activity restriction | Relative rest 24–48 h post-injection; avoid NSAIDs (inhibit platelet function) for 2 weeks before and after |
| Parameter | Recommended |
|---|---|
| Leukocyte content | Leukocyte-poor (LP-PRP) |
| Platelet concentration | ≥1,000,000/µL (≥4× whole blood) |
| Activation | Exogenous CaCl₂ activation |
| Centrifugation | Single soft spin ~1,500–2,000 rpm × 8–10 min |
| Anticoagulant | ACD-A (acid citrate dextrose) or sodium citrate preferred |
| Volume | 3–5 mL per injection |
| Dosing schedule | 3 weekly intra-articular injections |
best BMAC preparation protocol for regenerative therapy in orthopedic
"bone marrow aspirate concentrate" AND preparation AND orthopedic
BMAC bone marrow aspirate concentrate preparation protocol centrifugation aspiration site orthopedic regenerative 2024 2025
PMID: 39428140
PMID: 36410885
PMID: 40428811
https://www.briancolemd.com/wp-content/themes/ypo-theme/pdf/…
not well-formed (invalid token): line 7, column 70
We encountered an error while processing your request. Please try again or reach out to us for help.
research all available papers,RCT,Journals on BMAC preparation and use in orthopedic and prepare a BMAC preparation protocol for regenerative therapy in orthopedics clinic
"bone marrow aspirate concentrate" AND orthopedic AND preparation
"bone marrow aspirate" AND "mesenchymal stem cells" AND "centrifugation" AND musculoskeletal
BMAC preparation protocol iliac crest aspiration centrifugation MSC yield orthopedic clinic best practices 2024 2025
PMID: 39428140
PMID: 36410885
PMID: 40428811
https://www.briancolemd.com/wp-content/themes/ypo-theme/pdf/…
PMID: 39506910
PMID: 39282657
"bone marrow aspirate" AND "iliac crest" AND "harvest" AND "progenitor cells" AND orthopedic
Muschler technique BMAC sequential aspiration 2mL aliquots bone marrow harvest connective tissue progenitors protocol
PMID: 30961655
PMID: 40313480
https://pmc.ncbi.nlm.nih.gov/articles/PMC5443590/
Create a patient education handout on BMAC preparation and expected recovery timeline
ls -la /home/daytona/workspace/ && ls /home/daytona/skills/docx/
mkdir -p /home/daytona/workspace/bmac-handout && node -e "require('docx'); console.log('docx available')"
~/bmac-handout/create_handout.js
const {
Document, Packer, Paragraph, TextRun, Table, TableRow, TableCell,
Header, AlignmentType, HeadingLevel, BorderStyle, WidthType,
ShadingType, VerticalAlign, PageNumber, PageBreak,
UnderlineType
} = require('docx');
const fs = require('fs');
// ── Colour palette ──────────────────────────────────────────────────────────
const NAVY = "1B3A6B"; // headings, header bar
const TEAL = "0E7C7B"; // section accent lines, table header
const AMBER = "E8A020"; // callout boxes
const LIGHT = "EEF4FB"; // alternating table rows / info boxes
const WHITE = "FFFFFF";
const DARK = "1A1A1A"; // body text
// ── Helpers ─────────────────────────────────────────────────────────────────
function noBorder() {
return { style: BorderStyle.NONE, size: 0, color: "FFFFFF" };
}
function cellBorders(color = "CCCCCC") {
const b = { style: BorderStyle.SINGLE, size: 4, color };
return { top: b, bottom: b, left: b, right: b };
}
function sectionRule() {
return new Paragraph({
border: { bottom: { style: BorderStyle.SINGLE, size: 8, color: TEAL } },
spacing: { before: 80, after: 80 },
children: [],
});
}
function heading1(text) {
return new Paragraph({
spacing: { before: 280, after: 60 },
children: [
new TextRun({
text,
bold: true,
size: 26,
color: NAVY,
font: "Calibri",
}),
],
});
}
function heading2(text) {
return new Paragraph({
spacing: { before: 200, after: 40 },
children: [
new TextRun({
text,
bold: true,
size: 22,
color: TEAL,
font: "Calibri",
}),
],
});
}
function body(text, { bold = false, italic = false, color = DARK, size = 20 } = {}) {
return new Paragraph({
spacing: { before: 40, after: 40 },
children: [
new TextRun({ text, bold, italic, size, color, font: "Calibri" }),
],
});
}
function bullet(text, level = 0) {
return new Paragraph({
bullet: { level },
spacing: { before: 30, after: 30 },
children: [
new TextRun({ text, size: 20, color: DARK, font: "Calibri" }),
],
});
}
function calloutBox(title, lines, bgColor = LIGHT, titleColor = NAVY) {
const rows = [
new TableRow({
children: [
new TableCell({
shading: { type: ShadingType.CLEAR, fill: TEAL },
borders: { top: noBorder(), bottom: noBorder(), left: noBorder(), right: noBorder() },
width: { size: 100, type: WidthType.PERCENTAGE },
children: [
new Paragraph({
spacing: { before: 80, after: 80 },
children: [
new TextRun({ text: title, bold: true, size: 22, color: WHITE, font: "Calibri" }),
],
}),
],
}),
],
}),
new TableRow({
children: [
new TableCell({
shading: { type: ShadingType.CLEAR, fill: bgColor },
borders: { top: noBorder(), bottom: noBorder(), left: noBorder(), right: noBorder() },
width: { size: 100, type: WidthType.PERCENTAGE },
children: lines.map(l =>
new Paragraph({
spacing: { before: 40, after: 40 },
children: [new TextRun({ text: l, size: 20, color: DARK, font: "Calibri" })],
})
),
}),
],
}),
];
return new Table({
width: { size: 100, type: WidthType.PERCENTAGE },
borders: {
top: { style: BorderStyle.SINGLE, size: 6, color: TEAL },
bottom: { style: BorderStyle.SINGLE, size: 6, color: TEAL },
left: { style: BorderStyle.SINGLE, size: 6, color: TEAL },
right: { style: BorderStyle.SINGLE, size: 6, color: TEAL },
insideH:noBorder(), insideV: noBorder(),
},
rows,
});
}
function timelineTable(rows_data) {
const header = new TableRow({
tableHeader: true,
children: ["Timeframe", "What to Expect", "What to Do / Avoid"].map(h =>
new TableCell({
shading: { type: ShadingType.CLEAR, fill: NAVY },
verticalAlign: VerticalAlign.CENTER,
children: [
new Paragraph({
alignment: AlignmentType.CENTER,
children: [new TextRun({ text: h, bold: true, size: 20, color: WHITE, font: "Calibri" })],
}),
],
})
),
});
const dataRows = rows_data.map(([time, expect, action], i) =>
new TableRow({
children: [time, expect, action].map(txt =>
new TableCell({
shading: { type: ShadingType.CLEAR, fill: i % 2 === 0 ? LIGHT : WHITE },
children: [
new Paragraph({
spacing: { before: 60, after: 60 },
children: [new TextRun({ text: txt, size: 19, color: DARK, font: "Calibri" })],
}),
],
})
),
})
);
return new Table({
width: { size: 100, type: WidthType.PERCENTAGE },
columnWidths: [1800, 4200, 4000],
borders: {
top: cellBorders().top,
bottom: cellBorders().bottom,
left: cellBorders().left,
right: cellBorders().right,
insideH:{ style: BorderStyle.SINGLE, size: 3, color: "AAAAAA" },
insideV:{ style: BorderStyle.SINGLE, size: 3, color: "AAAAAA" },
},
rows: [header, ...dataRows],
});
}
function warningBox(title, lines) {
return calloutBox("⚠ " + title, lines, "FFF8EC", "CC6600");
}
function greenBox(title, lines) {
return calloutBox("✓ " + title, lines, "EBF7F0", "0E7C7B");
}
function spacer(pts = 120) {
return new Paragraph({ spacing: { before: pts, after: 0 }, children: [] });
}
// ── Document header banner ──────────────────────────────────────────────────
function bannerTable(clinicName, subtitle) {
return new Table({
width: { size: 100, type: WidthType.PERCENTAGE },
borders: {
top: noBorder(), bottom: { style: BorderStyle.SINGLE, size: 12, color: AMBER },
left: noBorder(), right: noBorder(), insideH: noBorder(), insideV: noBorder(),
},
rows: [
new TableRow({
children: [
new TableCell({
shading: { type: ShadingType.CLEAR, fill: NAVY },
children: [
new Paragraph({
alignment: AlignmentType.CENTER,
spacing: { before: 160, after: 40 },
children: [
new TextRun({ text: clinicName, bold: true, size: 36, color: WHITE, font: "Calibri" }),
],
}),
new Paragraph({
alignment: AlignmentType.CENTER,
spacing: { before: 0, after: 160 },
children: [
new TextRun({ text: subtitle, size: 24, color: "CCE4FF", font: "Calibri", italics: true }),
],
}),
],
}),
],
}),
],
});
}
// ════════════════════════════════════════════════════════════════════════════
// BUILD DOCUMENT
// ════════════════════════════════════════════════════════════════════════════
const doc = new Document({
styles: {
default: {
document: {
run: { font: "Calibri", size: 20, color: DARK },
},
},
},
sections: [
{
properties: {
page: {
margin: { top: 720, bottom: 720, left: 900, right: 900 },
},
},
headers: {
default: new Header({
children: [
new Paragraph({
alignment: AlignmentType.RIGHT,
spacing: { after: 0 },
children: [
new TextRun({ text: "PATIENT EDUCATION — BMAC THERAPY | Orthopaedic Regenerative Clinic", size: 16, color: "888888", font: "Calibri" }),
],
}),
],
}),
},
children: [
// ── Banner ─────────────────────────────────────────────────────────
bannerTable(
"BONE MARROW ASPIRATE CONCENTRATE (BMAC) THERAPY",
"Your Complete Guide to the Procedure and Recovery"
),
spacer(180),
// ── Section 1: What is BMAC ─────────────────────────────────────────
heading1("1. What Is BMAC Therapy?"),
sectionRule(),
spacer(60),
body(
"Bone Marrow Aspirate Concentrate (BMAC) is a regenerative treatment made entirely from " +
"your own blood and bone marrow. A small sample of bone marrow is collected from your " +
"pelvis, concentrated in a centrifuge (a spinning machine that separates cells), and then " +
"injected into the injured or arthritic area of your body — all in the same clinic visit."
),
spacer(40),
calloutBox("Why use your own bone marrow?", [
"Your bone marrow naturally contains healing cells called Mesenchymal Stem Cells (MSCs),",
"along with growth factors and anti-inflammatory proteins. When concentrated and injected",
"into a damaged joint or tissue, these cells help reduce pain, calm inflammation, and",
"support the body's own repair processes.",
"",
"Because BMAC comes from your own body, there is no risk of rejection or allergic reaction.",
]),
spacer(120),
// ── Section 2: How it's made ────────────────────────────────────────
heading1("2. How Is BMAC Prepared? (Step-by-Step)"),
sectionRule(),
spacer(60),
body("Here is exactly what happens on the day of your procedure:", { bold: true }),
spacer(40),
// Step table
new Table({
width: { size: 100, type: WidthType.PERCENTAGE },
borders: {
top: noBorder(), bottom: noBorder(), left: noBorder(), right: noBorder(),
insideH: { style: BorderStyle.SINGLE, size: 3, color: "DDDDDD" },
insideV: noBorder(),
},
rows: [
["STEP 1", "Blood Draw & Preparation",
"A small blood sample is taken to run a baseline count. A local anaesthetic is injected into the skin and pelvis bone (iliac crest) to numb the area completely."],
["STEP 2", "Bone Marrow Aspiration (Harvest)",
"Using a special hollow needle (trocar), your doctor gently draws 60 mL of bone marrow fluid from your pelvis. The needle is moved to several positions to collect the richest marrow — this technique maximises the number of healing cells. The procedure takes about 10–15 minutes. You may feel pressure but should not feel sharp pain."],
["STEP 3", "Centrifugation (Concentration)",
"Your bone marrow sample is placed into an FDA-cleared processing device (centrifuge) which spins it at high speed for 15 minutes. This separates and concentrates the healing cells, platelets, and growth factors into approximately 6 mL of BMAC — roughly 5–10 times more concentrated than the original sample."],
["STEP 4", "Quality Check",
"The concentrated BMAC is briefly checked for colour and cell content before use."],
["STEP 5", "Injection",
"Using ultrasound guidance for precise placement, your doctor injects the BMAC directly into the target area (knee joint, shoulder, cartilage defect, etc.). The injection itself takes only 2–5 minutes."],
].map(([step, title, desc], i) =>
new TableRow({
children: [
new TableCell({
shading: { type: ShadingType.CLEAR, fill: i % 2 === 0 ? TEAL : NAVY },
width: { size: 12, type: WidthType.PERCENTAGE },
verticalAlign: VerticalAlign.CENTER,
children: [
new Paragraph({
alignment: AlignmentType.CENTER,
children: [new TextRun({ text: step, bold: true, size: 18, color: WHITE, font: "Calibri" })],
}),
],
}),
new TableCell({
shading: { type: ShadingType.CLEAR, fill: i % 2 === 0 ? "E8F4F4" : LIGHT },
width: { size: 88, type: WidthType.PERCENTAGE },
children: [
new Paragraph({
spacing: { before: 80, after: 20 },
children: [new TextRun({ text: title, bold: true, size: 20, color: NAVY, font: "Calibri" })],
}),
new Paragraph({
spacing: { before: 0, after: 80 },
children: [new TextRun({ text: desc, size: 19, color: DARK, font: "Calibri" })],
}),
],
}),
],
})
),
}),
spacer(120),
// ── Section 3: Before your procedure ──────────────────────────────
heading1("3. Before Your Procedure — What You Need to Do"),
sectionRule(),
spacer(60),
warningBox("Medications to Stop Before Your Procedure", [
"Stop taking anti-inflammatory medications (NSAIDs) 7 days before your procedure.",
"These include: ibuprofen (Nurofen, Advil), naproxen (Naprosyn), diclofenac,",
"aspirin (unless prescribed for your heart — check with your doctor first),",
"and celecoxib (Celebrex).",
"",
"Why? NSAIDs reduce platelet activity and can decrease the effectiveness of BMAC.",
]),
spacer(80),
body("Also do the following before your appointment:", { bold: true }),
bullet("Tell your doctor about ALL medications, including blood thinners (warfarin, rivaroxaban, apixaban)"),
bullet("Stop blood-thinning medications as directed — your doctor will give you specific instructions"),
bullet("Arrange a driver — you should not drive yourself home after the procedure"),
bullet("Wear comfortable, loose-fitting clothing that gives easy access to your pelvis and the injection site"),
bullet("Stay well hydrated — drink plenty of water the day before and morning of the procedure"),
bullet("You may eat a normal meal before the procedure unless sedation is planned"),
bullet("Bring your Medicare/insurance card and any recent scan reports (MRI, X-ray)"),
spacer(120),
// ── Section 4: On the day ──────────────────────────────────────────
heading1("4. On the Day of Your Procedure"),
sectionRule(),
spacer(60),
body("The entire visit typically takes 60–90 minutes:", { bold: true }),
spacer(40),
new Table({
width: { size: 100, type: WidthType.PERCENTAGE },
columnWidths: [2000, 8000],
borders: {
top: { style: BorderStyle.SINGLE, size: 4, color: "CCCCCC" },
bottom: { style: BorderStyle.SINGLE, size: 4, color: "CCCCCC" },
left: noBorder(), right: noBorder(),
insideH: { style: BorderStyle.SINGLE, size: 3, color: "EEEEEE" },
insideV: noBorder(),
},
rows: [
["Arrival", "Check in, sign consent forms, change into gown if required"],
["Prep (15 min)", "Positioning, sterile preparation, local anaesthetic injection"],
["Harvest (10–15 min)", "Bone marrow collection from pelvis — you may feel pressure"],
["Processing (15 min)", "Centrifugation in processing device — you rest during this time"],
["Injection (5 min)", "BMAC injected into target joint under ultrasound guidance"],
["Recovery (20–30 min)", "Rest, observation, discharge instructions given"],
].map(([time, desc], i) =>
new TableRow({
children: [
new TableCell({
shading: { type: ShadingType.CLEAR, fill: i % 2 === 0 ? LIGHT : WHITE },
children: [
new Paragraph({
spacing: { before: 60, after: 60 },
children: [new TextRun({ text: time, bold: true, size: 19, color: TEAL, font: "Calibri" })],
}),
],
}),
new TableCell({
shading: { type: ShadingType.CLEAR, fill: i % 2 === 0 ? LIGHT : WHITE },
children: [
new Paragraph({
spacing: { before: 60, after: 60 },
children: [new TextRun({ text: desc, size: 19, color: DARK, font: "Calibri" })],
}),
],
}),
],
})
),
}),
spacer(120),
// ── Section 5: Recovery timeline ──────────────────────────────────
heading1("5. Your Recovery Timeline"),
sectionRule(),
spacer(60),
body(
"BMAC does not work instantly — it works through a biological process that takes weeks " +
"to months. The timeline below gives you realistic expectations at each stage."
),
spacer(60),
timelineTable([
[
"Hours 0–48\n(Immediately After)",
"• Soreness and bruising at the bone marrow harvest site (pelvis)\n" +
"• Mild swelling or aching at the injection site\n" +
"• Some patients feel initial worsening before improvement — this is normal (the healing process is beginning)",
"• REST — avoid strenuous activity\n" +
"• Ice pack (20 min on/off) for harvest site discomfort\n" +
"• DO NOT take NSAIDs — use paracetamol (acetaminophen) for pain\n" +
"• Keep injection site dry for 24 hours",
],
[
"Days 3–7\n(Early Recovery)",
"• Harvest site soreness gradually improving\n" +
"• Injection site swelling begins to settle\n" +
"• Some patients notice very early reduction in joint aching",
"• Gentle walking encouraged from Day 3\n" +
"• Avoid high-impact activity (running, jumping, heavy lifting)\n" +
"• Avoid swimming or submerging injection site for 7 days\n" +
"• Continue to avoid NSAIDs",
],
[
"Weeks 2–4\n(Initial Healing)",
"• Most harvest site pain resolves\n" +
"• Some patients notice initial pain relief at treatment site\n" +
"• Joint may still feel slightly stiff or swollen",
"• Begin gentle physiotherapy as prescribed\n" +
"• Continue avoiding NSAIDs for the full 2 weeks\n" +
"• Low-impact activity: walking, cycling, swimming (from Week 2)\n" +
"• Follow up appointment at Week 4",
],
[
"Weeks 4–8\n(Active Regeneration)",
"• Many patients notice meaningful improvement in pain and function during this window\n" +
"• Gradual increase in joint comfort and mobility\n" +
"• This phase is when stem cells are most active in modulating the healing environment",
"• Progress physiotherapy programme\n" +
"• Introduce functional strengthening exercises\n" +
"• Maintain healthy diet — protein, vitamin D, omega-3s support regeneration\n" +
"• Avoid corticosteroid injections to the same area",
],
[
"Months 3–6\n(Peak Improvement)",
"• Maximum benefit for most patients is reached between 3–6 months\n" +
"• Significant reduction in pain and improved function reported by majority of patients\n" +
"• Return to sport / normal activities typically possible",
"• Review with your doctor at 3 months\n" +
"• Discuss physiotherapy progression\n" +
"• Discuss whether a second injection (booster) is appropriate at 6 months if partial response",
],
[
"Months 6–12\n(Long-Term Benefit)",
"• Benefits can last 6–18 months or longer in many patients\n" +
"• Sustained reduction in inflammation and pain\n" +
"• Some studies show BMAC may slow cartilage degeneration",
"• Annual review recommended\n" +
"• Repeat treatment considered if symptoms return (typically after 6–12 months)\n" +
"• Continue exercise and healthy weight to maximise results",
],
]),
spacer(60),
greenBox("When will I feel better?", [
"Every patient responds differently. On average:",
" • First noticeable improvement: 4–8 weeks",
" • Peak benefit: 3–6 months",
" • Duration of benefit: 6–18 months (varies by condition severity and age)",
"",
"Patients with mild-to-moderate arthritis (KL Grade I–III) and younger patients tend to",
"respond best. BMAC is not a cure — it is a treatment to reduce pain, improve function,",
"and potentially slow disease progression.",
]),
spacer(120),
// ── Section 6: After care ─────────────────────────────────────────
heading1("6. After-Care Instructions"),
sectionRule(),
spacer(60),
new Table({
width: { size: 100, type: WidthType.PERCENTAGE },
columnWidths: [5000, 5000],
borders: {
top: noBorder(), bottom: noBorder(), left: noBorder(), right: noBorder(),
insideH: noBorder(), insideV: noBorder(),
},
rows: [
new TableRow({
children: [
new TableCell({
margins: { right: 200 },
children: [
calloutBox("✓ DO — Recommended", [
"✓ Take paracetamol for mild pain",
"✓ Use ice packs on harvest site (not injection site)",
"✓ Stay hydrated — drink 2–3 L of water daily",
"✓ Eat a protein-rich, anti-inflammatory diet",
"✓ Do gentle walking from Day 3",
"✓ Follow your physiotherapy programme",
"✓ Keep all follow-up appointments",
"✓ Get adequate sleep — regeneration occurs during rest",
"✓ Supplement with Vitamin D if deficient",
], "EBF7F0", TEAL),
],
}),
new TableCell({
margins: { left: 200 },
children: [
calloutBox("✗ DO NOT — Avoid", [
"✗ DO NOT take NSAIDs for 2 weeks (ibuprofen, naproxen)",
"✗ DO NOT take corticosteroids (prednisone, cortisone injections)",
"✗ DO NOT run, jump, or lift heavy weights for 2 weeks",
"✗ DO NOT submerge injection site for 7 days",
"✗ DO NOT smoke — nicotine severely impairs stem cell healing",
"✗ DO NOT drink excessive alcohol (>1 standard drink/day)",
"✗ DO NOT drive on the day of procedure",
"✗ DO NOT apply heat to harvest site in first 48 hours",
], "FFF0F0", "CC2200"),
],
}),
],
}),
],
}),
spacer(120),
// ── Section 7: Physio ─────────────────────────────────────────────
heading1("7. Physiotherapy and Exercise Guidance"),
sectionRule(),
spacer(60),
body(
"Physiotherapy is an essential part of your recovery. BMAC creates the biological conditions " +
"for healing — physiotherapy helps you rebuild strength and function around the healed tissue."
),
spacer(60),
body("Phase 1 — Weeks 1–2: Protection", { bold: true, color: TEAL }),
bullet("Gentle range-of-motion exercises only"),
bullet("No weight-bearing exercise beyond normal walking"),
bullet("Goal: protect the treatment site, allow initial healing"),
spacer(30),
body("Phase 2 — Weeks 3–6: Gentle Rehabilitation", { bold: true, color: TEAL }),
bullet("Low-impact cardio: swimming (from Week 2–3), stationary cycling"),
bullet("Begin gentle muscle activation exercises as prescribed"),
bullet("Goal: reduce stiffness, restore normal movement"),
spacer(30),
body("Phase 3 — Weeks 7–12: Strengthening", { bold: true, color: TEAL }),
bullet("Introduce progressive resistance exercises"),
bullet("Balance and proprioception training"),
bullet("Goal: rebuild muscle strength and joint stability"),
spacer(30),
body("Phase 4 — Months 3–6: Functional Return", { bold: true, color: TEAL }),
bullet("Sport-specific drills (if applicable)"),
bullet("Return to recreational sport with your physiotherapist's clearance"),
bullet("Goal: return to full function and maintain long-term joint health"),
spacer(120),
// ── Section 8: Red flags ──────────────────────────────────────────
heading1("8. When to Call Us — Warning Signs"),
sectionRule(),
spacer(60),
warningBox("Seek Medical Attention Immediately If You Experience:", [
"🔴 Increasing redness, warmth, or swelling at the injection or harvest site after 48 hours",
"🔴 Fever above 38°C (100.4°F)",
"🔴 Discharge or pus from either wound site",
"🔴 Sudden severe pain (not the gradual soreness expected in first 48 hours)",
"🔴 Numbness or tingling in the leg or arm following the procedure",
"🔴 Difficulty walking or bearing weight that significantly worsens after Day 3",
"",
"These symptoms may indicate infection — contact our clinic immediately or",
"go to your nearest emergency department.",
]),
spacer(80),
greenBox("Normal Post-Procedure Symptoms (Not Cause for Concern)", [
"✓ Bruising or mild swelling at the pelvis harvest site — normal, resolves in 1–2 weeks",
"✓ Mild aching or stiffness at the injection site for 3–5 days",
"✓ Brief flare of pain in the treated joint in the first 1–2 weeks",
"✓ Fatigue on the day of the procedure",
]),
spacer(120),
// ── Section 9: FAQ ────────────────────────────────────────────────
heading1("9. Frequently Asked Questions"),
sectionRule(),
spacer(60),
...[
["Is BMAC painful?", "The procedure is performed under local anaesthetic so you should feel pressure but not sharp pain. Some patients choose mild sedation. Post-procedure soreness at the harvest site (pelvis) is common for 3–7 days and is manageable with paracetamol."],
["How many injections will I need?", "Most patients receive a single injection. Some may benefit from a repeat injection at 6–12 months if symptoms return or improvement is partial. Your doctor will discuss this at your follow-up review."],
["Can I combine BMAC with PRP?", "Yes — in some cases your doctor may recommend combining BMAC with PRP (platelet-rich plasma) for enhanced results. This will be discussed with you before the procedure."],
["Will BMAC cure my arthritis?", "BMAC is not a cure for arthritis. It is a treatment designed to reduce pain, improve function, and potentially slow the progression of joint degeneration. It can provide significant relief but does not reverse severe structural damage."],
["What if BMAC doesn't work for me?", "Not all patients respond to BMAC. Factors like age, severity of arthritis, and general health influence outcomes. If BMAC does not provide adequate relief, your doctor will discuss alternative options including further physiotherapy, other orthobiologic treatments, or surgical consultation."],
["Is BMAC covered by health insurance?", "Coverage varies. In most countries, BMAC is currently considered an emerging therapy and may not be covered by standard health insurance. Please speak with our billing team before your procedure for a cost estimate and your out-of-pocket responsibility."],
["How is BMAC different from a stem cell injection I've seen advertised?", "BMAC uses your own bone marrow cells prepared in the same visit — no cells are grown in a lab or come from a donor. It is approved for point-of-care use by the FDA and equivalent regulatory bodies. Beware of clinics offering 'expanded' or 'cultured' stem cells — these products require clinical trial approval and are not currently approved for general use."],
].flatMap(([q, a]) => [
body(q, { bold: true, color: NAVY }),
body(a),
spacer(40),
]),
spacer(120),
// ── Section 10: Contact / Footer ──────────────────────────────────
new Table({
width: { size: 100, type: WidthType.PERCENTAGE },
borders: {
top: { style: BorderStyle.SINGLE, size: 8, color: AMBER },
bottom: { style: BorderStyle.SINGLE, size: 8, color: AMBER },
left: noBorder(), right: noBorder(),
insideH: noBorder(), insideV: noBorder(),
},
rows: [
new TableRow({
children: [
new TableCell({
shading: { type: ShadingType.CLEAR, fill: LIGHT },
children: [
new Paragraph({
alignment: AlignmentType.CENTER,
spacing: { before: 120, after: 20 },
children: [new TextRun({ text: "CONTACT YOUR CLINIC", bold: true, size: 22, color: NAVY, font: "Calibri" })],
}),
new Paragraph({
alignment: AlignmentType.CENTER,
spacing: { before: 0, after: 20 },
children: [new TextRun({ text: "Orthopaedic Regenerative Clinic", size: 20, color: TEAL, font: "Calibri", bold: true })],
}),
new Paragraph({
alignment: AlignmentType.CENTER,
spacing: { before: 0, after: 20 },
children: [new TextRun({ text: "Phone: ________________ | Email: ________________", size: 19, color: DARK, font: "Calibri" })],
}),
new Paragraph({
alignment: AlignmentType.CENTER,
spacing: { before: 0, after: 120 },
children: [new TextRun({ text: "Emergency After-Hours: ________________", size: 19, color: DARK, font: "Calibri" })],
}),
],
}),
],
}),
],
}),
spacer(80),
new Paragraph({
alignment: AlignmentType.CENTER,
spacing: { before: 40, after: 0 },
children: [
new TextRun({
text: "This handout is for educational purposes only and does not replace personalised medical advice from your treating doctor.",
size: 16, color: "888888", font: "Calibri", italics: true,
}),
],
}),
new Paragraph({
alignment: AlignmentType.CENTER,
spacing: { before: 20, after: 0 },
children: [
new TextRun({
text: "Document Reference: BMAC-PT-EDU-001 | Version 1.0 | Date: May 2026 | Review: May 2027",
size: 16, color: "AAAAAA", font: "Calibri",
}),
],
}),
],
},
],
});
Packer.toBuffer(doc).then(buffer => {
fs.writeFileSync("/home/daytona/workspace/bmac-handout/BMAC_Patient_Education_Handout.docx", buffer);
console.log("Created: BMAC_Patient_Education_Handout.docx");
}).catch(err => {
console.error("Error:", err);
process.exit(1);
});
cd /home/daytona/workspace/bmac-handout && node create_handout.js
python3 /home/daytona/skills/docx/scripts/office/validate.py /home/daytona/workspace/bmac-handout/BMAC_Patient_Education_Handout.docx
cd /home/daytona/workspace/bmac-handout && python3 -c " import zipfile, os with zipfile.ZipFile('BMAC_Patient_Education_Handout.docx', 'r') as z: names = z.namelist() print('Files in docx:', names[:10]) print('Size:', os.path.getsize('BMAC_Patient_Education_Handout.docx'), 'bytes') # quick XML check xml = z.read('word/document.xml').decode('utf-8', errors='replace') print('document.xml length:', len(xml)) print('No XML errors found' if '</w:document>' in xml else 'WARNING: document.xml may be malformed') "
BMAC Patient Education Handout
Word Document · DOCX
| Section | Content |
|---|---|
| 1. What Is BMAC? | Plain-language explanation of BMAC, why it uses your own bone marrow, and how healing cells work |
| 2. How Is BMAC Prepared? | 5-step visual table (harvest → centrifuge → inject), written for a non-medical reader |
| 3. Before Your Procedure | Amber warning box listing medications to stop (NSAIDs), plus a checklist of preparation steps |
| 4. On the Day | Timed schedule of the 60–90 minute visit |
| 5. Recovery Timeline | Full colour table: Hours 0–48 → Days 3–7 → Weeks 2–4 → Weeks 4–8 → Months 3–6 → Months 6–12, with what to expect and what to do at each stage |
| 6. After-Care | Side-by-side DO / DO NOT table with colour coding |
| 7. Physiotherapy | 4-phase rehab progression (Weeks 1–12 → Month 3–6) |
| 8. Warning Signs | Red-flag symptoms requiring urgent contact vs. normal expected symptoms |
| 9. FAQ | 7 common patient questions answered in plain language |
| Footer | Contact placeholder fields, disclaimer, document version/review date |
1-5