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/
| Reference | Type | Key Contribution |
|---|---|---|
| Lee et al., Arthroscopy 2024 [PMID 39428140] | Review | Surgical BMAC applications, harvest sites, yield volumes |
| Schäfer et al., J Transl Med 2019 [PMID 30961655] | Comparative Study | Device comparison, MSC subpopulation quantitation, growth factor enrichment |
| Migliorini et al., Br Med Bull 2025 [PMID 39506910] | Systematic Review | Knee OA indications, injection protocols |
| Park et al., Medicina 2025 [PMID 40428811] | Narrative Review | Preparation variability, injection strategies, patient selection |
| Dave et al., J Orthop 2025 [PMID 40313480] | Systematic Review/Meta-Analysis | Axial vs. appendicular harvest sites, progenitor cell counts |
| Everts & Panero, Phys Med Rehabil Clin 2023 [PMID 36410885] | Review | MSC biology, autologous orthobiologic preparation science |
| D'Souza et al., J Pain Res 2024 [PMID 39282657] | Evidence-Based Guidelines | Multispecialty consensus on regenerative medicine, BMAC |
| Chahla et al., Steadman Philippon (Arthrosc Tech 2017) | Technical Note | Step-by-step harvest & processing technique (PSIS, 3,200 rpm × 15 min) |
| Cole et al., Orthobiologics for Cartilage Repair 2025 | Comprehensive Review | IL-1RA levels, posterior vs. anterior crest, multiple aliquots |
| Neubauer et al., Ann Joint | Surgical Technique | Zone model entry, density gradient centrifugation, scaffold seeding |
| Component | Proportion / Concentration |
|---|---|
| Mesenchymal stem/stromal cells (MSCs) | 0.001–0.01% of mononuclear cells |
| Hematopoietic stem cells (HSCs) | Variable |
| Platelets | 3–5× whole blood concentration |
| Total nucleated cells (TNCs) | 10–50× concentrated vs. aspirate |
| Red blood cells | Reduced/eliminated after processing |
| White blood cells | Retained (variable by device) |
| Indication | Evidence Level |
|---|---|
| Knee osteoarthritis (KL grades I–III) | Level II–III (multiple prospective studies) |
| Focal chondral defects (knee, hip, ankle) | Level III–IV |
| Rotator cuff repair augmentation | Level II (systematic review 2025) |
| ACL reconstruction augmentation | Level III–IV |
| Acetabular labral repair augmentation | Level III–IV |
| Non-union / delayed fracture healing | Level III |
| Osteonecrosis (early stages) | Level III |
| Tendinopathy (recalcitrant) | Level III |
| Item | Specification |
|---|---|
| Bone marrow aspiration trocar/needle | 11- or 13-gauge, 10–15 cm (e.g., Jamshidi-type; powered or manual) |
| Aspiration syringes | 10 mL or 30 mL luer-lock (30 mL preferred for control) |
| Anticoagulant | ACD-A (Acid Citrate Dextrose Solution A) — preferred; OR heparin 1,000 U/mL |
| Processing device | Closed, FDA-cleared system (see below) |
| Centrifuge | Integrated within commercial system |
| 200-µm mesh filter | For pre-processing filtration |
| Sterile draping and antiseptic | Standard surgical prep |
| Ultrasound machine | For injection guidance (optional but recommended) |
| Fluoroscopy (optional) | For deep aspiration site confirmation |
| System | Manufacturer | Centrifugation | Yield | Notes |
|---|---|---|---|---|
| Harvest SmartPReP2 BMAC | Terumo BCT (Harvest Technologies) | 3,200 rpm × 15 min | ~6 mL from 60 mL | Original "BMAC" namesake; most published data |
| Emcyte GenesisCS | Emcyte Corporation | Variable | ~7–10 mL | Higher TNC enrichment in studies |
| Magellan | Isto Biologics (formerly Arteriocyte) | Dual spin | ~6–8 mL | Higher IL-1RA/IL-1β ratio vs. SmartPReP2 |
| Marrow Cellution | Aspire Medical | Single-pass filtration | Variable | No centrifugation; higher MSC yield per mL claimed |
| BIOMET MarrowStim Mini | Biomet Biologics | 350–400 × g × 5–10 min | ~3–5 mL | Used in rotator cuff and animal studies |
Note: Schäfer et al. (PMID 30961655) directly compared Emcyte and Harvest devices and found both concentrated TNCs, platelets, and MSC subpopulations with >90% cell viability, but with different MSC surface marker profiles. No device can be universally recommended based on clinical outcome data alone.
| Site | TNC Yield vs. Iliac Crest | When to Use | Special Consideration |
|---|---|---|---|
| Anterior iliac crest (ASIS) | Equivalent | Supine procedures | Use Hernigou zone model; entry ~2.5 cm distal to ASIS |
| Proximal tibia | ~50% of iliac crest | Knee surgeries; saves position change | Lower yield; convenient for knee procedures |
| Distal femur | ~50–70% of iliac crest | Knee surgeries | Useful intraoperatively |
| Proximal humerus | Variable | Shoulder procedures | Anterolateral approach; cadaveric validation |
| Proximal femur / ilium body | Variable | Hip procedures | 120 mL aspirated in acetabular labral repair techniques |
| Calcaneus | Limited data | Foot/ankle | Encinas et al., Foot Ankle Orthop 2023 |
2025 Meta-Analysis Update (Dave et al., PMID 40313480): BMAC from axial (iliac crest) vs. appendicular (tibia, femur) skeleton shows no statistically significant difference in TNC count or CFU count. This supports harvesting at appendicular sites near the operative field when convenient, avoiding a second incision site.
| Step | Parameters | Purpose |
|---|---|---|
| Spin 1 | 2,400 rpm (~400–500 × g) × 10 min | Separate RBCs from buffy coat and plasma |
| Layer extraction | Remove and discard: buffy coat + platelet-poor plasma | Collect RBC layer for Spin 2 |
| Spin 2 | 3,400 rpm (~900–1,000 × g) × 6 min | Concentrate cells into white cell pellet |
| Final product | Resuspend BMAC/white cell pellet in platelet-poor plasma | ~6–10 mL final BMAC |
| Step | Parameters |
|---|---|
| Load | 60 mL filtered bone marrow aspirate |
| Centrifuge | 3,200 rpm × 15 minutes (single spin, closed system) |
| Yield | ~6 mL BMAC |
| Cell viability | ~90% post-processing |
| Step | Parameters |
|---|---|
| Load | 60 mL bone marrow aspirate |
| Centrifuge | 350 × g × 5 minutes |
| Yield | ~3–5 mL BMAC |
| Parameter | Target Value |
|---|---|
| Platelet concentration | ≥3–5× whole blood baseline |
| Total nucleated cells | ≥1.0 × 10⁷ cells/mL |
| Cell viability | ≥90% (7-AAD or Trypan Blue exclusion) |
| CFU-F (colony forming units-fibroblast) | ≥100 CFU/mL (if assay available) |
| RBC contamination | Minimal (pale yellow to slightly red) |
Note: MSC quantification via flow cytometry (CD45−CD73+CD90+CD105+) is the gold standard but not routine in clinical settings. CFU-F assay at 14 days is the most validated surrogate.
| Parameter | Recommendation |
|---|---|
| Volume per injection | 3–6 mL BMAC (6 mL most commonly reported) |
| Number of injections | Single injection is standard (most RCTs); repeat at 6 months if partial response |
| Guidance | Ultrasound-guided preferred (anterolateral or superolateral approach for knee) |
| Post-injection rest | Relative rest 48 hours; avoid high-impact activity 1–2 weeks |
| NSAID avoidance | 2 weeks pre- and post-injection |
| Corticosteroid avoidance | 4–6 weeks pre-injection |
| Application | Technique | Volume |
|---|---|---|
| Rotator cuff repair | Apply to repair site / suture interface at end of procedure | 3–6 mL |
| ACL reconstruction | Inject into tibial tunnel or apply to graft before insertion | 3–5 mL |
| Chondral defect | Soak scaffold (e.g., collagen sponge, HA scaffold) with 2 mL per 2 cm² | 4–7 mL |
| Fracture non-union | Percutaneous injection at fracture site under fluoroscopy | 3–6 mL |
| Osteonecrosis | Intraosseous decompression + BMAC backfill | 3–6 mL |
| Factor | Effect | Evidence |
|---|---|---|
| Age | Significant decline in MSC count and potency with age >50 | Cavallo et al. 2023 |
| Harvest site | Iliac crest > proximal tibia (~2×); axial vs. appendicular equivalent in meta-analysis | Dave et al. 2025 |
| Aspiration volume per aliquot | >2–3 mL dilutes CTP-O concentration rapidly | Muschler et al. 2017 |
| Anticoagulant | ACD-A preserves platelet integrity better than heparin | Chahla et al. |
| Centrifugation parameters | Speed, duration, and g-force affect final cell composition | Schäfer et al. 2019 |
| Processing device | Significant inter-device variability in MSC subpopulation profiles | Schäfer et al. 2019 |
| Time to processing | Process within 2 hours of aspiration; do not freeze unless using validated cryopreservation | |
| Sex/BMI | No significant effect when using single commercial processing system | PMC12690796 |
| Application | Key Finding | Evidence Level |
|---|---|---|
| Knee OA | Significant improvement in pain + function vs. baseline; may be superior to PRP at 12 months in some trials; delays TKA in some patients | Level II (systematic review 2025, PMID 39506910) |
| Rotator cuff repair | Lower revision rate; improved functional scores; accelerated tendon-bone healing | Level II (systematic review 2025, PMID 39581273) |
| Chondral defects | Superior cartilage quality macroscopically and histologically in animal models; positive clinical results (IKDC, KOOS, VAS) | Level III–IV |
| Acetabular labral repair | Higher functional outcome scores vs. repair alone | Level IV |
| Fracture non-union | Positive outcomes in case series; no large RCTs | Level IV |
BMAC CLINIC PROTOCOL — QUICK REFERENCE
PATIENT PREP
□ Stop NSAIDs 7 days prior
□ Stop anticoagulants per protocol
□ CBC, coagulation screen
□ Imaging to confirm indication & grade
□ Informed consent
HARVEST (PSIS preferred / proximal tibia for knee surgery)
□ Position: Prone (PSIS) or Supine (ASIS/tibia)
□ Sterile prep + drape
□ Local anesthetic to skin + periosteum
□ Preload syringe: 1 mL ACD-A per 10 mL aspirate
□ Insert trocar — confirm intraosseous
□ Aspirate 2 mL per needle position
□ Redirect trajectory every 2 mL
□ Total target: 60 mL aspirate
□ Filter through 200-µm mesh
PROCESSING (SmartPReP2 or equivalent)
□ Load into processing device
□ Centrifuge: 3,200 rpm × 15 min
□ Collect ~6 mL BMAC
□ QC: colour, cell count if available
INJECTION
□ US-guided for intra-articular
□ Volume: 3–6 mL
□ Single injection (repeat at 6–12 months PRN)
POST-PROCEDURE
□ Rest 48 hours
□ No NSAIDs × 2 weeks
□ Physiotherapy from Day 3–5
□ Follow-up: 4 weeks, 3 months, 6 months, 12 months
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
What do you mean by '1-5'?