Let's take a look at how to use the TeselaGen DESIGN module to create a DNA library based on a hierarchical approach. In this example we will be assembling a backbone, promoter, gene, and terminator in a type IIs enzyme digest/ligation reaction where the assembly pieces for the final reaction will be sourced using from existing DNA via PCR. The PCR reaction can be substituted with direct synthesis as preferred.


For this assembly we will be introducing flanking BsaI recognition and cut sites in the PCR primers in the preparation step, therefore the input parts that we use in this assembly can be nearly arbitrary, with the caveat that parts should not have internal BsaI sites (if so then the software will display warnings in the assembly report).  Feel free to use any backbone, promoter, gene and terminator parts in this example. The design is also available as an example design, which will populate your sequence and parts libraries with the data that you need to follow this example.

Note: we will not be internalizing any of the BsaI overhangs on our input parts, to both maintain flexibility with the parts that we can choose to go into the assembly and to simplify the scope of this introductory hierarchical design. The BsaI assembly junctions will be present in our target constructs and unaccounted for in our input parts. It is possible and often desired to include the assembly junction within a part definition. More about using this technique is covered in more advanced example tutorials.

Sketch out the DNA design

We will start by creating a new design called Simple Hierarchical Design. From the main page, click Designs → Designs → New Design. Save the new design as Simple Hierarchical Design. Make sure that you are in an appropriate view mode. From the design editor page, click View → View Mode → Vertical.

This view mode separates input and output DNA into their own "cards" with connecting colored lines that symbolize the assembly reaction. The topmost card represents the final DNA assembly product with the assembly reaction beneath it. The tab on the assembly reaction colored lines identifies the reaction. Input cards representing DNA assembly reactants are arrayed below. This process can continue until DNA fragments that represent the building blocks for the entire hierarchical assembly are defined.

Note: a card with only one bin cannot be broken down further, so you cannot add a reaction to a card that only has one bin.

Note that the design paradigm is "top down". Users specify the final library they would like to build and break that library into intermediate steps until they reach the lowest level of the hierarchy, the building block parts. Once a design is specified in this way, the software builds from bottom up, generating all of the instructions for the reactions and steps that will result in the desired library. Note also that there are different ways to approach a hierarchal design. One is a biology centric approach, defining fragments of DNA as "parts" and helping the user think of the design process in terms of functional DNA parts, many of which may already be stored in plasmids and are available to source using simple PCR reactions. Another is a factory approach suitable for service centers or vendors, where the approach might be to just do binary splits of the DNA from the top down until we get to fragment sizes that can be synthesized, then reversing the process through standardized assembly methods. This introductory example favors the biology centric approach in order to stay relevant to most bench scientists.

Layout the target construct

When working in the hierarchical view we start with the final goal in mind and then break it down into its constituent parts.  For this example, we’ll want the following bins in our final assembly product card:

  1. Backbone (Origin of Replication icon)

  2. Promoter (Promoter icon)

  3. Gene (CDS icon)

  4. Terminator (Terminator icon)

Add bins to the topmost card by right-clicking the card and choosing Insert > Insert Bin Right until there are a total of four bins.

Next, click on a bin and give it an appropriate icon by clicking the corresponding icon in the dark blue SBOL glyph ribbon above the design editor canvas.

Give the bins a name by clicking on the bin and opening the Bin Details inspector panel from the design editor toolbar along the right side of the screen.

Add first assembly reaction, BsaI digest

Next, change the assembly reaction to be a digest reaction instead of the default Mock Assembly. Right click on the reaction tab on the blue reaction line and choose Change Assembly Reaction. From the Assembly Reaction Parameters window, select Contiguous Express Digest as the Assembly Method, Default as the Parameter Preset, and BsaI as the Restriction Enzyme (if BsaI isn’t an option then you may need to add it in the Molecules → Restriction Enzymes library). Give the reaction a name, e.g. “BsaI Digest” and then click the next button.

Note: You can also set custom Assembly Report Naming Templates which will affect how the app names various items in the assembly report. Also, if you have a version of this reaction form that you’d like to reuse in later designs, you can save the form as an Assembly Reaction Preset. The preset will appear in the reaction preset library and can be used to quickly fill out the reaction form with a single click.

We’ll be defining the reactants by splitting up the bins of the product card. In our case we want each bin to be a separate input so let's choose Split All Bins and then click the Change Assembly Reaction button. Our design should now look like this:

Assign overhangs

After changing the reaction we now have some extra UI elements in the design editor. There are blue icons just above the bins for each BsaI recognition site and cut site in the input cards and for the BsaI assembly junctions in the output card. Click on one of these icons to see more information in the Junction Details inspector panel.

Note: The Golden Gate and Contiguous Express Digest assembly methods are quite similar.  The difference is that when using the Golden Gate assembly method, the software will design the optimum overhang region for you (maximizing oligo reuse for combinatorial designs, minimizing design secondary structures or off-target ligations) from within the input part definition so that the assembly is scarless. The Contiguous Express Digest assembly on the other hand, allows you to choose a specific overhang and places the burden of proper digest site handling on the designer. You’ll see these extra digest site icons for Contiguous Express Digests to help the user manage the validation required by the digest assembly.  The Express Digest style of assembly also enables the user to build up a library of reusable / modular parts because the overhangs are explicitly set.

Now assign all of the overhang base pairs for this digest. Right click the reaction tab, choose the ‘Assign Overhangs’ option, and input the following.

Input 1 - Input 2: CACC
Input 2 - Input 3: GTTA
Input 3 - Input 4: GTGG
Input 4 - Input 1: AGTC

When assigning overhangs, the software will prohibit you from duplicating the overhang within a given reaction (including reverse-complement duplicates), from inputting self-incompatible overhangs, and from inputting overhangs of the incorrect length for the chosen restriction enzyme.

Note: You can also assign overhangs one-at-a-time from the Junction Details inspector panel.

Change internalization preferences

Let’s take a look at how we are defining the BsaI overhangs. When the digest/ligation process occurs, two overhangs will merge into one junction. If we do not define this junction in one of the input parts, then we will have an extra bit of sequence at the junctions in the output. Let’s take a look at the junction between cards 1.1 and 1.2

Here we see that the overhang in Card 1.1 is internal to the insert (that is to say the overhang occurs within the part definition), but in Card 1.2 the overhang is outside the part definition in the flanking sequence of the promoter (Type IIs enzyme recognition sites can never be internalized within a part because they will always be left behind after the digest). Notice that the overhang position above the bin reflects the internalization location. Since this overhang consists of “CACC”, then our backbone part would need to end with CACC and then immediately outside of the part definition it should have a BsaI recognition site on the reverse strand. We’ll build this design for maximum flexibility with our parts, so let’s take off the CACC end requirement by changing the overhang position in Card 1.1 from "Insert" to "Flanking Sequence". Once that’s done, you’ll notice that the assembly junction for this overhang in the output card is now straddling two bins and becomes outlined in a blue rectangle. This shows that the junction is now effectively an extra bin that contains additional sequence that is not accounted for in the normal bins of the output card. Click through the other digest sites and place all the overhangs in the Flanking Sequence of the insert.  

Add overhang bins

Now we should have all of our digest sites on the input cards floating off to the side of our input bins. This signifies that those BsaI sites should be immediately flanking the part definition in their source sequence. If you try to insert a part into a bin that doesn’t contain them then the Design Editor will highlight the part in red with a validation error message. In our case we don’t have those flanking BsaI sites already in place, so let’s add them in another assembly step. In Card 1.1 right-click the backbone bin and choose Insert → Insert Bin Left (No Propagation), and then right-click the backbone bin again and choose Insert → Insert Bin Right (No Propagation). “No propagation” means that these bins will be left behind in the assembly reaction and will not propagate up into the output card. 

Note: Keyboard shortcuts are handy for building out a design quickly. There are shortcuts for inserting a bin both with and without propagation. You can see all of our keyboard shortcuts in the user dropdown menu in the top right → Keyboard Shortcuts.

These bins will contain the BsaI sites, to help signify that you can give the one on the left an SBOL glyph of “Five Prime Overhang” and the one on the right “Three Prime Overhang” (click the bin, then click the icon in the blue icon ribbon towards the top). You can also give the bins a name of “BsaI Sites” in the Bin Details inspector panel.

Add PCR reactions

Next let’s add our final layer of assembly reactions. Our BsaI Sites are small enough to be embedded in PCR primers, so let’s add PCR reactions to all of these cards. Either right-click the card and choose Add Assembly Reaction or click the [+] button underneath the card.  From there, give the reaction a name and assembly method of “PCR” with the Default Parameter Preset and default Output Naming Templates. Click Next.

Note: The PCR assembly method is only available for cards that are linear, not circular. You can check the circularity of a card in the Card Details inspector panel on the right-hand side of the editor. 

When you are defining the reactant groups, let’s choose Split All Bins to achieve three reactant groups that represent the forward primer, PCR template, and reverse primer. Do this for all four of the BsaI digest input cards.

Note: You can hide assembly trees by clicking the +/- circle in the middle of a reaction’s colored line. This is helpful if you want to focus only on a specific region of a design. In this screenshot the last PCR reaction is collapsed.

Add parts to top card

Now we’ve specified our design we are ready to add specific DNA parts. In the top Target Construct card, either double click a cell or right-click a cell and choose Insert → Insert Part to add your DNA Parts to the design. Add your own backbone, promoter, gene, and terminator parts in this manner. If you had previously imported this example design into your library and are rebuilding it from scratch then the parts should be in your library. If not then you may need to import this example design first or use your own data.

Note: While a normal Part will usually suit your needs, there are several other ways of adding DNA to a design.

  • Part - An annotation on a source sequence with a start and stop index

  • Unmapped Part - A part name that isn’t associated with any DNA yet

  • Base Pairs - A part unassociated with a sequence consisting of typed-in base pairs

  • Assembly Piece - A part that already has flanking homology regions on it, when used in a Gibson/SLiC/CPEC reaction our assembly software will design the overlapping ends to conform to the assembly piece part

  • Sequence - A convenience method of creating and inserting a part that spans an entire sequence

  • Part Set - A group of multiple parts tied together in one UI element, useful to reduce clutter in the design if inserting 100+ parts

Add base pairs for overhang bins

Finally we need to add parts to the BsaI Site bins. Instead of adding a normal part that’s defined on a source sequence we’ll be inserting Base Pairs for these.  Base Pair insertion is especially useful in Contiguous Express Digests designs as a way to insert the small Type IIs enzyme recognition sites or overhangs.
Let’s start with Card 1.1. Click on the digest site above the first bin to bring up the Junction Details Inspector Panel. There you’ll see a visualization of BsaI along with the Overhang Base Pairs. From this we know that the base pairs needed in this bin are GGTCTCNAGTC. In an empty cell in the BsaI Sites bin, right-click and choose Insert → Insert Base Pairs. In both the name and the base pairs fields, type in GGTCTCaAGTC (in this example design we use an A in place of the N for all of the BsaI sites). Now add the reverse BsaI sites in the third bin of Card 1.1.  First click on the digest site above the bin to see which overhang base pairs to use and also to reference the BsaI recognition site. In this case we’ll need the overhang, CACC, and then the reverse BsaI recognition site of NGAGACC. Right click an empty cell in the bin and insert base pairs of CACCaGAGACC into the bin.

Note: The overhang base pairs are always displayed as they exist on the top strand. 

Continue until you’ve filled in the rest of the BsaI Site bins. If you insert a part or base pairs that turn red then that part has failed the validation required by the digest sites. Hover the part to see which digest site is unsatisfied, and then click that digest site to review the requirements and then adjust parts or base pairs accordingly.

Submit for assembly

Once all the parts have been inserted, we’re ready to Submit for Assembly. Click the green button at top right. Depending on how many combinations are in your design, this process may take a few minutes.

Note: If the design is not ready to submit the green “Submit for Assembly” button will be disabled. You’ll need at least one part in every bin and every part passing validation in order to submit.

In this design we have five individual assemblies, one BsaI digest / ligation and four PCR reactions. We will get a separate assembly report for each of these reactions, all linked together in a folder in the Assembly Reports section of the Inspector Panel along the right. More details about how to read and interpret the assembly reports can be found in other tutorials.  

Did this answer your question?