A modular research and visualization platform for exploring patient-specific cancer data through model-based simulation and data-driven analytical workflows.
OncoLens is an interactive desktop application designed to support multidisciplinary research, modeling, and exploratory clinical review. It enables users to ingest structured patient datasets, configure analytical workflows, and generate interactive visualizations that align tumor growth trajectories with treatment timelines.
The platform is built to evolve alongside in-house model development, data standardization efforts, and emerging research needs.
-
GDRS Modeling Workflow (Operational) Integrates an in-house growth–death model with an ODE solver to reconstruct historical tumor trajectories (“patient stories”) and generate short-term growth projections.
-
Dynamic Settings Engine Automatically generates configuration panels based on detected lesions, treatments, and available data fields.
-
Interactive Visualization Dual-panel plots align tumor growth curves with treatment timelines for longitudinal analysis.
-
Session Persistence Save and reload workflow settings using JSON files to support repeatable runs.
-
Workflow Expansion Framework Includes partially implemented generic plotting and multi-model analysis workflows designed for future research extensions.
Clinical and research datasets vary widely in structure and completeness, making it difficult to consistently apply analytical models and visual review processes. OncoLens provides a unified, interactive environment that bridges data ingestion, configurable modeling, and visualization, enabling reproducible analysis and structured discussion of patient-specific tumor behavior and treatment response within the Evolutionary Tumor Board (ETB).
digital-twin-pipeline/
├─ resources/
│ └─ images/
│ ├─ downloads/
│ └─ image files...
│ ├─ svg_icons/
│ └─ image files...
│ └─ svg_images/
│ └─ image files...
├─ src/
│ ├─ core/
│ ├─ json/
│ ├─ json_encoder.py
│ ├─ json_settings.py
│ └─ json_themes.py
│ ├─ models/
│ ├─ base_model.py
│ └─ gdrs_model.py
│ ├─ processing/
│ └─ auxiliary modeling scripts...
│ ├─ validation/
│ └─ data validation helper files...
│ ├─ app_config.py
│ ├─ image_functions.py
│ ├─ keyword_store.py
│ └─ pyqt_core.py
│ ├─ gui/
│ ├─ models/
│ └─ custom widget folders...
│ ├─ themes/
│ └─ json files with color schemes for app...
│ └─ views/
│ └─ columns/
│ └─ ui files for window...
│ └─ pages/
│ └─ ui files for window...
│ └─ windows/
│ └─ ui files for window...
│ └─ main_window.py
├─ coe_blue.ico
├─ LICENSE
├─ main.py
├─ MANIFEST.IN
├─ old_spec_file.spec # Legacy, used for reference
├─ package.py
├─ README.md
├─ settings.json # Important app settings config file
└─ setup.py
- Python 3.9.10 (recommended)
- NumPy
- Pandas
- Matplotlib
- PyQt6
- SciPy
- PyInstaller
- VS Code or equivalent Python IDE
- Clone the repository.
- Install dependencies via pip
- Open the project in your IDE.
- Run main.py.
- Use the main menu to select a workflow and upload a formatted dataset.
Note: PyInstaller packaging is implemented but not finalized. The application is currently validated for macOS only.
-
Patient Dataset (Spreadsheet) Structured Excel or CSV files containing lesion, laboratory, and treatment data.
-
Workflow Settings User-defined model parameters and visualization options.
-
Interactive Visualizations Tumor growth and treatment timeline plots.
-
Session Files (JSON) Saved configurations for repeatable analysis.
-
Derived Model Data Historical reconstructions and short-term growth projections.
The GDRS modeling workflow is fully operational. Additional workflows (generic plotting and multi-model analysis) are partially implemented and intended for future expansion. Packaging and cross-platform distribution remain in progress.
This project is licensed under the [MIT License].