Gibson assembly
The start of EGFP is cloned after the EcoRI site of pUC19. The homology needed by the assembly is split between the two PCR primers, as tails added at their 5' ends.
1
Starting code
This is the PHP code used by this example.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | public function gibsonAssembly( GenbankPlasmidMapperInterface $genbankPlasmidMapper, GibsonAssemblyInterface $gibsonAssembly ) { $oPlasmid = $this->loadPuc19($genbankPlasmidMapper); // see "Plasmid from GenBank" // The vector, read up to the EcoRI site of the polylinker (position 396), and the insert $oVector = $oPlasmid->getSequence()->sliceCircular(395 - 40, 40); $oInsert = new DnaSequence("ATGGTGAGCAAGGGCGAGGAGCTGTTCACCGGGGTGGTGCCCATCCTGGTCGAGCTGGAC"); // EGFP // Before PCR, the two pieces share nothing $oBefore = $gibsonAssembly->checkJunction($oVector, $oInsert, 15, 40); // 20 bp of homology, half carried by each primer $oArms = $gibsonAssembly->designHomologyArms($oVector, $oInsert, 20); // The PCR products: the tails are added at the 5' end of each primer $oVectorPcr = new DnaSequence($oVector->getValue() . (new DnaSequence($oArms->getUpstreamReversePrimerTail()))->reverseComplement()->getValue()); $oInsertPcr = new DnaSequence($oArms->getDownstreamForwardPrimerTail() . $oInsert->getValue()); $oAfter = $gibsonAssembly->checkJunction($oVectorPcr, $oInsertPcr, 15, 40); return $this->render('default/cloningGibsonAssembly.html.twig', [ 'vector' => $oVector, 'insert' => $oInsert, 'before' => $oBefore, 'arms' => $oArms, 'vectorPcr' => $oVectorPcr, 'insertPcr' => $oInsertPcr, 'after' => $oAfter, ]); } |
2
Result
Result returned by BioPHP for the demonstration data.
Fragments to join
| Vector (pUC19, 40 bp before EcoRI) | AGGGTTTTCCCAGTCACGACGTTGTAAAACGACGGCCAGT |
|---|---|
| Insert (EGFP, 60 bp) | ATGGTGAGCAAGGGCGAGGAGCTGTTCACCGGGGTGGTGCCCATCCTGGTCGAGCTGGAC |
| Junction before PCR | No overlap: these ends cannot be assembled |
Primer tails for 20 bp of homology
| Tail of the vector reverse primer | 5'-TGCTCACCAT-3' |
|---|---|
| Tail of the insert forward primer | 5'-GACGGCCAGT-3' |
After PCR with the tailed primers
| Vector PCR product (50 bp) | AGGGTTTTCCCAGTCACGACGTTGTAAAACGACGGCCAGTATGGTGAGCA |
|---|---|
| Insert PCR product (70 bp) | GACGGCCAGTATGGTGAGCAAGGGCGAGGAGCTGTTCACCGGGGTGGTGCCCATCCTGGTCGAGCTGGAC |
| Junction after PCR | 20 bp of overlap: GACGGCCAGTATGGTGAGCA |
The code above is the one actually executed by this page. Find the other examples in the left-hand column, or the tools in BioTools.