Team:EPFL/Software

MENU

What is Toehold Designer?

Generating new toehold switches requires in-silico processing. It is a quick step (~5 min) if a tool that pipelines the required processes is available. In the scope of our project we worked with existing toehold switches and also generated our own switches targeting Hepatitis C viral RNA (see results).

Toehold Designer strictly follows the Series A and B designs of the Zika virus2, generalized for any unique virus sequence.

Thanks to the NUPACK Design 4 and Analysis5 algorithms this tool analyses the optimality of the structure of the generated sequences by evaluating the target's availability for binding with the toehold (1), the toehold's availiability for binding with the target (2) and the sensor's complex defect (3).

By summing up (1), (2) and (3), and assigning to each of them a different weight 1 we can order the generated sequences by score from lowest up to the highest score where the sequences with lowest score have the most optimal structures.

It also makes use of the NUPACK Web application3 in order to generate images of the optimal secondary structure of the generated sequence.

You can then choose the first few Series A or B toeholds and test them in the lab.

The processing in more details

Given a unique sequence for a virus, the required steps to generate a new toehold switch (from the A or B series) are:

  • Split the sequence to smaller target sequences with a sliding window of length 362
  • Evaluate these smaller target sequences for their single-strandedness (i.e. their availability for binding with the toehold switch). This step is done by using the pair functionality of NUPACK
  • For each target sequence build the Series A and B toehold switches2
  • Evaluate the first 30 nucleotides of the generated Series A toehold switches for their single-strandedness (i.e. their availability for binding with the toehold switch). This step is also done by using the pair functionality of NUPACK
  • Calculate the complex defect for every Series A toehold. This step is done by using the complex defect functionality of NUPACK
  • Combine these coefficients in a single score for every toehold by giving them different importance coefficients1
  • Sort the toeholds by score in ascending order and chose the first toehold switches as the best ones
  • Display the results in the browser
  • For each Series A toehold give the possibility to see the different score components, the Series B sequence generated for the same target sequence and an image of the secondary structure generated by the NUPACK Web application3

Watch the video tutorial below to learn more!

How does it work?

Installation in 5 steps!

  • Install NUPACK 3.0 from here
  • Install Python from here
  • Open the command line and run the following commands:
    python get-pip.py
    pip install beautifulsoup4 Flask
  • Download and unzip the project here
  • Go to root of this repository and write in the command line:
    python toehold_designer.py

That's it. You have the toehold designer running in your browser now!

The Toehold designer is also available on our github page. Any future contributions are welcome!

References

1. Green, Alexander A., et al. "Toehold switches: de-novo-designed regulators of gene expression." Cell 159.4 (2014): 925-939.

2. Pardee, Keith, et al. "Rapid, low-cost detection of Zika virus using programmable biomolecular components." Cell 165.5 (2016): 1255-1266.

3. NUPACK Web Application
J. N. Zadeh, C. D. Steenberg, J. S. Bois, B. R. Wolfe, M. B. Pierce, A. R. Khan, R. M. Dirks, N. A. Pierce. NUPACK: analysis and design of nucleic acid systems. J Comput Chem, 32:170–173, 2011.

4. NUPACK Analysis Algorithms

  • R. M. Dirks, J. S. Bois, J. M. Schaeffer, E. Winfree, and N. A. Pierce. Thermodynamic analysis of interacting nucleic acid strands. SIAM Rev, 49:65-88, 2007.
  • R. M. Dirks and N. A. Pierce. An algorithm for computing nucleic acid base-pairing probabilities including pseudoknots. J Comput Chem, 25:1295-1304, 2004.
  • R. M. Dirks and N. A. Pierce. A partition function algorithm for nucleic acid secondary structure including pseudoknots. J Comput Chem, 24:1664-1677, 2003.

5. NUPACK Design Algorithms

  • B. R. Wolfe, N. J. Porubsky, J. N. Zadeh, R. M. Dirks, and N. A. Pierce. Constrained multistate sequence design for nucleic acid reaction pathway engineering. J Am Chem Soc, 139:3134-3144, 2017.
  • B. R. Wolfe and N. A. Pierce. Sequence design for a test tube of interacting nucleic acid strands. ACS Synth Biol, 4:1086-1100, 2015.
  • J. N. Zadeh, B. R. Wolfe, and N. A. Pierce. Nucleic acid sequence design via efficient ensemble defect optimization. J Comput Chem, 32:439–452, 2011.
  • R. M. Dirks, M. Lin, E. Winfree, and N. A. Pierce. Paradigms for computational nucleic acid design. Nucl Acids Res, 32:1392-1403, 2004. (pdf, supp info, supp seqs)