Team:Vanderbilt/SoftwareProjectSubPageBuilder

From 2014.igem.org

(Difference between revisions)
Line 83: Line 83:
     subPage.createPage2Right = function() {
     subPage.createPage2Right = function() {
-
         var img1 = subPage.createPhoto("http://parts.igem.org/wiki/images/b/bf/VU_MF_Photo_2.JPG", "", 487, 649, "");
+
         var img1 = subPage.createPhoto("http://parts.igem.org/wiki/images/b/bf/VU_MF_Photo_2.JPG", "", 240, 325, "");
         img1.style.margin = "auto";
         img1.style.margin = "auto";
         img1.style.marginBottom = "1em";
         img1.style.marginBottom = "1em";
-
var img2 = subPage.createPhoto("http://parts.igem.org/wiki/images/f/f0/VU_MF_Photo_2_%281%29.JPG", "", 487, 535, "");
+
var img2 = subPage.createPhoto("http://parts.igem.org/wiki/images/f/f0/VU_MF_Photo_2_%281%29.JPG", "", 240, 325, "");
         img2.style.margin = "auto";
         img2.style.margin = "auto";
         img2.style.marginBottom = "1em";
         img2.style.marginBottom = "1em";

Revision as of 21:45, 26 January 2015

function SoftwareProjectSubPageBuilder() {

   var subPage = new SubPageBuilder();
   subPage.maxSubPage = 5;
   subPage.getMaxSubPage = function() {
       return subPage.maxSubPage;
   };
   subPage.createSubPage = function (subPageNum) {
       switch(subPageNum){
           case 1:
               subPage.createPage1Left();
               subPage.createPage1Right();
               break;
           case 2:
               subPage.createPage2Left();
               subPage.createPage2Right();
               break;
           case 3:
               subPage.createPage3Left();
               subPage.createPage3Right();
               break;
           case 4:
               subPage.createPage4Left();
               subPage.createPage4Right();
               break;
           case 5:
               subPage.createPage5Left();
               subPage.createPage5Right();
               break;
       }
   };
   subPage.createPage1Left = function() {
       var head = document.createElement("header");
       head.appendChild(document.createTextNode("Developing low cost, easy-to-design microfluidic device fabrication method"));
       var text = "Our team utilized a unique microfluidic development process that emphasizes low cost and rapid prototyping. Through the use of open source design software and cheap manufacturing methods we were able to fabricate microfluidic devices in a cost and time efficient manner. It is our hope that these methods can be utilized by other iGEM teams who are interested in incorporating microfluidics into their projects without the hassle of complex design and fabrication techniques.";
       var p1 = subPage.createP(text);
       var head2 = document.createElement("header");
       head2.appendChild(document.createTextNode("Microfluidic Computer Aided Design (CAD)"));
       text = "Several programs were used by members on the team to design and ultimately fabricate microfluidic devices. Initially, traditional computer aided design software packages were used such as AutoCAD and Solidworks. These packages provide advanced features which designers can wield to make complex devices with varying functions such as mixing and trapping cells. Alternative software packages were explored such as the open source vector graphics software Inkscape which proved to be easy to use in the design of a microfluidic device. Inkscape is an open source analogue to Adobe Illustrator, a common vector graphics editing software. Inkscape is easy to use and with a few online tutorials, ideas for microfluidic designs can be turned into realities.";
       var p2 = subPage.createP(text);
       document.getElementById("left_page").appendChild(head);
       document.getElementById("left_page").appendChild(p1);
       document.getElementById("left_page").appendChild(head2);
       document.getElementById("left_page").appendChild(p2);
   };
   subPage.createPage1Right = function() {
       var img1 = subPage.createPhoto("VU_MF_Photo_1.JPG", "Vacuum used in fabricating microfluidic devices made of PDMS", 487, 519, "Vacuum used in fabricating microfluidic devices made of PDMS");
       img1.style.margin = "auto";
       img1.style.marginBottom = "1em";
       var img2 = subPage.createPhoto("VU_MF_Photo_1_%281%29.JPG", "Material used in fabrication", 487, 578, "Material used in fabrication");
       img2.style.margin = "auto";
       img2.style.marginBottom = "1em";
       document.getElementById("right_page").appendChild(img1);
       document.getElementById("right_page").appendChild(img2);
   };
   subPage.createPage2Left = function() {
       var head = document.createElement("header");
       head.appendChild(document.createTextNode("Microfluidic Prototyping using a Vinyl Cutter"));
       var text = "In order to rapidly prototype microfluidic devices of different geometries and designs, our team explored fabrication techniques that bypassed the complicated photolithography process that is standard for microfluidic devices in research laboratories. Photolithography has the benefit of achieving very fine resolution and fine details for pinpoint fluid manipulation, but it is detracted from its lengthy creation process. The time scale from device design to fabrication of a working device using photolithography is on the order of 2-3 days and uses a variety of expensive and highly technical equipment that is not readily accessible to many iGEM teams. ";
       var p1 = subPage.createP(text);
       text = "Our team focused on bypassing the entire photolithography process by using a commercially available arts and crafts vinyl cutter (Silhouette) to produce device masters. Arts and crafts vinyl cutters are typically used to craft complex shapes and figures for use in decorations. A vinyl cutter has a resolution on the order of 250 microns which means that the devices made using this technique are considerably larger than those made using standard photolithography techniques. While the devices obtained from vinyl cutting are larger, for many synthetic biology applications this is not an issue. For the purpose of E. chrono, the size of the channels simply affected the total amount of fluid needing to be pumped into the device.";
       var p2 = subPage.createP(text);

text = "As mentioned previously, the main benefit of using a vinyl cutter is the rapid production of microfluidic masters. A vinyl cutter is able to take a device design to a master and ultimately a device in roughly an hour. By simplifying and speeding up the design and fabrication process, vinyl cutting can allow iGEM teams with no microfluidic knowledge to rapidly develop their own devices for testing. Using an open source design software such as Inkscape allows a team to rapidly formulate and then test a microfluidic device within an afternoon.";

       var p3 = subPage.createP(text);
       leftPageBuilder.appendChild(head);
       leftPageBuilder.appendChild(p1);
       leftPageBuilder.appendChild(p2);
       leftPageBuilder.appendChild(p3);
   };
   subPage.createPage2Right = function() {
       var img1 = subPage.createPhoto("VU_MF_Photo_2.JPG", "", 240, 325, "");
       img1.style.margin = "auto";
       img1.style.marginBottom = "1em";

var img2 = subPage.createPhoto("VU_MF_Photo_2_%281%29.JPG", "", 240, 325, "");

       img2.style.margin = "auto";
       img2.style.marginBottom = "1em";
       rightPageBuilder.appendChild(img1);
       rightPageBuilder.appendChild(img2);
   };
   subPage.createMethodsLeft = function() {
       var head = document.createElement("header");
       head.appendChild(document.createTextNode("Methods"));
       var text = "Our project had several co-dependent sub-project that were all worked on in parallel. These can " +
           "roughly be divided into two categories: the first involving work on our synthase genes and the second" +
           " involving the construction of a new, specially designed plasmid vector. We tried two different team " +
           "structures over the year to see which would give the best results. For the Spring, we had the original " +
           "idea of dividing members into independent groups, each working on a specific terpene. Each group was " +
           "headed by a single group manager who would teach 4-5 new members the protocol that was to be preformed " +
           "and then supervise that the work was carried out correctly. On occasion either the group managers or the" +
           " organization president or wetware director would also given lessons to teach members about the techniques" +
           " and theory involved at each step. All group managers were in turn trained by either the president " +
           "or wetware director, both of whom had come with the experiment, acquired all the necessary primers and r" +
           "eagents, wrote up the protocol, and had preformed it prior to any group-phase work for the purposes of t" +
           "roubleshooting and predicting where issues may come up. The president or wetware director also helped the" +
           " group manager in being present during all experiments for answering questions, preparing materials, and " +
           "other forms of assistance.";
       var p1 = subPage.createP(text);
       text = "Each group first planted seeds under the appropriate soil, humidity, and temperature conditions at the" +
       " Vanderbilt Greenhouse. Once the majority of these grew into saplings with green leaves, Samples were flash froz" +
       "en in liquid nitrogen in preparation for a genomic DNA extraction. After the extractions, nanodrop concentration" +
       " readings and agarose gels confirmed the presence of high molecular weight genomic DNA. Groups then ran a PCR on" +
       " their genomic DNA with primers specific to their synthase gene. More gels were run to check for PCR product. At" +
       " this point, the semester was coming to an end, so groups were disbanded before most managed to isolate their sy" +
       "nthase gene. Over the summer, the president and wetware director continued troubleshooting those genes which wer" +
       "e not amplifying and eventually got each to the point where consistent PCR product bands were produced. ";
       var p2 = subPage.createP(text);
       text = "Once we had clear banding patterns, it became clear that the number of introns in each of our genes (a " +
       "variable which was unknown since most of the plants we worked with have not had their genomes sequenced) was too " +
       "great for cloning and expression to be practical. Therefore, as soon as the fall semester began, we shifted strat" +
       "egy to isolating RNA from our plants. This RNA could be converted to cDNA by reverse transcription, which would e" +
       "liminate the issue with introns we were having. Several of our greenhouse plants were no longer available, so w" +
       "e reduced the number of target terpenes we were focusing on. After extracting RNA and running an RT-PCR, severa" +
       "l samples produced bands that corresponded roughly to where the synthase gene should be. These were gel extract" +
       "ed. Because almost every synthase gene had restriction sites in them that prevented them from being RFC10 compa" +
       "tible, we ligated the genes in pUC19 for site directed mutagenesis. After that, a second processing step would " +
       "have been necessary to add the correct restriction sites to each gene to allow them to be integrated into pSB1C" +
       "3 as a biobrick. In the interest of time, we synthesized a codon-optimized santalene synthase gene in order to " +
       "skip these RFC10 processing steps, even though we had already successfully reverse transcribed cDNA of the san" +
       "talene synthase gene. ";
       var p3 = subPage.createP(text);
       text = "In the spring concurrent to work by the terpene groups, work began on plasmid construction. This was pre" +
       "formed by the president, wetware director, and a handful of others rather than in group format. Each gene casset" +
       "te for our final plasmid was first identified in an existing, readily available plasmid. All of these cassettes " +
       "were extracted by PCR using those plasmids as templates. Overlap extension PCR was then done on the gel-purifie" +
       "d product to add restriction sites and homology regions for the purposes of eventually combining all of the cas" +
       "settes together into a single plasmid. By the end of the summer, only one final fragment remained to be inserte" +
       "d to complete the intermediate plasmid pVU14004. Upon the successful creation of pVU14004, several restriction" +
       " enzyme sites had to be removed by site directed mutagensis in order to make the plasmid RFC10 compatible. ";
       var p4 = subPage.createP(text);
       leftPageBuilder.appendChild(head);
       leftPageBuilder.appendChild(p1);
       leftPageBuilder.appendChild(p2);
       leftPageBuilder.appendChild(p3);
       leftPageBuilder.appendChild(p4);
   };
   subPage.createMethodsRight = function() {
       var img1 = subPage.createPhoto("Vanderbilt_experiment_1_diagram.png", "Experiment 1 Diagram", 421, 571, "Experiment 1 Diagram");
       img1.style.margin = "auto";
       img1.style.marginBottom = "1em";
       var img2 = subPage.createPhoto("Vanderbilt_experiment_2_diagram.png", "Experiment 2 Diagram", 484, 591, "Experiment 2 Diagram");
       img2.style.margin = "auto";
       img2.style.marginBottom = "1em";
       document.getElementById("right_page").appendChild(img1);
       document.getElementById("right_page").appendChild(img2);
   };
   subPage.createResultsDirectionsLeft = function() {
       var head = document.createElement("header");
       head.appendChild(document.createTextNode("Results and Directions"));
       var text = "Several factors contributed to the difficulty we experienced during the final phase of the project." +
           " First, member engagement suffered a significant decline between the spring and fall semesters, to the point" +
           " where only a small handful of people were left to preform all experiments. Second, the late realization tha" +
           "t we had to change our cloning strategy to modified cDNA inserts effectively meant we had to start anew in l" +
           "ate August despite having what was a good head start when we began in early March. Third, the RFC10 require" +
           "ments added a substantial dimension of difficulty to the project since all of our starting material (both t" +
           "he extracted gene cassettes for plasmid construction and the synthase genes) contained multiple sites that " +
           "made them incompatible with the biobrick standard. Nevertheless, our team accomplished an enormous amount d" +
           "uring our first year in competition. ";
       var p1 = subPage.createP(text);
       text = "We successfully constructed pVU14004, which contains all of the cassettes needed to have all of function" +
       "ality we had intended. However, this form of the plasmid has XbaI and EcoRI sites that make it incompatible with " +
       "RFC10. These sites were successfully changed to missense mutations by site directed mutagenesis. The final step " +
       "required to make pVU14006 is changing the multiple cloning site (MCS) to have the biobrick prefix and suffix. In" +
       " its current form, the plasmid has a functional MCS but it does not yet have the specific order of EcoRI, XbaI," +
       " SpeI, and PstI sites required by RFC10. ";
       var p2 = subPage.createP(text);
       text = "For a listing of all the medal requirements we successfully fulfilled over the course of our project, " +
       "please visit this page.";
       var p3 = subPage.createP(text);
       document.getElementById("left_page").appendChild(head);
       document.getElementById("left_page").appendChild(p1);
       document.getElementById("left_page").appendChild(p2);
       document.getElementById("left_page").appendChild(p3);
   };
   subPage.createResultsDirectionsRight = function() {
       var table = document.createElement("table");
       table.style.backgroundColor = "transparent";
       table.style.margin = "auto";
       var cTitles = ["Terpene",
           "Plant Genomic DNA Extraction Success",
           "PCR-isolation of Synthase Gene",
           "Plant RNA Extraction success",
           "Synthase Gene Reverse-Transcription success",
           "Terpene Production in E.coli/yeast success"];
       subPage.insertTextRow(table, cTitles);
       var greenCheck = "Green_check_mark.png";
       var redX = "Red_X.png";
       var yellowSquare = "Yellow_square.png";
       var row1 = [document.createTextNode("Cadinene"),
           subPage.createPlainIMG(greenCheck, "green check", 32, 32, "green check"),
           subPage.createPlainIMG(greenCheck, "green check", 32, 32, "green check"),
           subPage.createPlainIMG(greenCheck, "green check", 32, 32, "green check"),
           subPage.createPlainIMG(redX, "red x", 32, 32, "red x"),
           subPage.createPlainIMG(redX, "red x", 32, 32, "red x")];
       var row2 = [document.createTextNode("Carene"),
           subPage.createPlainIMG(greenCheck, "green check", 32, 32, "green check"),
           subPage.createPlainIMG(greenCheck, "green check", 32, 32, "green check"),
           subPage.createPlainIMG(greenCheck, "green check", 32, 32, "green check"),
           subPage.createPlainIMG(redX, "red x", 32, 32, "red x"),
           subPage.createPlainIMG(redX, "red x", 32, 32, "red x")];
       var row3 = [document.createTextNode("Humelene"),
           subPage.createPlainIMG(greenCheck, "green check", 32, 32, "green check"),
           subPage.createPlainIMG(greenCheck, "green check", 32, 32, "green check"),
           subPage.createPlainIMG(greenCheck, "green check", 32, 32, "green check"),
           subPage.createPlainIMG(greenCheck, "green check", 32, 32, "green check"),
           subPage.createPlainIMG(redX, "red x", 32, 32, "red x")];
       var row4 = [document.createTextNode("Myrcene"),
           subPage.createPlainIMG(greenCheck, "green check", 32, 32, "green check"),
           subPage.createPlainIMG(greenCheck, "green check", 32, 32, "green check"),
           subPage.createPlainIMG(greenCheck, "green check", 32, 32, "green check"),
           subPage.createPlainIMG(redX, "red x", 32, 32, "red x"),
           subPage.createPlainIMG(redX, "red x", 32, 32, "red x")];
       var row5 = [document.createTextNode("(R)-Linalool"),
           subPage.createPlainIMG(greenCheck, "green check", 32, 32, "green check"),
           subPage.createPlainIMG(greenCheck, "green check", 32, 32, "green check"),
           subPage.createPlainIMG(redX, "red x", 32, 32, "red x"),
           subPage.createPlainIMG(redX, "red x", 32, 32, "red x"),
           subPage.createPlainIMG(redX, "red x", 32, 32, "red x")];
       var row6 = [document.createTextNode("(L)-Linalool"),
           subPage.createPlainIMG(greenCheck, "green check", 32, 32, "green check"),
           subPage.createPlainIMG(greenCheck, "green check", 32, 32, "green check"),
           subPage.createPlainIMG(greenCheck, "green check", 32, 32, "green check"),
           subPage.createPlainIMG(greenCheck, "green check", 32, 32, "green check"),
           subPage.createPlainIMG(redX, "red x", 32, 32, "red x")];
       var row7 = [document.createTextNode("Sabinene"),
           subPage.createPlainIMG(greenCheck, "green check", 32, 32, "green check"),
           subPage.createPlainIMG(greenCheck, "green check", 32, 32, "green check"),
           subPage.createPlainIMG(greenCheck, "green check", 32, 32, "green check"),
           subPage.createPlainIMG(greenCheck, "green check", 32, 32, "green check"),
           subPage.createPlainIMG(yellowSquare, "yellow square", 32, 32, "yellow square")];
       var row8= [document.createTextNode("Santalene"),
           subPage.createPlainIMG(greenCheck, "green check", 32, 32, "green check"),
           subPage.createPlainIMG(greenCheck, "green check", 32, 32, "green check"),
           subPage.createPlainIMG(greenCheck, "green check", 32, 32, "green check"),
           subPage.createPlainIMG(greenCheck, "green check", 32, 32, "green check"),
           subPage.createPlainIMG(yellowSquare, "yellow square", 32, 32, "yellow square")];
       var row9 = [document.createTextNode("Zingiberene"),
           subPage.createPlainIMG(greenCheck, "green check", 32, 32, "green check"),
           subPage.createPlainIMG(greenCheck, "green check", 32, 32, "green check"),
           subPage.createPlainIMG(greenCheck, "green check", 32, 32, "green check"),
           subPage.createPlainIMG(redX, "red x", 32, 32, "red x"),
           subPage.createPlainIMG(redX, "red x", 32, 32, "red x")];
       subPage.createRowFromArray(table, row1);
       subPage.createRowFromArray(table, row2);
       subPage.createRowFromArray(table, row3);
       subPage.createRowFromArray(table, row4);
       subPage.createRowFromArray(table, row5);
       subPage.createRowFromArray(table, row6);
       subPage.createRowFromArray(table, row7);
       subPage.createRowFromArray(table, row8);
       subPage.createRowFromArray(table, row9);
       rightPageBuilder.appendChild(table);
   };
   subPage.createCollaborationsLeft = function() {
       var head = document.createElement("header");
       head.appendChild(document.createTextNode("Results and Directions"));
       var text = "In addition to our own wetware project, our team led fruitful collaborations with a total of three" +
           " other iGEM teams. First, we played a major role in assisting Vanderbilt's microfluidic division with the b" +
           "iological aspect of their project. We prepared the biobrick parts they tested in their microfluidic device" +
           ", including transforming the E. coli they used to study their quorum-sensing fluorescent oscillator circui" +
           "t. Second, we provided feedback to Vanderbilt's software division about their own project involving a prog" +
           "ram to aid in the manipulation of genetic sequences. We used the program as if it were for a real project " +
           "and gave them suggestions on how to make their program easier to use and more useful to biologists. ";
       var p1 = subPage.createP(text);
       var building = subPage.createPhoto("Vanderbilt_Yellow_square.png", "Ravenwood High School", 250, 250, "Ravenwood High School");
       building.style.float = "left";
       building.style.margin = "1%";
       text = "Last but not least, we provided significant assistance and guidance to the Ravenwood Raptors high schoo" +
       "l iGEM team. In a series of conversations with Dr. Amanda Benson, we planned a smaller scale version of our ow" +
       "n project that involved only a single terpene synthase gene. After visiting the high school and presenting our" +
       " idea, the students voted to choose it for their project. We also provided the primers and sage genomic DNA te" +
       "mplate they used in their experiments. ";
       var p2 = subPage.createP(text);
       leftPageBuilder.appendChild(head);
       leftPageBuilder.appendChild(p1);
       leftPageBuilder.appendChild(building);
       leftPageBuilder.appendChild(p2);
   };
   subPage.createCollaborationsRight = function() {
       var header = document.createElement("header");
       header.appendChild(document.createTextNode("References"));
       var text1 = "1. USDA Industrial Uses Reports. Essential Oils Widely Used in Flavors and Fragrances. September 1995.";
       var text2 =
           "2. Ajikumar PK, Tyo K, Carlsen S, Mucha O, Phon TH, Stephanopoulos G. Terpenoids: opportunities for biosynth" +
           "esis of natural product drugs using engineered microorganisms. Mol Pharm. 2008;5(2):167-90.";
       var text3 =
           "3. Dudareva N, Klempien A, Muhlemann JK, Kaplan I. Biosynthesis, function and metabolic engineering of plant " +
           "volatile organic compounds. New Phytol. 2013;198(1):16-32.";
       var text4 =
           "4.Martin VJ, Pitera DJ, Withers ST, Newman JD, Keasling JD. Engineering a mevalonate pathway in Escherichia " +
           "coli for production of terpenoids. Nat Biotechnol. 2003;21(7):796-802.";
       var p1 = subPage.createP(text1);
       var p2 = subPage.createP(text2);
       var p3 = subPage.createP(text3);
       var p4 = subPage.createP(text4);
       p1.style.fontStyle = "italic";
       p2.style.fontStyle = "italic";
       p3.style.fontStyle = "italic";
       p4.style.fontStyle = "italic";
       rightPageBuilder.appendChild(header);
       rightPageBuilder.appendChild(p1);
       rightPageBuilder.appendChild(p2);
       rightPageBuilder.appendChild(p3);
       rightPageBuilder.appendChild(p4);
   };
   return subPage;

}