CancerBot helps you find clinical trials for cancer treatment quickly and easily. Sign up for free, share your treatment details, and get matched with potential trials in minutes.
HealthPython · TypeScriptGitHub @healthkey-aiOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
the EXACT trial clinical matching engine (EXtracting Attributes from Clinical Trials) used by CancerBot
Taken from the repository README
Loading the full README. The saved excerpt is shown below.
EXACT (EXtracting Attributes from Clinical Trials) is a stateless search and
matching engine for clinical trials. It connects to an external database that
holds the trial catalog and reference data — EXACT does not own or manage that
data.
Patient profiles are passed inline with each API request. They can also be retrieved from an external database that has a PatientInfo table in the form implemented by CTOMOP, which exposes a flat projection of a patient record from underlying OMOP tables.Read the full README ↗EXACT (EXtracting Attributes from Clinical Trials) is a stateless search and matching engine for clinical trials. It connects to an external database that holds the trial catalog and reference data — EXACT does not own or manage that data.
Patient profiles are passed inline with each API request. They can also be retrieved from an external database that has a PatientInfo table in the form implemented by CTOMOP, which exposes a flat projection of a patient record from underlying OMOP tables.
API_SURFACE.md — full REST API reference (endpoints, patient context schema, query params, response shapes).
| Doc | Description |
|---|---|
| docs/overview.md | Architecture, key components, data flow |
| docs/trials4patients.md | Running trial search for patients |
| docs/evaluator.md | Evaluating EXACT results against ground truth |
| docs/setup.md | Local development setup |
| API_SURFACE.md | REST API reference |
To match patients from an external patient database against the trial catalog without a running web server:
export TRIALS_DATABASE_URL=postgresql://...
export PATIENT_DATABASE_URL=postgresql://...
bash scripts/trials4patients.sh
See docs/trials4patients.md for all options and output structure.
To score EXACT results against a ground-truth CSV:
RESULTS_CSV=results.csv bash scripts/trials4patients.sh
bash scripts/evaluator/evaluate.sh scripts/evaluator/ground_truth.csv results.csv
See docs/evaluator.md for metrics, full workflow, and output options.
pip install -r requirements.txt
# Local DB for auth/tokens only
python manage.py migrate
# Point to the external trials database
export TRIALS_DATABASE_URL=postgresql://readonly:[email protected]:5432/trials
python manage.py runserver
When no external trials database is configured, EXACT falls back to a single local database for everything — useful for development and testing:
pip install -r requirements.txt
python manage.py migrate
python manage.py seed_reference_data
python manage.py runserver
Once the server is running, search for trials with curl:
curl -s -H "Authorization: Token <your-token>" \
'http://localhost:8000/trials/?type=eligible' \
-H 'Content-Type: application/json' \
-d '{"patientInfo": {"disease": "multiple myeloma", "patientAge": 55, "gender": "M"}}' | python -m json.tool
See docs/setup.md for full setup instructions, environment variables, secrets management, and test configuration.