An automated primer design pipeline for conserved regions with specificity validation
Project description
Primer Designer
An automated bioinformatics pipeline for designing PCR primers targeting conserved genomic regions with built-in specificity validation.
Features
- Automated Workflow: Integrates BLAST, MAFFT, and Primer3 into a seamless pipeline
- Conservation Analysis: Identifies conserved regions across homologous sequences
- Specificity Validation: Verifies primer specificity against NCBI databases
- Graphical Interface: User-friendly PyQt6 GUI for easy operation
- Command-Line Tools: Flexible CLI for batch processing and automation
- Configurable Parameters: Extensive customization via YAML configuration
Quick Start
Installation
# Step 1: Install Python package
pip install -e .
# Step 2: Set up bioinformatics tools (optional - automatic via Snakemake)
python setup_envs.py
Important: MAFFT and Primer3 are automatically installed when using Snakemake or the GUI. Manual setup is only needed if you want to use CLI tools directly. See INSTALL.md for details.
Launch GUI (Recommended for Beginners)
primer-designer
The GUI handles all dependencies automatically through Snakemake.
Run Pipeline via Snakemake
# First run: automatically creates Conda environments (may take 5-10 min)
snakemake --use-conda --conda-prefix ./envs -j 8
# Subsequent runs: fast execution using cached environments
snakemake --use-conda --conda-prefix ./envs -j 8 all
Workflow Overview
- Remote BLAST: Query NCBI to find homologous sequences
- MAFFT Alignment: Align sequences and identify conserved regions
- Primer3 Design: Design primers targeting conserved areas
- Specificity Check: Validate primers against off-target binding
Command-Line Tools
After installation, the following commands are available:
primer-designerorprimer-designer-gui- Launch graphical interfaceprimer-blast- Run remote BLAST searchprimer-mafft- Perform MAFFT alignment and conservation analysisprimer-design- Design primers using Primer3primer-specificity- Check primer specificity
Configuration
Edit config.yaml to customize:
- NCBI email and API key
- BLAST parameters (database, e-value, hit list size)
- Conservation detection thresholds
- Primer design constraints (Tm, GC%, size)
- Specificity checking parameters
Input Files
Place your FASTA files in backend/tasks/fastas/ or configure paths in config.yaml.
Output Files
blast/*.xml- BLAST results in XML formatmafft/*.bed- Conserved regions in BED formatmafft/*.fasta- Multiple sequence alignmentsprimer/*.tsv- Designed primer pairsprimer/*_specificity.tsv- Specificity validation results
Requirements
- Python 3.8+
- Conda (for bioinformatics tools)
- 4 GB RAM minimum (8 GB recommended)
Documentation
- Installation Guide - Detailed setup instructions
- Configuration - Parameter reference
License
MIT License - see LICENSE file for details.
Citation
If you use this software in your research, please cite:
[Add citation information here]
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file primer_designer_byao-0.1.0.tar.gz.
File metadata
- Download URL: primer_designer_byao-0.1.0.tar.gz
- Upload date:
- Size: 65.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
46864782f0ec90923a2b87abafb1bf9ce31b1c9748b1427ca363d48945b8db30
|
|
| MD5 |
a8ca3bb943ed0bb17439c3105851e76e
|
|
| BLAKE2b-256 |
66269b5b7a669e9e419dccacb8f9834311daf66ec2972b144a50c7accc6f9f8a
|
File details
Details for the file primer_designer_byao-0.1.0-py3-none-any.whl.
File metadata
- Download URL: primer_designer_byao-0.1.0-py3-none-any.whl
- Upload date:
- Size: 67.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d61af3a3c1e47c56e1711d42c28a14b79ba48dd43a771376ff60cb462f01de6e
|
|
| MD5 |
3b4982da23f85f606e25ce1d494186f8
|
|
| BLAKE2b-256 |
ffda0b32ab3b04a16b7906281f8a8e7b0c876b22320c178e071420110e72aef5
|