Skip to content
Dave Lawrence edited this page Aug 26, 2026 · 35 revisions

Wiki

The wiki is for technical documentation. See also user guide

Table of Contents

Scope

VariantGrid aims to allow biologists and medical scientists to perform filtering, visualisation and curation of variant (ie VCF derived) data themselves via a graphical interface.

We aim to integrate with existing mapping & variant calling pipelines, LIMS and patient record systems in labs.

System Overview

  • Django
  • Postgres
  • Celery - for async worker jobs
  • RabbitMQ - Celery broker
  • Redis - cache and Celery result backend

We make a number of technical trade-offs:

  • System designed for 10-100k samples, mostly exomes
  • Multi-sample analysis is done on samples from same VCF (ie we do not store bams or gVCFs)
  • Optimise for bioinformatician productivity vs raw performance

Supported genome builds: GRCh37, GRCh38 and T2T-CHM13v2.0.

See also:

Variants

Variants from different VCFs are linked to a single database record. VCF sample data (zygosity/allele depth etc) are stored in partitioned tables, and packed into a single row (to reduce joins on multi-sample queries)

Patients

Patient and phenotype management is handled in the "patients" app. See the user guide for how patients, samples and phenotypes fit together.

Annotation

Genes

Analysis

Users can make custom variant filters graphically by constructing a directed acyclic graph of Analysis Nodes which represent sources or filters of variants.

These filters work entirely in SQL (abstracted via Django Q objects) and so can be combined easily using logical operators and work in real time.

Classification

See https://shariant.readthedocs.io

Germline and somatic classifications are separated by allele origin bucket (AlleleOriginBucket: Germline / Somatic / Unknown), which flows through to grouping, discordance and ClinVar export.

ClinVar-Export

Sequencing Data

Sequencing and QC is handled in the "seqauto" app. It crawls disks to load QC files and import VCFs, and exposes DRF ViewSets (seqauto/views_rest.py) for sequencing runs, enrichment kits, sequencers and coverage.

Misc

Authentication

Database

Front End

Install

Configuration

Maintenance

Clone this wiki locally