An open, deterministic, browser-based planning-support toolkit for the spinopelvic relationship in total hip arthroplasty. Takes per-case spinopelvic measurements and emits a non-numeric rule-state signal with named plain-text drivers, an age-adjusted PI–LL band, an approach-conditional combined-version band, a rotation-matrix cup orientation, sensitivity and Monte Carlo analyses, FHIR R4 and DICOM SR exports, and an Ed25519-signed reproducibility manifest. Runs entirely in the browser, no server, all case data persists locally through IndexedDB.
SPIN-THA is positioned as planning support under a surgeon's supervision. It does not
recommend a cup orientation, does not diagnose instability, and does not
replace surgeon judgment. The embedded PelvisAtlas backbone (TCIA CT-LYMPH-NODES,
a healthy lymph-node imaging cohort, N=12) is used as shape context only — not as a population reference for
clinical decision making. See docs/V7_5_FDA_CDS_ASSESSMENT.md and docs/V7_5_PHI_POLICY.md for the full positioning.
The deterministic engine produces a fixed set of typed outputs from a fixed set of typed inputs. Every coefficient regime, every band, every fallback is named and visible.
Non-numeric level — high / watch / low — with the list of named, plain-text drivers that fired. The legacy uncalibrated "risk score" is gone.
Lafage-style age-adjusted band rather than a flat |PI−LL| > 10° rule. Driver: pi_ll_age_adjusted_mismatch.
combinedVersionBandFor(case) returns posterior, direct-anterior, lateral, and default bands. The approach changes the band, not the patient.
Geometric rotation-matrix cup orientation is emitted alongside the standard small-angle linear approximation, so the reviewer can see where they diverge.
Coefficients are case-conditional on the AV definition (radiographic / operative / anatomic). A coefficient_regime_warning driver fires when |ΔPT| exceeds 25°.
plausibilityIssues() against PHYSIOLOGIC_RANGES. Negative ΔSS and similar physical impossibilities raise an implausible_measurement driver (HIGH).
Per-input sensitivity analysis around the entered values. Surfaces which inputs the rule-state actually depends on for this case.
Uncertainty propagation under per-input observer confidence. Missing confidence entries are excluded, not imputed to 0.5.
Computed T1PA proxy emitted alongside the spinopelvic block. Useful when a measured T1PA isn't on the radiograph.
A fhir_bundle of Observations covering every present measurement and every derived metric. One-click Download FHIR Bundle action.
Structured report following TID 1500 with TID 5200-style measurement groups, linked to the source imaging study by SOP Instance UID.
The reproducibility manifest is signed with Ed25519. Hash is over inputs only: case_id, atlas_id, engine_version, rule_version, measurements, history, imaging, cup_plan.
The engine is validated against a synthetic case bank covering three mobility phenotypes, with the audit history bundled in the repository. 33 of 38 findings from the independent v7.4 review are addressed in the shipped v7.5/v7.6 build.
docs/run_engine_tests_v7_5.jsverify_package_v7_5.py
The reproducibility hash is over inputs alone — feed the same inputs back into
the same engine version and you get the same outputs byte-for-byte. Engine version is
pinned globally as window.SPINTHAEngineV75.
Keyboard-first navigation, undo on the last measurement, local persistence so a power blink doesn't cost a case. Print is gated behind an explicit confirm dialog.
Move through the workflow without taking a hand off the keyboard.
Direct numeric stage selection from anywhere.
Reverse the most recent measurement entry. Same as the explicit Undo button.
Case state, edits, cup adjustments, validation entries, observer ID, and active step persist via localStorage and IndexedDB.
The single-file 3D pelvis viewer ships alongside the workbench. The SoftwareX paper, BibTeX,
figures, and results table live in manuscript/ in the repository.
Single-file 3D pelvis viewer. No build step. Same offline guarantee as the workbench.
Open, deterministic, audit-driven web toolkit for spinopelvic planning support in THA. Five figures, synthetic case bank, full results table.
Bone and Joint Reconstruction Research Center, Iran University of Medical Sciences, Shafa-Yahyaeian Orthopedic Hospital, Tehran, Iran.
Bone and Joint Reconstruction Research Center, Iran University of Medical Sciences. ORCID 0009-0002-3176-1956.
Bone and Joint Reconstruction Research Center, Iran University of Medical Sciences. ORCID 0000-0001-6869-0333.
The MIT code is free. A clinical site license covers deployment support, integration help, hash-verified releases, and indemnification language. See commercial offerings →