Polymerase Chain Reaction (PCR) is a common laboratory technique in biological and medical sciences, with a wide range of applications such as DNA cloning, DNA resequencing for single nucleotide polymorphism (SNP) discovery and quantification of gene expression. In the design of any PCR experiment, the first step of designing oligonucleotide primer pairs is crucial for the success of the experiment. Selection of inappropriate primers can result in no amplification (PCR failure) or amplification of non-targeted regions (mis-priming). Therefore, the primer pair is tailored to be specific to the desired target sequence.
The design of target-specific primers for PCR experiments typically requires consideration of different types of genomic information besides the target DNA sequence, such as repetitive DNA elements, intron/exon boundaries, and SNPs, which must be retrieved from various databases. All information is then combined to construct a sequence template for a primer design program. To confirm their specificity, designed primers are usually aligned against the corresponding genome sequence using tools like BLAST , BLAT , and PrimerBLAST in NCBI. If the aligned results return multiple hits, then the primers are regarded as non-specific and have to be redesigned by constructing a new template avoiding previously considered primer-binding regions. The whole process needs to be repeated manually until the desired primers are found. Thus, manually assigning an appropriate primer pair can be a tedious and time-consuming process, especially when high-throughput assays are required.
To resolve this situation, a number of automated primer designing tools have been developed based on Primer3  as web applications. These programs include SNPbox , ELXR , ExPrimer , MutScreener , EasyExonPrimer , PrimerZ , and others. Most existing tools are limited to specific regions of the human genome and hence they are not flexible enough for users to choose desired target genomic regions (e.g. promoter, intron/exon, SNP) to be amplified. After primers have been picked, most of the tools use UCSC In-Silico PCR  to verify the uniqueness of desired primer pair; however, when the selected primers perform poorly, the information from these unsuccessful primer pairs is not considered by these tools for redesigning primers.
While these programs provide some solutions related to the aforementioned primer design process, they are not always able to effectively design primers for two main problems, namely 1) no amplification due to severe mismatching, or lack of target and 2) mis-priming (non-specific binding besides the target sequence). These two problems lead to increased PCR failure rate . The first problem may arise because of unexpected SNPs in the primer 3' end (SNP-in-Primer). Alternatively, insertion/deletion (indel) polymorphisms may exist which either alter the length of the desired target, or prevent primer binding to the desired target. In some cases, the target sequence may be entirely absent, e.g. copy number variation (CNV) covering large stretches of DNA. Three prominent primer-designing tools that attempt to avoid SNP-in-Primer include ExonPrimer , EasyExonPrimer  and VariantSEQr . However, it is becoming increasingly clear that CNVs are also common and population-specific . Length and copy number polymorphisms can also cause both mismatching and non-primer binding to the desired target, yet these genetic variants are not considered by current primer designing tools. The second problem of mis-priming arises from the structural complexity of the genome. The human genome has many layers of repetition ranging from widespread chromosome segmental duplications, to gene families and pseudogenes to numerous repetitive elements (e.g. SINES, LINES, satellite sequences, etc.), which can all contribute to mis-priming . To our knowledge, there are no primer designing tools that can simultaneously address both of these issues.
To address these issues, we present a graphical web-based tool, named RExPrimer, which allows users to automatically design PCR primer pairs for amplifying human genomic sequence without leaving the website. RExPrimer uses Primer3 as the design core, since this open source software has been continuously adopted by research communities as the de facto standard [4–9]. The novel modules that address the aforementioned problems were created on top of the Primer3 core by locally incorporating annotated human genomic sequences. RExPrimer assesses primer candidates for SNP-in-Primer, indel polymorphisms, CNV, and related target sequences (e.g. pseudogenes) by crosschecking with local databases. Large integrated SNP and indel polymorphism databases can notify SNP-in-Primer effects, while information from structural variation databases identifies possible mis-priming. RExPrimer uniquely offers a redesign module for assisting users to correct the notified problems.