Primer designer

pip install primer_designer==0.2.0


Primer designer

package PyPI Package latest release PyPI Wheel Supported versions Supported implementations

Designs primers from a FASTA file using primers4clades website

  • Free software: BSD license


pip install primer_designer


It will send a FASTA alignment to primers4clades in order to design degenerate primers. Input data needed is an alignment in FASTA format containing at least 4 sequences. It is recommended that the beginning of each FASTA sequence description contains the taxon name between square brackets.


  • folder (str): path of folder containing the FASTA file alignments
  • tm (str): temperature
  • min_amplength (str): minimum amplicon length
  • max_amplength (str): maximum amplicon length
  • gencode (str): genetic code. See below for all available genetic codes
  • clustype (str): cluster distance metric: dna, protein.
  • amptype (str): substitution model used to estimate phylogenetic information
  • email (str): your email address so that primer4clades can send you email with detailed results


>>> # The values shown are the default. Change them if needed.
>>> from primer_designer import PrimerDesigner
>>> pd = PrimerDesigner()
>>> pd.folder = "alignments"   # folder containing the FASTA file alignments
>>> = "55"               # annealing temperature
>>> pd.min_amplength = "250"   # minimum amplicon length
>>> pd.max_amplength = "500"   # maximum amplicon length
>>> pd.gencode = "universal"   # see below for all available genetic codes
>>> pd.mode  = "primers"
>>> pd.clustype = "dna"
>>> pd.amptype = "dna_GTRG"    # substitution model used to estimate phylogenetic information
>>> = ""   # primer4clades will send you an email with very detailed results
>>> pd.design_primers()

The best primer pairs will be printed to your screen. Detailed results will be saved as HTML files in your alignments folder. But it is recommended if you also get the results by email. primers4clades will send you one email for each alignment. The genetic code table (variable gencode) can be any of the following:

  • universal for standard
  • 2 for vertebrate mitochondrial
  • 3 for yeast mitochondrial
  • 4 for mold and protozoa mitochondrial
  • 5 for invertebrate mitochondrial
  • 6 for ciliate
  • 9 for echinoderm and flatworm
  • 10 for euplotid nuclear
  • 11 for bacterial and plastid
  • 12 for alternative yeast nuclear
  • 13 for ascidian mitochondrial
  • 14 for flatworm mitochondrial
  • 15 for Blepharisma nuclear
  • 16 for Chlorophycean mitochondrial
  • 21 for Trematode mitochondrial
  • 22 for Scenedesmus obliquus mitochondrial
  • 23 for Thraustochytrium mitochondrial

The evolutionary substitution model can be any of the following (variable amptype):

  • protein_WAGG for protein WAG+G
  • protein_JTTG for protein JTT+G
  • protein_Blosum62G for protein Blosum62+G
  • protein_VTG for protein VT+G
  • protein_DayhoffG for protein Dayhoff+G
  • protein_MtREVG for protein MtREV+G
  • dna_HKYG for dna HKY+G
  • dna_GTRG for dna GTR+G
  • dna_K80G for dna K80+G
  • dna_TrNG for dna TrN+G
  • dna_JC69G for dna JC69+G



To run the all tests run: