A reproducible shelf-life decision, with the model record attached.
OpenPharmaStability analyzes CSV or XLSX stability data locally in Python using ICH Q1E-inspired fixed-effect batch regression and one-sided confidence-bound crossing.
The decision is visible in the evidence.
Golden assay example: 42 rows, 3 batches, 7 time points from 0 to 24 months. The lower one-sided 95% confidence bound crosses the 95.0% specification at 17.95 months.
Method record
| Engine | Python statistical engine; local execution |
|---|---|
| Model | Fixed-effect batch regression; common slope with batch-specific intercepts |
| Poolability | Slope interaction p=0.9056; batch intercept p=1.658e-16 |
| Decision rule | One-sided 95% mean-response confidence bound crossing the lower specification limit |
| Observed data | 42 rows; 3 batches; time points 0, 3, 6, 9, 12, 18, and 24 months |
| Outputs | HTML report, JSON decision record, confidence plot, and optional PDF |
| Multi-attribute sample | impurity_a limits the product decision at 7 months |
Supported scope
- CSV and XLSX stability data
- Fixed-effect multi-batch regression
- One-sided confidence-bound crossing
- Multi-attribute limiting decisions
- Inspectable report artifacts
Explicit boundaries
- Regulatory approval or submission
- Validated GxP operation
- 21 CFR Part 11 controls
- Automatic scientific judgment
Local execution
Your data stays on your machine. The public site is documentation and sample evidence; analyses run through the installed Python package and local workspace.
Decision support only
OpenPharmaStability provides statistical evidence for qualified review. It does not replace scientific judgment, quality review, or regulatory decision-making.
From stability data to an inspectable record.
The browser presents the evidence. The Python package owns the calculations.
Provide batch, condition, time, attribute, value, and specification columns in CSV or XLSX.
The engine validates the data, tests batch poolability, fits the model, and computes the bound.
Inspect the plot, assumptions, warnings, model choice, and machine-readable record.
Bring the evidence into a qualified stability review without overstating the software's regulatory role.
Install and launch the local workspace
$ pip install openpharmastability $ openpharmastability-ui --host 127.0.0.1 --port 8765
Run the golden example from the CLI
$ openpharmastability analyze examples/assay_3batch.csv \
--condition "25C/60RH" \
--attribute assay \
--output report.html