Skip to main content

Customization Guide

Learn how to customize PrimerLab parameters for your specific research needs.

Overview

PrimerLab’s design can be customized at three levels:
  1. Presets — Pre-configured parameter sets
  2. Config Files — YAML-based configuration
  3. CLI Overrides — Command-line parameter adjustments

Customizable Parameters

Primer Properties

ParameterConfig PathRangeDescription
Lengthparameters.primer_size15-40 bpPrimer length in base pairs
Tmparameters.tm45-75°CMelting temperature
GC Contentparameters.gc20-80%Guanine-Cytosine percentage
parameters:
  primer_size:
    min: 18
    opt: 22
    max: 28
  tm:
    min: 58.0
    opt: 60.0
    max: 62.0
  gc:
    min: 40.0
    max: 60.0

Amplicon Properties

ParameterConfig PathTypical Values
Product Sizeparameters.product_size_range[[100, 300]]
Max Poly-Xparameters.max_poly_x3-5
Max Self-Compparameters.max_self_complementarity4-8
parameters:
  product_size_range: [[150, 250]]
  max_poly_x: 4
  max_self_complementarity: 6

QC Thresholds

ParameterConfig PathRecommended
Hairpin ΔGqc.hairpin_dg_min-2 to -4 kcal/mol
Dimer ΔGqc.dimer_dg_min-5 to -8 kcal/mol
Tm Differenceqc.tm_diff_max2-5°C
qc:
  mode: standard  # strict, standard, relaxed
  hairpin_dg_min: -3.0
  dimer_dg_min: -6.0
  tm_diff_max: 3.0

Overriding Presets

Start with a preset and override specific values:
preset: diagnostic_pcr

# Your overrides
parameters:
  tm:
    opt: 62.0  # Higher than default 60°C
  product_size_range: [[100, 300]]  # Larger than default 80-200

qc:
  mode: standard  # Relax from default strict

Application-Specific Recommendations

🧬 Clinical Diagnostics

preset: diagnostic_pcr

parameters:
  primer_size:
    opt: 22
  tm:
    min: 58.0
    opt: 60.0
    max: 62.0
  product_size_range: [[80, 150]]

qc:
  mode: strict
Key Points:
  • Short amplicons (80-150 bp) for rapid cycling
  • Strict QC to avoid false positives
  • Tight Tm range for reproducibility

🔬 Gene Cloning

preset: cloning_pcr

parameters:
  primer_size:
    min: 28
    opt: 32
    max: 40
  tm:
    opt: 64.0
  product_size_range: [[500, 2500]]

cloning:
  add_restriction_overhang: true
  common_sites:
    - EcoRI
    - BamHI
Key Points:
  • Longer primers to accommodate restriction sites
  • Higher Tm for added 5’ tails
  • Configure restriction sites in cloning section

🌿 Environmental DNA (eDNA)

preset: dna_barcoding

parameters:
  tm:
    min: 48.0
    opt: 52.0
    max: 56.0
  gc:
    min: 30.0
    max: 70.0

qc:
  mode: relaxed
Key Points:
  • Lower Tm for degraded templates
  • Wide GC range for diverse taxa
  • Relaxed QC for challenging samples

📊 qPCR / TaqMan

workflow: qpcr
mode: taqman

parameters:
  tm:
    opt: 60.0
  product_size_range: [[70, 150]]

probe:
  tm:
    min: 68.0
    opt: 70.0
    max: 72.0
  exclude_5_g: true
Key Points:
  • Probe Tm should be ~10°C higher than primers
  • Avoid G at 5’ end of probe (quenches fluorophore)
  • Small amplicons for efficient amplification

Creating Custom Config Files

Step 1: Start from Template

# Generate a template config
primerlab init --workflow pcr --output my_config.yaml

Step 2: Edit Parameters

Open my_config.yaml and modify as needed.

Step 3: Validate

primerlab validate my_config.yaml

Step 4: Run

primerlab run pcr --config my_config.yaml

CLI Quick Overrides

Override without editing config:
# Override Tm
primerlab run pcr --config base.yaml --tm-opt 62

# Override product size
primerlab run pcr --config base.yaml --product-min 100 --product-max 250

# Override QC mode
primerlab run pcr --config base.yaml --qc-mode relaxed

See Also