Team:Heidelberg/Toolbox Guide

From 2014.igem.org

(Difference between revisions)
Line 6: Line 6:
{{:Team:Heidelberg/Templates/IncludeJS|:Team:Heidelberg/js/bootstrapjs}}
{{:Team:Heidelberg/Templates/IncludeJS|:Team:Heidelberg/js/bootstrapjs}}
{{:Team:Heidelberg/Templates/IncludeJS|:Team:Heidelberg/js/wikipage}}
{{:Team:Heidelberg/Templates/IncludeJS|:Team:Heidelberg/js/wikipage}}
 +
 +
<html>
<html>
<script type="text/javascript" src="http://cdnjs.cloudflare.com/ajax/libs/knockout/3.1.0/knockout-min.js"></script>
<script type="text/javascript" src="http://cdnjs.cloudflare.com/ajax/libs/knockout/3.1.0/knockout-min.js"></script>
-
<script type="text/javascript">
 
-
"use strict";jQuery.base64=(function($){var _PADCHAR="=",_ALPHA="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",_VERSION="1.0";function _getbyte64(s,i){var idx=_ALPHA.indexOf(s.charAt(i));if(idx===-1){throw"Cannot decode base64"}return idx}function _decode(s){var pads=0,i,b10,imax=s.length,x=[];s=String(s);if(imax===0){return s}if(imax%4!==0){throw"Cannot decode base64"}if(s.charAt(imax-1)===_PADCHAR){pads=1;if(s.charAt(imax-2)===_PADCHAR){pads=2}imax-=4}for(i=0;i<imax;i+=4){b10=(_getbyte64(s,i)<<18)|(_getbyte64(s,i+1)<<12)|(_getbyte64(s,i+2)<<6)|_getbyte64(s,i+3);x.push(String.fromCharCode(b10>>16,(b10>>8)&255,b10&255))}switch(pads){case 1:b10=(_getbyte64(s,i)<<18)|(_getbyte64(s,i+1)<<12)|(_getbyte64(s,i+2)<<6);x.push(String.fromCharCode(b10>>16,(b10>>8)&255));break;case 2:b10=(_getbyte64(s,i)<<18)|(_getbyte64(s,i+1)<<12);x.push(String.fromCharCode(b10>>16));break}return x.join("")}function _getbyte(s,i){var x=s.charCodeAt(i);if(x>255){throw"INVALID_CHARACTER_ERR: DOM Exception 5"}return x}function _encode(s){if(arguments.length!==1){throw"SyntaxError: exactly one argument required"}s=String(s);var i,b10,x=[],imax=s.length-s.length%3;if(s.length===0){return s}for(i=0;i<imax;i+=3){b10=(_getbyte(s,i)<<16)|(_getbyte(s,i+1)<<8)|_getbyte(s,i+2);x.push(_ALPHA.charAt(b10>>18));x.push(_ALPHA.charAt((b10>>12)&63));x.push(_ALPHA.charAt((b10>>6)&63));x.push(_ALPHA.charAt(b10&63))}switch(s.length-imax){case 1:b10=_getbyte(s,i)<<16;x.push(_ALPHA.charAt(b10>>18)+_ALPHA.charAt((b10>>12)&63)+_PADCHAR+_PADCHAR);break;case 2:b10=(_getbyte(s,i)<<16)|(_getbyte(s,i+1)<<8);x.push(_ALPHA.charAt(b10>>18)+_ALPHA.charAt((b10>>12)&63)+_ALPHA.charAt((b10>>6)&63)+_PADCHAR);break}return x.join("")}return{decode:_decode,encode:_encode,VERSION:_VERSION}}(jQuery));
 
-
</script>
 
<style type="text/css">
<style type="text/css">
#myContainer {
#myContainer {
Line 273: Line 272:
</div>
</div>
</div>
</div>
-
 
-
<script type="text/javascript">
 
-
function CircularizationViewModel(hash) {
 
-
var self = this;
 
-
self.RFCnumber = '[???]';
 
-
self.softwareName = '[hoffentlich nicht LinkIT]';
 
-
self.availableExteins = [
 
-
{ N: 'RGK', C: 'CWE', comment: '', notes: ['Efficient, tested by us', 'Large scar'] },
 
-
{ N: 'RGT', C: 'CWE', comment: '', notes: ['Efficient, tested by us', 'Large scar'] },
 
-
{ N: 'AEY', C: 'CFN' , comment: '', notes: ['Efficient, native extein', 'Large scar'] },
 
-
{ N: 'XXX', C: 'CXX', comment: 'X = native amino acids of the protein', notes: ['Probably less efficient (depends on the protein)', 'Small scar'] },
 
-
];
 
-
 
-
var data = hash && $.parseJSON($.base64.decode(hash.substr(1)));
 
-
self.data = {
 
-
comingBack: data ? data.comingBack : false,
 
-
q0A: ko.observable(data ? data.q0A : false),
 
-
hasBsaI: ko.observable(data && data.hasBsaI),
 
-
q1A: ko.observable(data ? data.q1A : false),
 
-
useSortase: ko.observable(data && data.useSortase),
 
-
q2A: ko.observable(data ? data.q2A : false),
 
-
needsSmt3: ko.observable(data && data.needsSmt3),
 
-
q3A: ko.observable(data ? data.q3A : false),
 
-
exteins: ko.observable(data && data.exteins),
 
-
q4A: ko.observable(data ? data.q4A : false),
 
-
endsAreClose: ko.observable(data && data.endsAreClose),
 
-
q5A: ko.observable(data ? data.q5A : false),
 
-
linkerLength: ko.observable(data && data.linkerLength),
 
-
q6A: ko.observable(data ? data.q6A : false),
 
-
testSeveral: ko.observable(data && data.testSeveral),
 
-
};
 
-
 
-
self.hash = ko.computed(function () {
 
-
self.data.q0A();
 
-
self.data.q1A();
 
-
self.data.q2A();
 
-
self.data.q3A();
 
-
self.data.q4A();
 
-
self.data.q5A();
 
-
self.data.q6A();
 
-
self.data.hasBsaI();
 
-
self.data.useSortase();
 
-
self.data.needsSmt3();
 
-
self.data.exteins();
 
-
self.data.endsAreClose();
 
-
self.data.linkerLength();
 
-
self.data.testSeveral();
 
-
 
-
window.location.hash = $.base64.encode(ko.toJSON(self.data));
 
-
console.log(window.location.hash, ko.toJSON(self.data));
 
-
return window.location.hash;
 
-
 
-
if (self.q0A()) {
 
-
window.location.hash = '#' + (self.hasBsaI() ? '1': '0');
 
-
 
-
if (self.q1A()) {
 
-
window.location.hash += self.useSortase() ? '1': '0';
 
-
 
-
if (self.q2A()) {
 
-
window.location.hash += self.needsSmt3() ? '1': '0';
 
-
 
-
if (self.q3A() && !self.useSortase())
 
-
window.location.hash += self.exteins().N;
 
-
 
-
if (self.q4A()) {
 
-
window.location.hash += self.endsAreClose() ? '1': '0';
 
-
 
-
if (self.q5A()) {
 
-
window.location.hash += self.linkerLength();
 
-
 
-
if (self.q6A()) {
 
-
window.location.hash += self.testSeveral() ? '1': '0';
 
-
}
 
-
}
 
-
}
 
-
}
 
-
}
 
-
} else {
 
-
window.location.hash = '';
 
-
}
 
-
 
-
return window.location.hash;
 
-
});
 
-
 
-
self.comeBackHash = ko.computed(function () {
 
-
var tmp = self.data.comingBack;
 
-
self.data.comingBack = true;
 
-
var hash = $.base64.encode(ko.toJSON(self.data));
 
-
self.data.comingBack = tmp;
 
-
return hash;
 
-
});
 
-
}
 
-
 
-
vm = new CircularizationViewModel(window.location.hash);
 
-
ko.applyBindings(vm);
 
-
 
-
/*function parseHash(hash) {
 
-
var data = hash.substring(1);
 
-
for(i = 0; i< data.length; i++) {
 
-
switch(i){
 
-
case 1:
 
-
vm.hasBsaI(data[i]);
 
-
break;
 
-
case 2:
 
-
vm.
 
-
}
 
-
}
 
-
}*/
 
-
</script>
 
</html>
</html>
 +
{{:Team:Heidelberg/Templates/IncludeJS|:Team:Heidelberg/js/toolboxguide}}

Revision as of 22:10, 14 October 2014


use the intein
TOOLBOX to

1. Please go to www.rcsb.org and get a pdb file of your protein. If you cannot find one, we will not be able to assist you circularizing it.

Additionally, check the DNA sequence of your proteins for EcoRI, XbaI, SpeI, PstI and BsaI recognition sites. If there are E/X/S/P sites, you might have problems to change your backbone or add a promotor. If there is a BsaI recognition site, the cloning will be more difficult.

2. Do you want to use split inteins or sortase to circularize your protein?

  • Successfully used in our project
  • High efficiency
  • In vivo circularization
  • In vitro only
  • Well-purified protein required
  • Not successfully tested yet

3. Can your protein be easily expressed in E. coli?

4. Which exteins do you want to use? They will remain as scars in your circular protein.

. If you want to save time, check manually whether the ends are close together (approx.  Å or closer). For example, you can use the Swiss-PdbViewer or PyMOL.

Please use to generate a linker for your circular protein. [LINK] This step might take up to 11 days. NILS – hier könnte dein instruction-file-ersatz stehen NILS – hier auch NILS – hier immernoch NILS – hier ebnfalls und auch gerne noch umfangreicher Please save this link:
https://2014.igem.org/{{PAGENAME}}# In order to generate your linker, needs to know the scar amino acid sequence that is caused by circularization. In your case, it is .

. Hello again. What is the result of ?

. Have you decided to use one linker or try different linkers?