- Free software: MIT license
- Documentation: http://chronqc.readthedocs.io/en/latest/.
ChronQC is a quality control (QC) tracking system for clinical implementation of next-generation sequencing (NGS). ChronQC generates time series plots for various QC metrics, which allows comparison of the current run to historical runs. ChronQC has multiple features for tracking QC data including Westgard rules for clinical validity, laboratory-defined thresholds, and historical observations within a specified period. Users can record their notes and corrective actions directly onto the plots for long-term recordkeeping.
- Suited for different assays in a clinical laboratory
- Generates interactive time series plots for various metrics
- Records users' notes and corrective actions onto the graphs to facilitate long-term recordkeeping
- Provides high level of customization: works with local databases and generates different chart types
- Leverages existing standard tools such as MultiQC
https://nilesh-tawari.github.io/chronqc
ChronQC has two components: a command line interface compatible with NGS sequencing machines and a graphical user interface compatible with the clinical environment. HTML plots display metrics for each run or sample. Annotations are displayed on the right side of the plot and are stored in the chronqc.annotations.sqlite database for long-term recordkeeping.
ChronQC plots can be generated from,
- A custom SQLite database.
- For examples see, examples/custom_db_example.
- The output of MultiQC.
- For example on creating the ChronQC database and plots see, examples/multiqc_example_1.
- For example on creating, updating the ChronQC database and plots see, examples/multiqc_example_2.
For complete command line reference see the documentation.
For details of chart types see the documentation.
ChronQC is implemented in Python (tested with v2.7 / v3.5 / v3.6) and runs on all common operating systems (Windows, Linux and Mac OS X).
You can install ChronQC from PyPI using pip as follows:
pip install chronqc
Alternatively, you can install from GitHub:
git clone https://github.com/nilesh-tawari/ChronQC.git cd ChronQC pip install -r requirements.txt pip install --editable .
If you would like the development version instead, the command is:
pip install --upgrade --force-reinstall git+https://github.com/nilesh-tawari/ChronQC.git
Alternatively, ChronQC can also be used as Docker.
#Pull docker image
docker pull nileshtawari/chronqc:chronqc_1.0.4
#Run docker
docker run -it --rm -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix nileshtawari/chronqc:chronqc_1.0.4
#Test ChronQC using example data
cd /home/ChronQC
Then follow instructions given in getting started.
#(optional)Run docker with mounted folder
docker run -it --rm -e DISPLAY=$DISPLAY -u $(id -u) -v /tmp/.X11-unix:/tmp/.X11-unix -v /your_local_home_directory/your_data_directory:/data2 nileshtawari/chronqc:chronqc_1.0.4
- For details on how to automate ChronQC plot generation see, automate_chronqc.
- ChronQC: A Quality Control Monitoring System for Clinical Next Generation Sequencing
- Nilesh R. Tawari, Justine Jia Wen Seow, Dharuman Perumal, Jack L. Ow, Shimin Ang, Arun G. Devasia, Pauline C. Ng Bioinformatics, In press, https://doi.org/10.1093/bioinformatics/btx843
This project is licensed under the MIT License - see the LICENSE.md file for details