Potato puts a genome locus in igv.js or a protein structure in a 3D viewer in front of reviewers and records each reviewer's call, such as a variant judged real or the residues of a binding site. Potato is free and open source and runs on your own server, so unpublished data stays on your machines.
Manual review is a standard step after automated analysis in genomics and structural biology. Variant callers are followed by people checking the reads under each call, and predicted structures are checked residue by residue against their confidence scores. A published standard operating procedure for somatic variant refinement gives reviewers four calls, Somatic, Germline, Ambiguous, and Fail, and was written to reduce how much reviewers differ from one another (Barnell et al., 2019). Potato runs that kind of review as a study, which means each locus or structure goes to the reviewers you assign, every call is stored with the person who made the call, and agreement between reviewers can be measured.
Life sciences tasks in Potato
Each row is a display or scheme that ships with Potato 2.12, and the linked page has its configuration.
| Task | How Potato does it | Docs |
|---|---|---|
| Manual variant review | A genome_locus display opens each call in igv.js with the reference, reads, variant calls, and other tracks, beside a radio question for the call | Genome loci |
| Mark residues on a structure | A protein_structure display shows mmCIF or PDB files in 3D, and a viewer_selection scheme stores the residues clicked, such as a binding site or an interface | Protein structures |
| Review a predicted model | The same display colors the cartoon by pLDDT and shows a PAE image beside it, so reviewers can flag regions where the model looks wrong | Protein structures |
| Curate biomedical text | Span labels for genes, chemicals, or diseases, plus relations between them | Span annotation |
| Classify images | Labels, boxes, and polygons on microscopy or histology images, with deep zoom for gigapixel slides | Deep zoom |
A variant review project
The part of a config below opens each item's locus in igv.js with a local reference, a VCF of calls and the sample's reads, and asks the reviewer for a call. The labels follow the four calls of the Barnell et al. procedure, and the full configuration with the data format is on the genome loci page.
instance_display:
fields:
- key: locus
type: genome_locus
label: "Locus"
display_options:
reference:
fasta: genome/ref.fa # .fai next to it
name: ref
flank: 60
tracks:
- name: "Calls"
url: calls/cohort.vcf.gz # .tbi next to it
- name: "Reads"
field: bam # each item names its BAM file
annotation_schemes:
- annotation_type: radio
name: call_review
description: "What is this call?"
labels: ["Somatic", "Germline", "Ambiguous", "Fail"]
label_requirement:
required: trueigv.js ships with Potato and reads indexed BAM, CRAM, VCF, and FASTA files a slice at a time from the media directory. With a local reference and local tracks, the page loads nothing from outside the Potato server.
Working alongside IGV, Mol*, and curation tools
Desktop IGV is where most people look at reads, and tools such as igver and BatchIGVPictures script batches of IGV screenshots for reviewing many calls. Mol* and ChimeraX are the viewers for exploring a structure in depth. Potato embeds igv.js and a 3D structure viewer (3Dmol.js by default, Mol* as an option) so that a review becomes a queue of items with one stored answer per reviewer. Potato does not call variants, predict structures, or replace a lab's analysis software.
Frequently asked questions
Can reviewers see reads in igv.js and record a call for each variant?
Yes. The genome_locus display opens each item's locus in igv.js with the reference sequence, read alignments, variant calls, and any other tracks you list, and a radio question beside the viewer records the call. A viewer_selection scheme can also record which call or feature the reviewer clicked as evidence. The radio shortcuts work while igv.js is on the page.
Can experts review an AlphaFold model's confidence region by region?
Yes. The protein_structure display colors the structure by pLDDT and can show the PAE image beside the structure, and reviewers click the residues where the model looks wrong, which a viewer_selection scheme stores. A structure loads from the project's media directory, or from an AlphaFold DB URL when the display sets allow_remote: true.
Can it run on our own server so unpublished data never leaves the institution?
Yes. Potato runs on your server, and both viewers read their files from the project's media directory by default. The genome display loads nothing from outside the Potato server when the reference and tracks are local, and a structure URL is fetched only when allow_remote: true is set.
Further reading
- Genome and protein structure tools compared, for IGV, JBrowse, Apollo, PyMOL, and ChimeraX beside Potato
- Genome loci and Protein structures, for the full configuration of each viewer
- Air-gapped deployment, for installing the Mol* bundle with
potato vendor fetchfor an offline server - Healthcare and clinical and computer vision, for neighboring fields on this site
References
- Barnell et al. (2019). Standard operating procedure for somatic variant refinement of sequencing data with paired tumor and normal samples. Genetics in Medicine 21. https://doi.org/10.1038/s41436-018-0278-z