Clinical data automation · evidence first
Automation you can put in a submission.
Tools for SDTM, ADaM, TLF and define.xml, with the working notes behind them. Every number on this site links to the run that produced it. Where something is unproven, it says so.
Run R in the browser now Read the writing
No login for the demo. Synthetic data only.
The pain
ADaM has no published executable rules.
You can download 981 machine-checkable conformance rules for SDTM, SEND, TIG and USDM and run them on a package tonight. For ADaM the public count is zero, so every ADaM review is a person reading a spec. We wrote the missing rules and shipped each one with a fixture that proves it fires.
How the rules library was builtWorking tools
Open the tool, not a diagram of it.
RLab
Learn R for clinical programming by running it. 23 gated topics, no login.
OpenPyLab
The Python track. 18 topics, same gated-card engine as RLab.
OpenSDTM Mapper
Raw study data to SDTM domains, with the refusals shown, not hidden.
OpenR-Forge Studio
Read, build, compare and document pharmaverse R packages.
OpenClinical R Packages
Ten R packages for SDTM, ADaM, TLF and define.xml work.
OpenShellForge
TLF shells to runnable programs across 35 output classes.
OpenOnly endpoints that answered on the last check appear here. Panels show example output, not your data. All 11 tools.
Live demo
Try it before you read about it.
RLab runs clinical R in your browser on synthetic ADaM. Twenty-three topics, each gated by a check that must pass before the next card opens. No account, nothing installed.
Open RLabWho this is for
Collaborators
Programmers and statisticians who want to build the missing pieces in the open, with a gate on every claim.
Ask for the collaborator tierTeams and recruiters
See the work running, read the notes behind it, and judge the method on the runs, not the résumé.
See the toolsPractitioners
Decision tables, SOPs and study packs you can paste into a SAP or an ADRG. Articles are never behind a login.
Start readingHow a post is made
Only a run writes evidence.
- Run. A tool or a gate produces the number, with its log.
- Provenance table. Every figure in the draft is tied to that log. Anything unmeasured is marked as such.
- Review. A person reads it against the never-say list: no sponsor, compound or vendor names, synthetic data only.
- Publish. Two flagship pieces and two ops notes a month. Nothing is bulk-converted.
The rule you can test
Change the numbers. This is why we never print a bare percentage.
46 of 68 reads as 67.6%
but a single run this size is consistent with anything from 56% to 77% (Wilson 95%).
Default values: ShellForge v2 on the CDISC ARS oracle, 46 of 68 analyses matched, run of 2026-08-25.
Data and compliance
- Synthetic and public-standard data only, on every page and in every tool.
- No sponsor, compound, study or vendor model is named anywhere on this site.
- Articles are never gated. Only downloadable files have tiers, enforced in the database, not in page code.
- Nothing here is validated for a live submission. Treat output as a second reviewer.
- Every figure carries its run. If you find one that does not, it is a bug and we will fix it.
Straight answers
- Is this a product or a blog?
- Both, on purpose. The tools are live services you can open. The writing is the working notes behind them. Neither is a sales page: there is no pricing here because nothing here is priced.
- Why do you write "46 of 68" instead of "68%"?
- One run is an observation, not a rate. A count keeps the denominator visible, and the interval below it shows how much a single run can move. A bare percentage hides both.
- Can I use the tools on my own study?
- Yes, on synthetic or public-standard data. Every tool refuses what it cannot prove and says so on screen. Nothing here is validated for a live submission; treat the output as a second reviewer, not a signature.
- Who writes this?
- Bhanoji D. Where a piece was drafted with a model, the provenance table on the post says so and names what was measured by a run.
- Do you name sponsors, compounds or vendors?
- No. Every dataset on this site is synthetic or a public standard, and it says so on the page. If you find something that identifies a study, tell us and it comes down.
- How do I collaborate?
- Create an account, then ask for the collaborator tier from your account page. Collaborators see working documents and unreleased tools. Articles stay free for everyone.
Latest writing
-
The PFS censoring decision table you can paste into a SAP
Progression-free survival censoring rules, written as one table you can drop into the SAP, define.xml and ADRG — plus the ADaM traps that survive review.
-
Risk scoring is not testing — a vendor-neutral SOP for R packages in GxP
Most R validation packages score risk and stop. Scoring tells you how much testing to do; it is not the testing. Here is the SOP that separates them.
Start
Run something, then read something.
Self-serve first. The demo needs nothing from you. An account only unlocks the downloadable files.