Team:AMU-Poznan/Project
From 2014.igem.org
Revision as of 20:51, 17 October 2014 by Szeherezadess (Talk | contribs)
sh-miR Designer v2.0Sh-miR designer is a project we started during iGEM 2013. This year we would like to continue and expand functionality of the software. sh-miR designer v1.0 (link) is aimed to create sh-miR molecules based on siRNAs provided by the user. In sh-miR designer v2.0 only the mRNA number (from NCBI database), which expression should be decreased can be provided. Moreover, we expanded functionality of the software with off-target validation and check of immune motifs and also extended miRNA-shuttles database. sh-miR Designer is a software aimed for fast and efficient design of effective RNA interference (RNAi) reagents - sh-miRs, also known as artificial miRNAs. sh-miRs are RNA particles whose structure is based on miRNA precursor pri-miRNA, but sequence interacting with transcript is changed depending on research purpose. Maintenance of structure of pri-miRNA is very important to enable cellular processing and therefore ensure functionality of artificial particles. sh-miRs delivered to cells on genetic vectors - plasmids or viral vectors - enter natural RNAi pathway and silence target mRNA. They can be used in genetic therapies and basic biomedical research. We will provide two applications to access the software, one which require siRNA sequences and the second which require transcript accession number from NCBI database. Each user will receive an account with login (e-mail) and password where he/she would be able to check history of software usage.input form: users' history: Biological backgroundRNA interference (RNAi) is a physiological process of posttranscriptional gene expression regulation caused by double stranded RNA molecules. This is one of the most willingly used experimental techniques. It is used in experiments designed to explore gene function, in creation cellular models of diseases or in genetic therapy design. Among RNAi technology reagents are siRNA (short interfering RNA) and vector reagents shRNA (short hairpin RNA) and sh-miR (sh- microRNA). RNAi reagents are integrated into endogenous RNAi pathway on different phases. sh-miR reagents are designed in the way to be similar to endogenous miRNA precursors (pri-miRNA), because it is important feature to be recognized by proteins involved in microRNA (miRNA) biogenesis. shRNA or sh-miR reagents are introduced into cells with usage of genetic vectors – plasmids or viral vectors to ensure intracellular expression. They have huge therapeutic potential beacuse of stable reagent production in cells what enables one time therapeutic dosage. Usage of synthetic siRNA reagents requires often dosage, what makes therapy more difficult, especially in case of Central Nervous System Diseases. It was recently shown that RNAi reagents introduces into cells can trigger unwanted non-specific effects, e.g. can interact with different transcripts besides the desired one (so called off-target effect) or induce immunological effect. Because in processing of sh-miR reagents endogenous endonucleasis Drosha and Dicer are involved, in case of high expression of reagent they can saturate those proteins as well as Exportin-5 transport protein responsible for export of sh-miR from nucleus. The saturation can influence endogenous RNAi mechanism. It was shown that sh-miR reagents influence less endogenous RNAi pathway, because of lower level of produced double-stranded RNA (dsRNA), preserving efficiency of translation silencing. They also show longer effect than different types of RNAi reagents. Because of described features sh-miR reagents seems to be good choice when designing efficient and non-toxic RNAi reagents. sh-miR Designer software was designed sh-miR Designer is a software aimed for fast and efficient design of effective RNA interference (RNAi) reagents - sh-miRs, also known as artificial miRNAs. sh-miRs are RNA particles whose structure is based on miRNA precursor pri-miRNA, but sequence interacting with transcript is changed depending on research purpose. Until now scientists have to use multiple unconnected software to design single sh-miR molecule. It is time consuming process, what limits number of designed molecules for biological testing. There is no such software, which includes all important features as molecule spatial structure. Maintenance of structure of pri-miRNA is very important to enable cellular processing and therefore ensure functionality of artificial particles. This interdisciplinary project includes computer sciences with biomedical science. sh-miRs delivered to cells on genetic vectors - plasmids or viral vectors - enter natural RNAi pathway and silence target mRNA. They can be used in genetic therapies and basic biomedical research.Standard PartsWe are creating a particle which can be inserted into plasmid built by Standard parts from Registry of Standard Biological Parts. The sh-miR molecules are inserted into plasmid backbone downstream chosen promoter. You can add any regulatory sequence you want or maybe a fragment coding fluorescent protein to see if the transfection was succesfull. The molecules are fully compatibile with Standard Biological Parts - what is important for users from iGEM especially :). picture from http://biosettia.com/User GuideUsage via Web server
go to our website shmir.wmi.amu.edu.pl
Technology
The application was built with Python 2.7. It is divided into 3 parts:
RESTful API - the “heart” of our software - it performs all calculations. Our application is built on CentOS (Linux) operating system. To maintain better compatibility with our server we use Vagrant to create Virtual Machine and Puppet to manage infrastructure of our project. All you need to do is: type into console “vagrant up” and after a while everything is ready to work. This subproject is written with following technologies/frameworks/libraries: Flask, Flask-Cache, SqlAlchemy, PostgreSQL, Celery, Flower, Rabbitmq, Redis, BioPython, mfold (lightweight), uwsgi, sphinx, Python testing tools (mock, nose, unittest).
Console client - simple console application which communicates with API using requests library. It has 3 options: mfold (folding structure), from_sirna (create sh-miR from siRNA) and from_transcript (create sh-miR from transcript name).
Website - application written in Django framework. It enables you to use the API via graphical interface. You can also create your own account and save the history of your requests for later usage.
API documentationHere you can find documentation from code: API: shmir-api.rtfd.org Client: shmir-client.rtfd.org Webpage: shmir-designer.rtfd.orgAPI for developersHere you can find api for developers: https://github.com/Nozdi/shmirReleases (re-use of 2013iGEM software)sh-miR designer v1.0First version of the program presented on iGEM 2013 by our team. The user have to provide siRNA sequence (one or both strands). The miRNA database includes 5 miRNAs.sh-miR designer v1.1Strand discrimination functionality was added based on miRbase. extended miRNA databasesh-miR designer v2.0siRNA prediction algorithm was added to functionality (the input is NCBI transcript number) user can choose GC content of siRNA molecule, maximal off-target, if he/she wants immunostimulatory sequences inside the molecule and to choose if he/she wants to include all or chosen scaffold extended miRNA database What we are working on: strand discrimination based on therodynamics of siRNA ends; preparing construct with flanking restriction enzymes providing plasmids with parts from standard partsUnit Tests
In our application we are using unit tests to test alghoritms, functions and database.
We are testing inputs and outputs:
def test_validate_gc_content(self): is_in_range = validate_gc_content('ACGT', 40, 60) self.assertTrue(is_in_range) Caught errors: def multiple_input(self, data, error): for strand in data: with self.assertRaises(errors.InputException) as err: validators.check_input(strand) self.assertEqual(error, str(err.exception)) Database models: def test_get_and_put_to_db(self): new_obj = self.TestModel(id=153) self.put_to_db(new_obj) objs = self.get_all(self.TestModel) self.assertEqual(len(objs), 1)We are using Mock library to test our functions which are using external API’s to create fake response from server and return them into our function: @patch.object(ncbi_api.Entrez, 'esearch') @patch.object(ncbi_api.Entrez, 'efetch') def test_get_data(self, mock_efetch, mock_esearch): ids = [69] mock_read = Mock() mock_read.read.return_value = json.dumps({'esearchresult': {'idlist': ids}}) mock_esearch.return_value = mock_read ncbi_api.get_data(self.GOOD_MRNA) mock_esearch.assert_called_with( term='NM_001128164.1', db=self.DATA_BASE, retmode='json' ) mock_efetch.assert_called_once_with( db=self.DATA_BASE, id=ids, rettype='fasta', retmode='text' ) Validationold version shmiR v1.0 (average time)real 0m6.854s user 0m0.063s sys 0m0.027snew version shmiR v1.1 (average times)real 0m3.271s user 0m0.155s sys 0m0.041sDesigned sh-miRfor $ ./shmir_client.py from_transcript NM_000546.5 1: backbone: miR-31, score: 106, sequence: ACATGACGGAGGTTGTGAG pdf: ./results/transcript/e9e8b9a2-7e3b-4b24-b26a-633332a3f6b2/miR-31/7270b2d2-0aca-472b-853e-5a9631164d46 result: CATAACAACGAAGAGGGATGGTATTGCTCCTGTAACTCGGAACTGGAGAGGACATGACGGAGGTTGTGAGCGTTGAACTGGGAACCCTCACAACCTCCGTCA TGTCTCTCCAGTTCCGAGTTACAGGAGCAATACCATCCCTCTTCGTTGTTATGCTTTCCTGTCTGACAGCAGCTTGGCTACCTCCGTCCTGTTCCTCCTTGTCTT 2: backbone: miR-31, score: 106, sequence: ATGTTTTGTAGAGATGGGG pdf: ./results/transcript/e9e8b9a2-7e3b-4b24-b26a-633332a3f6b2/miR-31/56232916-2649-4eb4-9970-c0b0a08ce64e result: CATAACAACGAAGAGGGATGGTATTGCTCCTGTAACTCGGAACTGGAGAGGATGTTTTGTAGAGATGGGGCGTTGAACTGGGAACCCCCCATCTCTACA AAACATCTCTCCAGTTCCGAGTTACAGGAGCAATACCATCCCTCTTCGTTGTTATGCTTTCCTGTCTGACAGCAGCTTGGCTACCTCCGTCCTGTTCCTCCTTGTCTT 3: backbone: miR-31, score: 106, sequence: ATTACATGGGGTCTAGAAC pdf: ./results/transcript/e9e8b9a2-7e3b-4b24-b26a-633332a3f6b2/miR-31/37cd84aa-362c-484d-8681-929043cc9c61 result: CATAACAACGAAGAGGGATGGTATTGCTCCTGTAACTCGGAACTGGAGAGGATTACATGGGGTCTAGAACCGTTGAACTGGGAACCGTTCTAG ACCCCATGTAATCTCTCCAGTTCCGAGTTACAGGAGCAATACCATCCCTCTTCGTTGTTATGCTTTCCTGTCTGACAGCAGCTTGGCTACCTCCGTCCTGTTCCTCCTTGTCTT 4: backbone: miR-31, score: 106, sequence: ACCATCATCACACTGGAAG pdf: ./results/transcript/e9e8b9a2-7e3b-4b24-b26a-633332a3f6b2/miR-31/50b763f6-2193-4743-96c0-61601880e574 result: CATAACAACGAAGAGGGATGGTATTGCTCCTGTAACTCGGAACTGGAGAGGACCATCATCACACTGGAAGCGTTGAACTGGGAACCCTT CCAGTGTGATGATGGTCTCTCCAGTTCCGAGTTACAGGAGCAATACCATCCCTCTTCGTTGTTATGCTTTCCTGTCTGACAGCAGCTTGGCTACCTCCGTCCTGTTCCTCCTTGTCTT 5: backbone: miR-31, score: 106, sequence: ATCTCACCCCATCCCACAC pdf: ./results/transcript/e9e8b9a2-7e3b-4b24-b26a-633332a3f6b2/miR-31/019ce915-0282-4d83-9538-93c36c790fa8 result: CATAACAACGAAGAGGGATGGTATTGCTCCTGTAACTCGGAACTGGAGAGGATCTCACCCCATCCCACACCGTTGAAC TGGGAACCGTGTGGGATGGGGTGAGATCTCTCCAGTTCCGAGTTACAGGAGCAATACCATCCCTCTTCGTTGTTATGCTTTCCTGTCTGACAGCAGCTTGGCTACCTCCGTCCTGTTCCTCCTTGTCTT see example pdf with structure link During sh-miR designer development, colleagues from befriended lab used our software, so we had constant feedback from potential users, who by the way, have nothing to do with bioinformatics. So it's really hard to satisfy their strong need for easy interface. We also had significant feedback from our survey (see Modeling tab), so we knew what we should emphasise on during develoment.Test cases1) ATXN3 - therapeutic sh-miR against SCA3 disease transcript number: NM_001164782.1 GC content: default Off-target: 10 scaffold: ALL immunostimulatory: NO 2) P54 - therapeutic sh-miR against cancer transcript number: NM_000546.5 GC content: default Off-target: 10 scaffold: ALL immunostimulatory: YES 3) biological function analysis, PARP1, we have miR-30a in our lab transcript number: NM_001618.3 GC content: default Off-target: 0 scaffold: miR-30a immunostimulatory: no_difference (default) 4) biological function, PARP1, we have miR-30a in our laboratory and have immune cells transcript number: NM_001618.3 GC content: default Off-target: 0 scaffold: miR-30a immunostimulatory: NO 5) biological function, PARP1 and have immune cells transcript number: NM_001618.3 GC content: default Off-target: 0 scaffold: ALL immunostimulatory: NOReferences
1. Boudreau RL, Monteys AM, Davidson BL. Minimizing variables among hairpin-based RNAi
vectors reveals the potency of shRNAs. RNA. 2008 Sep;14(9):1834-44. Epub 2008 Aug 12.
2. Chang K, Elledge SJ, Hannon GJ. Lessons from Nature: microRNA-based shRNA libraries. Nat
Methods. 2006 Sep;3(9):707-14.
3. Dow LE, Premsrirut PK, Zuber J, Fellmann C, McJunkin K, Miething C, Park Y, Dickins RA,
Hannon GJ, Lowe SW. A pipeline for the generation of shRNA transgenic mice. Nat Protoc.
2012 Feb 2;7(2):374-93. doi: 10.1038/nprot.2011.446.
4. Fahim M, Larkin PJ. Designing Effective amiRNA and Multimeric amiRNA Against Plant
Viruses. Methods Mol Biol. 2013;942:357-77. doi: 10.1007/978-1-62703-119-6_19.
5. Fan ZD, Zhang L, Shi Z, Gan XB, Gao XY, Zhu GQ. Artificial microRNA interference targeting
AT(1a) receptors in paraventricular nucleus attenuates hypertension in rats. Gene Ther. 2012
Aug;19(8):810-7. doi: 10.1038/gt.2011.145. Epub 2011 Sep 29.
6. Fellmann C, Zuber J, McJunkin K, Chang K, Malone CD, Dickins RA, Xu Q, Hengartner MO,
Elledge SJ, Hannon GJ, Lowe SW. Functional identification of optimized RNAi triggers using a
massively parallel sensor assay. Mol Cell. 2011 Mar 18;41(6):733-46. Epub 2011 Feb 25.
7. Maczuga P, Lubelski J, van Logtenstein R, Borel F, Blits B, Fakkert E, Costessi A, Butler D, van
Deventer S, Petry H, Koornneef A, Konstantinova P. Embedding siRNA sequences targeting
Apolipoprotein B100 in shRNA and miRNA scaffolds results in differential processing and in
vivo efficacy. Mol Ther. 2012 Oct 23. doi: 10.1038/mt.2012.160. [Epub ahead of print]
8. Maczuga P, Koornneef A, Borel F, Petry H, van Deventer S, Ritsema T, Konstantinova P.
Optimization and comparison of knockdown efficacy between polymerase II expressed
shRNA and artificial miRNA targeting luciferase and Apolipoprotein B100. BMC
Biotechnol. 2012 Jul 24;12:42. doi: 10.1186/1472-6750-12-42.
9. Matveeva OV, Nazipova NN, Ogurtsov AY, Shabalina SA. Optimized models for design of
efficient miR30-based shRNAs. Front Genet. 2012;3:163. Epub 2012 Aug 29.
10. McBride JL, Boudreau RL, Harper SQ, Staber PD, Monteys AM, Martins I, Gilmore BL, Burstein
H, Peluso RW, Polisky B, Carter BJ, Davidson BL. Artificial miRNAs mitigate shRNA-mediated
toxicity in the brain: implications for the therapeutic development of RNAi. Proc Natl Acad Sci
U S A. 2008 Apr 15;105(15):5868-73. Epub 2008 Apr 8.
11. Schwab R, Ossowski S, Warthmann N, Weigel D. Directed gene silencing with artificial
microRNAs. Methods Mol Biol. 2010;592:71-88.
12. Silva JM, Li MZ, Chang K, Ge W, Golding MC, Rickles RJ, Siolas D, Hu G, Paddison PJ, Schlabach
MR, Sheth N, Bradshaw J, Burchard J, Kulkarni A, Cavet G,Sachidanandam R, McCombie WR, Cleary MA, Elledge SJ, Hannon GJ. Second-generation shRNA libraries
covering the mouse and human genomes. Nat Genet. 2005 Nov;37(11):1281-8. Epub 2005
Oct 2.
13. Stegmeier F, Hu G, Rickles RJ, Hannon GJ, Elledge SJ. A lentiviral microRNA-based system for
single-copy polymerase II-regulated RNA interference in mammalian cells. Proc Natl Acad Sci
U S A. 2005 Sep 13;102(37):13212-7. Epub 2005 Sep 1.
14. Wang X, Yang Y, Zhou J, Yu C, Cheng Y, Yan C, Chen J.Two-step method for constructing
Arabidopsis artificial microRNA vectors. Biotechnol Lett. 2012 Jul;34(7):1343-9. Epub 2012
Mar 22.
15. Warthmann N, Ossowski S, Schwab R, Weigel D. Artificial MicroRNAs for Specific Gene
Silencing in Rice. Methods Mol Biol. 2013;956:131-49. doi: 10.1007/978-1-62703-194-3_11.
16. Zeng Y, Cullen BR. Efficient processing of primary microRNA hairpins by Drosha requires
flanking nonstructured RNA sequences. J Biol Chem. 2005 Jul 29;280(30):27595-603. Epub
2005 Jun 1.
17. Zeng Y, Wagner EJ, Cullen BR. Both natural and designed micro RNAs can inhibit the
expression of cognate mRNAs when expressed in human cells. Mol Cell. 2002 Jun;9(6):1327-
33
Judging Form (in bold what we did to achieve gold medal)Bronze. The following 4 goals must be achieved:
|