A cross-platform desktop application for qPCR data analysis, rewritten in C++ from the R package qPCRtools.
Pre-built binaries are available for download from GitHub Releases
- Windows:
qPCRtools-windows.zip- Extract and runqPCRtools.exe - macOS:
qPCRtools-macos.dmg- Open DMG and drag qPCRtools.app to Applications
No installation required! Just download and run.
-
Modern Web-based Interface
- Built with Qt6 QWebEngineView
- Responsive design using Bootstrap 5.3
- Interactive charts powered by ECharts
- Bilingual support (Chinese/English)
- Clean, modern UI inspired by ggplot2 aesthetics
-
Multiple Analysis Methods
- Standard Curve Calculation
- ΔCt (Delta Ct) Method
- ΔΔCt (Delta-Delta Ct) Method
-
Data Import
- CSV/TXT file support
- Excel (.xlsx) file support (planned)
- Interactive data preview
- Example data for quick start
-
Statistical Analysis
- t-test (independent and paired)
- Wilcoxon test (rank-sum and signed-rank)
- ANOVA with Tukey's HSD
- Outlier detection (IQR method)
-
Visualization
- ggplot2-style charts
- Standard curve plots
- Box plots
- Bar plots with error bars
- Significance labels
- Multiple color palettes
-
Multi-language Support
- 中文 (Chinese)
- English
Try qPCRtools with built-in example data:
- Download and extract the pre-built application
- Launch qPCRtools
- Click "Load Example Data" to load sample qPCR data
- Select analysis method and click "Run Analysis"
Or manually load example files from the examples/ directory:
examples/cq.csv- Cq values from qPCR experimentexamples/design.csv- Experimental design mapping
-
Import Data
- Load Cq data file (CSV format)
- Load experimental design file (optional)
- Preview data in the table
-
Configure Analysis
- Select analysis method (Standard Curve, ΔCt, ΔΔCt)
- Set reference gene and control group
- Choose statistical test method
- Configure visualization options
-
Run Analysis
- Click "Run Analysis" button
- View results in multiple tabs:
- Data Table: Expression values
- Charts: ggplot2-style visualizations
- Statistics: Test results with p-values
-
Export Results
- Export charts as images
- Export data tables
- Export statistical results
qPCRtools_cpp/
├── CMakeLists.txt # Main CMake configuration
├── README.md # This file
├── src/ # Source files
│ ├── Core/ # Core algorithms
│ │ ├── StandardCurve.cpp
│ │ ├── ExpressionCalculator.cpp
│ │ └── StatisticalTest.cpp
│ ├── Data/ # Data structures and parsers
│ │ ├── DataFrame.cpp
│ │ ├── CSVParser.cpp
│ │ └── ExcelImporter.cpp
│ ├── GUI/ # User interface
│ │ ├── WebMainWindow.cpp
│ │ └── WebBridge.cpp
│ └── Utils/ # Utility functions
├── include/ # Header files
│ ├── Core/
│ ├── Data/
│ ├── GUI/
│ └── Utils/
├── web/ # Web interface files
│ ├── index.html # Main HTML
│ ├── css/
│ │ └── style.css # Stylesheets
│ └── js/
│ ├── app.js # Application logic
│ ├── i18n.js # Internationalization
│ ├── jquery.min.js
│ ├── bootstrap.bundle.min.js
│ └── echarts.min.js # Chart library
├── examples/ # Example data files
│ ├── cq.csv # Sample Cq data
│ ├── design.csv # Sample experimental design
│ └── README.md # Example data documentation
└── translations/ # i18n translation files
If you prefer to build from source or contribute to development:
- CMake >= 3.20
- C++17 compiler (MSVC 2019+, GCC 10+, Clang 12+)
- Qt6 >= 6.5 (Core, Widgets, WebEngineWidgets, WebChannel)
- Eigen3 >= 3.4
- GSL (GNU Scientific Library) >= 2.7 (optional)
# Install dependencies via Homebrew
brew install cmake qt@6 eigen gsl- Install Qt6 from the official installer
- Install Visual Studio 2019 or later
- Install CMake from the official website
📖 Detailed Windows build guide: See WINDOWS_BUILD.md for step-by-step instructions.
sudo apt-get update
sudo apt-get install cmake qt6-base-dev qt6-webengine-dev libeigen3-dev libgsl-dev# Clone repository
git clone https://github.com/lixiang117423/qPCRtools_cpp.git
cd qPCRtools_cpp
# Create build directory
mkdir build && cd build
# Configure with CMake
cmake ..
# Build
cmake --build . --parallel
# Run the application
./qPCRtools # macOS/Linux
# or
qPCRtools.exe # WindowsIf you use this software in your research, please cite:
Li X, Wang Y, Li J, et al. qPCRtools: An R package for qPCR data processing and visualization. Frontiers in Genetics, 2022, 13: 1002704.
DOI: 10.3389/fgene.2022.1002704
📄 Full article: https://www.frontiersin.org/journals/genetics/articles/10.3389/fgene.2022.1002704/full
BibTeX:
@article{li2022qpcrtools,
title={qPCRtools: An R package for qPCR data processing and visualization},
author={Li, Xiang and Wang, Yan and Li, Jun and Li, Xueying and Zhang, Yage and Zhang, Yinping and Wang, Ji-Hong},
journal={Frontiers in Genetics},
volume={13},
pages={1002704},
year={2022},
publisher={Frontiers Media SA},
doi={10.3389/fgene.2022.1002704}
}MIT License - see LICENSE file for details
- Xiang LI (lixiang117423@gmail.com)
This is a C++ reimplementation of the original R package qPCRtools.