Inspiration
What it does
How we builtInspiration
Clinical risk tools exist in silos. A cardiologist runs CHA₂DS₂-VASc for stroke risk; a neurologist picks a seizure drug — but the two decisions collide in patients who need both. An enzyme-inducing seizure medication can quietly lower the levels of the anticoagulant a patient was just prescribed for stroke prevention, undoing the whole point of the therapy. I wanted to build something that treats the patient as one connected system instead of a stack of independent calculators.
What it does
NeurX walks a clinician through a five-step intake, then runs one patient through four linked engines:
CHA₂DS₂-VASc — ischemic stroke risk in atrial fibrillation (validated instrument) HAS-BLED — major bleeding risk if anticoagulated (validated instrument) Anticoagulation decision — weighs stroke benefit against bleeding risk, recommends a DOAC or warfarin, or holds off Post-stroke seizure risk + drug selection — estimates seizure risk after a stroke and, if a drug is warranted, ranks anti-seizure medications for that specific patient
The key feature is the link between the last two: if the anticoagulation stage put the patient on a blood thinner, the seizure-drug stage automatically penalizes enzyme-inducing drugs (like carbamazepine and phenytoin) because they'd interfere with it. Every score is shown as a transparent breakdown — no black boxes — so a user can audit exactly why each recommendation was made.
How I built it
Vanilla HTML, CSS, and JavaScript — a single self-contained file, no frameworks, no dependencies, deployed on Vercel. All clinical logic runs client-side as a transparent rule engine. The two established scores (CHA₂DS₂-VASc, HAS-BLED) are implemented to their published definitions; the post-stroke seizure model and drug-ranking layer are clearly labeled as illustrative teaching heuristics rather than validated tools. The interface is built to feel like diagnostic equipment: a live ECG-style header, step-by-step intake, and score cards that expand into full factor-by-factor breakdowns.
Challenges I ran into
The hardest part was resisting scope. It's tempting to add more conditions, but breadth without depth reads as padding. The real work was making the engines genuinely talk to each other — the anticoagulation-to-seizure-drug interaction — rather than bolting four calculators together. Getting the clinical logic honest was the other challenge: knowing which scores are validated and which are my own simplification, and labeling them transparently instead of pretending everything is clinical-grade.
Accomplishments I'm proud of
The cross-engine interaction actually works and is demonstrable on screen: change the upstream cardiac inputs and watch the downstream seizure-drug ranking shift. The whole thing is transparent — every number traces back to its contributing factors. And it's honest about its own limits, which I think matters more in a medical tool than a flashy claim would.
What I learned
How CHA₂DS₂-VASc and HAS-BLED are actually constructed, why the same risk factor (like a prior stroke) can raise both stroke risk and bleeding risk simultaneously, and how drug-drug interactions between anticoagulants and anti-seizure medications create real cross-specialty prescribing hazards.
What's next
Replace the illustrative seizure model with the validated SeLECT score, expand the drug-interaction matrix, and add more entry points into the pathway (e.g. starting from a seizure patient and working back toward cardiac risk). it
Log in or sign up for Devpost to join the conversation.