TutorLoom
The learning platform for companies, colleges and training institutes. Free and open source, with an Enterprise edition.
翻译准备中
尚未收集仓库信息。
尚未检测到更新。GitHub 发布版本后会显示在这里。
Free clinical simulation scenarios. No cost, no login, no install, no network.
翻译准备中
取自仓库 README
正在加载完整 README。
查看完整 README ↗A free clinical simulator that runs in your browser. No login, no install, works offline.
Physical simulation labs cost hundreds of thousands of dollars, require you to be in the room, and are bottlenecked by scheduling. Open Sim Lab is a virtual patient you can open on a phone on a bus. You make decisions, the patient responds, and a debrief tells you what your reasoning missed.
Built for medical students, residents, and nurse anesthetists — anywhere in the world, on any device, with or without a network.
Not for clinical use. This is an educational simulator. It is not clinical decision support, not a dosing calculator, and not validated for any decision affecting a real patient.
256 bounded labs across 16 specialties:
| Module | Labs | Where |
|---|---|---|
| Anesthesia | 39 | /anesthesia |
| Emergency medicine | 25 | /emergency-medicine |
| Critical care | 24 | /critical-care |
| Cardiology | 17 | /cardiology |
| Pediatrics | 16 | /pediatrics |
| Neurology | 15 | /neurology |
| Obstetrics | 15 | /obstetrics |
| Respiratory medicine | 15 | /respiratory-medicine |
| Toxicology | 15 | /toxicology |
| Endocrine & metabolic | 12 | /endocrine-metabolic |
| Neonatology | 11 | /neonatology |
| Infectious disease | 10 | /infectious-disease |
| Nursing | 9 | /medical-surgical-nursing |
| Renal & electrolyte | 12 | /renal-electrolyte |
| Oncology | 11 | /oncology |
| Surgery and trauma | 10 | /surgery-trauma |
Counts are the registered scenarios the build audits, not a roadmap. Every module is at its full planned count, and 256 is the number the catalogue was ratified against.
Each lab is a closed-loop scenario: the physiology keeps running while you decide, and what you do changes where the patient goes next.
Every lab also carries a worked example you can watch and take the controls back from at any point, and a private tutor that reads only what you have actually done. The tutor is silent unless you ask for it, says nothing at all on the unassisted setting, and never supplies the diagnosis a lesson exists to leave open. All sixteen specialties are complete on both counts -- renal, oncology, endocrine, nursing, infectious-disease, neonatology, toxicology, neurology, obstetrics, respiratory-medicine, pediatrics, cardiology, critical-care, emergency-medicine, anesthesia, and surgery and trauma, whose ten labs are the newest.
Your practice stays on your device. No accounts, no analytics, no telemetry. Progress, transcripts, reflections, and debriefs live in your browser. Nothing is sent anywhere unless you open the problem-report form, preview exactly what it contains, and submit it yourself. Every file you export — transcript, event log, concentration CSV, reviewer notes, practice history — carries both statements with it: that this is not for clinical use, and that no clinician has reviewed it. A file that leaves the interface leaves the labels behind, so it says so itself.
The pharmacology is ours. Model parameters are transcribed by hand from the primary literature, each carrying its citation and the range it is valid over. Nothing is fetched at build or run time, and tests assert published reference values so a mistyped digit fails immediately.
Claims are sourced and correctable. Crisis protocols trace to their issuing bodies,
physiology is checked against published benchmarks, the limitations register is public,
and confirmed mistakes stay in a permanent corrections log — published
in the product at /corrections, not only in this repository. The release gate refuses to
publish without it.
Everything above is what the project is for. This is what it currently is.
There is no alpha, beta, or 1.0 here, and no staged content vocabulary either. Open Sim Lab is one
evergreen product in one state: the catalog grows and gets corrected continuously, and every item
ships labeled "Educational use only. Not clinically reviewed." That label is the whole claim.
A build identifies itself by its date and the commit it came from, not by a stage, and
npm run lint fails on a prerelease version or staged-release wording anywhere a reader can
reach it.
Publishing anyway is a deliberate decision, recorded in
openspec/changes/release-evergreen-preview/. An
unreviewed corpus nobody can open does not get more accurate by waiting. A public one with a
working correction path does. So the trade is explicit: you get the material, you are told plainly
that nothing in it is signed, and the report a problem control in every scenario is how you
tell us we are wrong. Confirmed errors are appended permanently to CORRECTIONS.md.
The reviewed release channel still exists and still refuses to publish. It is what institutional
adoption packs are built from, and it will stay refused until named clinicians sign specific
content versions.
What is done: the waveform engine, compartment solver, physiology, design system, cockpit, sound, accessibility, debrief, practice regions, and offline shell — with over 14,000 automated tests and the Benumof apnea benchmarks inside 5% of published times.
npm install
npm run dev
npm run ci runs the full gate: specs, lint, build, tests, and budgets.
The build is a folder of static files. There is no server-side code, so it deploys unchanged to any static host — which is the point: a program can self-host this without depending on us.
Read CONTRIBUTING.md. The project is spec-driven with
OpenSpec; the authoritative specification is the capability tree
under openspec/specs/, and clinical review is governed by
GOVERNANCE.md.
Two contributions need no clinical credential: a second-source check of a pharmacology parameter
from the verification queue, and translating the
interface. Interface translators can check a locale catalog entirely in the browser at
/translation-coverage before committing;
CONTRIBUTING.md has both paths.
Code is MIT. Educational content is openly licensed per scenario. See LICENSE.