Skip to main content

osteosarc

Python library and command-line tool for the public osteosarc.com dataset: one patient's osteosarcoma sequencing, variant calls, cancer vaccines and clinical history. Find files, select variants and vaccine peptides, and fetch reads around a variant without downloading an entire BAM.

Documentation · Key concepts · Command line · Python API · Changelog

Features

  • Browse without downloading. Search nearly 400,000 files by sample, timepoint and assay: bulk and single-cell RNA, exome, genome, Oxford Nanopore and PacBio.
  • Variants and vaccine peptides. Catalogue variants with checked genomic alleles, read counts, pipeline detections, vaccine peptides and ELISPOT results.
  • Reads around a variant. Indexed queries copy only the reads you need from a remote BAM into a cached, indexed local BAM.
  • Corrected by default. 32 documented, evidence-backed fixes to the published data, such as the MAP2 vaccine target's allele. Every load checks them against the snapshot's sources, and you can turn them off.
  • Clinical timeline. Treatments, procedures, imaging, MRD and lab results as a text chart or in an interactive terminal explorer.
  • Reproducible. Metadata snapshots, saved by download date with SHA-256 receipts, reopen offline. The website changes; your results don't, until you sync again.
  • OpenVax integration. Adapters for Varcode, Isovar, Topiary and Vaxrank, versioned read-fixture recipes, and a catalogue of 637 structural-variant candidates.

Install

python -m pip install osteosarc

Requires Python 3.9+ on Linux or macOS. Fetching reads also needs SAMtools on PATH.

Quickstart

from osteosarc import Dataset

data = Dataset.sync()  # Save today's website metadata (about 57 MB)
print(data.describe_samples())

rna = data.assets_for_sample("T0_tumor", kind="alignment", assay="rna-seq")
targets = data.variants(gene="DYNC1H1", status="ready")

source = rna["rna-seq/reprocessed/BG003082/BG003082.Aligned.sortedByCoord.out.md.bam"]
reads = data.extract_reads(source, variants=targets, padding=100)
print(reads.path)  # Local indexed BAM

The BAM key is the file's path in the dataset's public S3 bucket. Only the reads near the variants are downloaded, into a small indexed BAM in your local cache.

Later, Dataset.open() reopens your most recent snapshot without a network connection. The website changes over time, so snapshots are saved by download date: osteosarc snapshots lists them, and Dataset.open(date="2026-09") or --snapshot 2026-09 picks the newest from that month. Get started explains each step.

The same workflow from the terminal:

osteosarc sync
osteosarc samples
osteosarc assets --sample T0_tumor --kind alignment --assay rna-seq
osteosarc variants --gene DYNC1H1 --status ready
osteosarc reads rna-seq/reprocessed/BG003082/BG003082.Aligned.sortedByCoord.out.md.bam --variant DYNC1H1-chr14-101980529 --variant DYNC1H1-chr14-102030200 --padding 100
osteosarc explore

osteosarc explore opens an interactive browser for specimens, files, variants and the timeline. Type help for commands and quit to leave.

Guides

I want to… Read
Understand sample IDs, variant status, coordinates and corrections Key concepts
Find RNA, DNA, single-cell or long-read files and read tables Find samples and files
Get alleles, read counts or vaccine peptides Select variants
Fetch, filter or pair reads by variant or region Extract reads
Browse treatments, specimens, MRD and labs Browse the timeline
Pass data to Varcode, Isovar, Topiary or Vaxrank Use other libraries
Build small, verifiable test BAMs Read fixtures
Explore candidate structural variants SV interest catalogue

Data, license and citation

Osteosarc applies source corrections by default. Use Dataset.open(corrections=False) or osteosarc --no-corrections to see the published values.

Code is Apache-2.0. The dataset is listed as CC0-1.0 in the AWS Open Data Registry. Cite the dataset and your access date when using it.

Development

python -m pip install -e '.[test]'
ruff check osteosarc tests scripts
python -m pytest -q

See testing for documentation builds and live-example checks.

Release files for osteosarc 0.4.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for osteosarc 0.4.0
File Size Uploaded
osteosarc-0.4.0.tar.gz 879.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for osteosarc 0.4.0
File Interpreter ABI Platform
osteosarc-0.4.0-py3-none-any.whl Python 3 none any Details

Total release size: 1.4 MB

Release files / osteosarc-0.4.0.tar.gz

Download URL osteosarc-0.4.0.tar.gz
Size 879.6 kB
Tags Source
SHA-256 checksum
How to use checksums
04faa1859ee34a2b58e42bb9e79d14746fa315433a65951ea86b662c6beb61b5
BLAKE2b-256 checksum
How to use checksums
2f9f9d24ca7980f13ea386538396a6a558ec311800703180409ca69f9d1b9667
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.6

Release files / osteosarc-0.4.0-py3-none-any.whl

Download URL osteosarc-0.4.0-py3-none-any.whl
Size 566.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
9b51cf6b20b221e21a33a815693ac3139a40fca2c0d712cdb97ae2106f6980e2
BLAKE2b-256 checksum
How to use checksums
e8479471922387261aadcb6e7bf9b9db132755cc18cf7feac249717d168a74f7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.6

Release history Release notifications | RSS feed

0.6.0

2 release files

0.5.0

2 release files

This release

0.4.0 This release

2 release files

0.3.0

2 release files

0.2.6

2 release files

0.2.5

2 release files

0.2.4

2 release files

0.2.3

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page