| Line 128: | Line 128: | ||
<h2>How to Navigate the Wiki</h2> | <h2>How to Navigate the Wiki</h2> | ||
<ul> | <ul> | ||
| − | <li>< | + | <li><b>Video Tutorial Here - </b><a href="https://www.youtube.com/watch?v=IK6JjS_LjQg&list=PLg5B0YEXzgEorRa8vuZPoHah2e1jmgVQ6&index=3"><b>https://www.youtube.com/watch?v=IK6JjS_LjQg&list=PLg5B0YEXzgEorRa8vuZPoHah2e1jmgVQ6&index=3</b></a></li> |
| − | <li>< | + | <li><b>Learn how to edit pages, view page history, and upload photos/documents</b></li> |
</ul> | </ul> | ||
<h2>All You Need to Know about HTML/CSS</h2> | <h2>All You Need to Know about HTML/CSS</h2> | ||
| Line 135: | Line 135: | ||
<p>HTML/CSS Reference Sheets</p> | <p>HTML/CSS Reference Sheets</p> | ||
<p>Basic Elements</p> | <p>Basic Elements</p> | ||
| − | <p>< | + | <p><b>*****THERE WILL BE THREE YOUTUBE VIDEOS GOING OVER THESE EXAMPLES :)</b></p> |
| − | <p>< | + | <p><b>Example code found on our GitHub here - </b><a href="https://github.com/us-afrl-carrollhs/Wiki-Code-Examples"><b>https://github.com/us-afrl-carrollhs/Wiki-Code-Examples</b></a></p> |
<p>Example (Uploading Your Project Description and Inspirations</p> | <p>Example (Uploading Your Project Description and Inspirations</p> | ||
| − | <p>< | + | <p><b>Video Tutorial Here - </b><a href="https://www.youtube.com/watch?v=orxXYM8Glv4&list=PLg5B0YEXzgEorRa8vuZPoHah2e1jmgVQ6&index=5"><b>https://www.youtube.com/watch?v=orxXYM8Glv4&list=PLg5B0YEXzgEorRa8vuZPoHah2e1jmgVQ6&index=5</b></a> </p> |
<h1 id="list-item-5">HTML/CSS Understanding Guide</h1> | <h1 id="list-item-5">HTML/CSS Understanding Guide</h1> | ||
<h2>Basic Elements</h2> | <h2>Basic Elements</h2> | ||
| Line 156: | Line 156: | ||
Recommended courses on Codecademy (bolded are highly recommended) | Recommended courses on Codecademy (bolded are highly recommended) | ||
<ul> | <ul> | ||
| − | <li>< | + | <li><b>HTML (</b><a href="https://www.codecademy.com/learn/learn-html"><b>https://www.codecademy.com/learn/learn-html</b></a><b>)</b></li> |
| − | <li>< | + | <li><b>CSS (</b><a href="https://www.codecademy.com/learn/learn-css"><b>https://www.codecademy.com/learn/learn-css</b></a><b>)</b></li> |
<li>Make a Website (<a href="https://www.codecademy.com/learn/make-a-website">https://www.codecademy.com/learn/make-a-website</a>)</li> | <li>Make a Website (<a href="https://www.codecademy.com/learn/make-a-website">https://www.codecademy.com/learn/make-a-website</a>)</li> | ||
<li>Learn Responsive Design (<a href="https://www.codecademy.com/learn/learn-responsive-design">https://www.codecademy.com/learn/learn-responsive-design</a>)</li> | <li>Learn Responsive Design (<a href="https://www.codecademy.com/learn/learn-responsive-design">https://www.codecademy.com/learn/learn-responsive-design</a>)</li> | ||
| Line 164: | Line 164: | ||
</ul> | </ul> | ||
<p>Next you can learn jQuery and JavaScript. This is more optional as many elements already have built in functions and you can easily create your wiki without much knowledge of them; HTML and CSS will be your core. It is helpful to be lightly familiar with them, though. More information about jQuery is later in the guide, and JavaScript information is coming soon. There are also Codecademy courses on both of these.</p> | <p>Next you can learn jQuery and JavaScript. This is more optional as many elements already have built in functions and you can easily create your wiki without much knowledge of them; HTML and CSS will be your core. It is helpful to be lightly familiar with them, though. More information about jQuery is later in the guide, and JavaScript information is coming soon. There are also Codecademy courses on both of these.</p> | ||
| − | <p>< | + | <p><b>You will be responsible for knowing the Wiki rules (</b><b><a href="https://2019.igem.org/Competition/Deliverables/Wiki">https://2019.igem.org/Competition/Deliverables/Wiki</a></b><b>) and ensuring that your team follows them!</b>Here are the main ones that you may run into:</p> |
<ul> | <ul> | ||
<li>All content must be hosted on iGEM server (ex external style sheets cannot be used) </li> | <li>All content must be hosted on iGEM server (ex external style sheets cannot be used) </li> | ||
| Line 177: | Line 177: | ||
<p>Know How to Upload Your CSS and JavaScript Files</p> | <p>Know How to Upload Your CSS and JavaScript Files</p> | ||
<ul> | <ul> | ||
| − | <li>< | + | <li><b>Video Tutorial Here - </b><a href="https://www.youtube.com/watch?v=YNuSKknqjUA&feature=youtu.be"><b>https://www.youtube.com/watch?v=YNuSKknqjUA&feature=youtu.be</b></a></li> |
<li>Importance - these templates are where you are going to put the bulk of your CSS code to style your wiki!</li> | <li>Importance - these templates are where you are going to put the bulk of your CSS code to style your wiki!</li> | ||
</ul> | </ul> | ||
<h2>How to Upload a Video to the Wiki</h2> | <h2>How to Upload a Video to the Wiki</h2> | ||
<ul> | <ul> | ||
| − | <li>< | + | <li><b>Video Tutorial Here - </b><a href="https://www.youtube.com/watch?v=wT6djYIBXmE&list=PLg5B0YEXzgEorRa8vuZPoHah2e1jmgVQ6&index=8"><b>https://www.youtube.com/watch?v=wT6djYIBXmE&list=PLg5B0YEXzgEorRa8vuZPoHah2e1jmgVQ6&index=8</b></a></li> |
| − | <li>< | + | <li><b>Example code found on our GitHub here - </b><a href="https://github.com/us-afrl-carrollhs/Wiki-Code-Examples"><b>https://github.com/us-afrl-carrollhs/Wiki-Code-Examples</b></a></li> |
| − | <li>< | + | <li><b>Credits to iGEM team Edinburgh for requesting this!!! </b></li> |
</ul> | </ul> | ||
<h2>Decide on how you want to create your Wiki</h2> | <h2>Decide on how you want to create your Wiki</h2> | ||
| Line 190: | Line 190: | ||
<p>The simplest way is just to use iGEM’s template and alter color/font to customize for your team.</p> | <p>The simplest way is just to use iGEM’s template and alter color/font to customize for your team.</p> | ||
<ul> | <ul> | ||
| − | <li>< | + | <li><b>Video tutorial here -</b><a href="https://www.youtube.com/watch?v=IK6JjS_LjQg&list=PLg5B0YEXzgEorRa8vuZPoHah2e1jmgVQ6&index=4&t=0s"><b>https://www.youtube.com/watch?v=IK6JjS_LjQg&list=PLg5B0YEXzgEorRa8vuZPoHah2e1jmgVQ6&index=4&t=0s</b></a></li> |
| − | <li>< | + | <li><b>Customizing the iGEM style template to fit your team’s branding</b></li> |
</ul> | </ul> | ||
<p>Another option is to remove all iGEM styling from your team’s wiki, then upload your own stylesheets and formatting. There are multiple options within this category, but you’ll want to start by removing all iGEM default formatting.</p> | <p>Another option is to remove all iGEM styling from your team’s wiki, then upload your own stylesheets and formatting. There are multiple options within this category, but you’ll want to start by removing all iGEM default formatting.</p> | ||
<ul> | <ul> | ||
| − | <li>< | + | <li><b>Video tutorial here - </b><a href="https://www.youtube.com/watch?v=T3To46H-FeA&list=PLg5B0YEXzgEorRa8vuZPoHah2e1jmgVQ6&index=1"><b>https://www.youtube.com/watch?v=T3To46H-FeA&list=PLg5B0YEXzgEorRa8vuZPoHah2e1jmgVQ6&index=1</b></a></li> |
| − | <li>< | + | <li><b>This video is about how to strip down your team’s iGEM wiki so that default iGEM styling will not interfere with your styling!</b></li> |
</ul> | </ul> | ||
<p>From here there are many options on what to do including</p> | <p>From here there are many options on what to do including</p> | ||
| Line 211: | Line 211: | ||
</ul> | </ul> | ||
<p>Another option is to use an outside program</p> | <p>Another option is to use an outside program</p> | ||
| − | <p>< | + | <p><b>Here’s what iGEM TAU (</b><a href="https://2019.igem.org/Team:TAU_Israel"><b>https://2019.igem.org/Team:TAU_Israel</b></a><b>) says about their experience with Webflow:</b></p> |
<ul> | <ul> | ||
<li>Webflow is a website that allows you to design your website while creating a neat code for you.</li> | <li>Webflow is a website that allows you to design your website while creating a neat code for you.</li> | ||
| Line 234: | Line 234: | ||
<h2>Decide on Branding</h2> | <h2>Decide on Branding</h2> | ||
<p>Decide on Branding</p> | <p>Decide on Branding</p> | ||
| − | <p>< | + | <p><b>(Suggested by UNSW iGEM)</b></p> |
| − | <p>< | + | <p><b>Color Palette - </b>Come up with a team color palette. It’s very helpful to put them all in a spreadsheet, with their Hex Color Codes and/or RGB Color Codes next to each color, creating an easy reference for your entire team as you work on your wiki/other branding elements.</p> |
| − | <p>< | + | <p><b>Logos - </b>Ensure that you have all team and project logos in the file formats that you need. Upload them to the wiki (how to upload photos available on YouTube :), it’s helpful to include the image urls for these images in one location, as finding past uploaded images can be time consuming.</p> |
| − | <p>< | + | <p><b>Fonts - </b>Determine the fonts that your team will be using, and if you will need to upload them to your stylesheets. Resources:</p> |
<ul> | <ul> | ||
<li><a href="http://fonts.google.com/">google.com</a>helps with finding, pairing, and downloading fonts</li> | <li><a href="http://fonts.google.com/">google.com</a>helps with finding, pairing, and downloading fonts</li> | ||
| − | <li>< | + | <li><b>REQUESTED BY UNSW iGEM - VIDEO COMING SOON ON HOW TO UPLOAD TO WIKI</b></li> |
</ul> | </ul> | ||
<h2>Recommended Templates/Elements in Your Wiki</h2> | <h2>Recommended Templates/Elements in Your Wiki</h2> | ||
| − | <p>< | + | <p><b>Navbar - </b>this is essential as it allows a user to navigate to all pages of your wiki</p> |
<ul> | <ul> | ||
<li>Video/resources coming soon</li> | <li>Video/resources coming soon</li> | ||
</ul> | </ul> | ||
| − | <p>< | + | <p><b>Footer -</b>recommended if your team has sponsors, additional links/contact information that you would like your user to easily access</p> |
<ul> | <ul> | ||
<li>Videos coming soon</li> | <li>Videos coming soon</li> | ||
</ul> | </ul> | ||
| − | <p>< | + | <p><b>Template for styling -</b>main template for all pages that includes styling such as: headers, images, background color, etc.</p> |
| − | <p>< | + | <p><b>Easiest ways to transfer templates</b></p> |
<ul> | <ul> | ||
<li> | <li> | ||
| Line 265: | Line 265: | ||
<h1 id="list-item-8">jQuery</h1> | <h1 id="list-item-8">jQuery</h1> | ||
<h2>What is it?</h2> | <h2>What is it?</h2> | ||
| − | <p>< | + | <p><b>Content provided by TU_Dresden</b></p> |
<p>What is it?</p> | <p>What is it?</p> | ||
| − | <p>Just as with Bootstrap (later section in guide!), < | + | <p>Just as with Bootstrap (later section in guide!), <b>jQuery </b>is another major player in the web development industry and it needs to be included in your site for Bootstrap to work properly in your IGEM Wiki.</p> |
| − | <p>Imagine that you are in a hair salon. If Bootstrap was the makeup, jQuery would be the tools and gadgets required to make everything work. This is done through a completely different language from CSS or HTML called < | + | <p>Imagine that you are in a hair salon. If Bootstrap was the makeup, jQuery would be the tools and gadgets required to make everything work. This is done through a completely different language from CSS or HTML called <b>JAVASCRIPT</b>.</p> |
| − | <p>So, what is Javascript? it is the language that your browser (Chrome/Safari) uses to < | + | <p>So, what is Javascript? it is the language that your browser (Chrome/Safari) uses to <b>DO STUFF</b>.</p> |
<p>Whenever you push a button, most likely you need that button to do something... like send data, change page, bring an alert window or resize an element within the website. Javascript is the language that was created to process these actions, or in our bio-language: to make the website alive!</p> | <p>Whenever you push a button, most likely you need that button to do something... like send data, change page, bring an alert window or resize an element within the website. Javascript is the language that was created to process these actions, or in our bio-language: to make the website alive!</p> | ||
| − | <p>This used to be a < | + | <p>This used to be a <b>painfully tedious </b>process with javascript alone, so this is where your friend jQuery comes into the play. It is a “layer” built on top of Javascript in order to easily implement actions and content-handling stuff on your Wiki without having to reinvent the wheel.</p> |
<h2>How to use the newer jQuery and Bootstrap in your Wiki</h2> | <h2>How to use the newer jQuery and Bootstrap in your Wiki</h2> | ||
<p>How to use the newer jQuery and Bootstrap in your Wiki?</p> | <p>How to use the newer jQuery and Bootstrap in your Wiki?</p> | ||
| − | <p>This is where things get tricky. The IGEM server will push a < | + | <p>This is where things get tricky. The IGEM server will push a <b>VERY old version</b>(1.11.1) of jQuery into whatever content you load into your space. This makes most modern templates and bootstrap versions incompatible with the IGEM MediaWiki by default. You need to use the new versions of both to make your site look like a 2018 website.</p> |
| − | <p>This workaround < | + | <p>This workaround <b>is not mentioned <u>anywhere</u>in the Wiki guidelines </b>and it was developed to embed the newest version of jQuery and Bootstrap on top of the annoying old version.</p> |
<p>So here it is:</p> | <p>So here it is:</p> | ||
<p>1) Download or open this files with your browser. You will need to copy its contents later.</p> | <p>1) Download or open this files with your browser. You will need to copy its contents later.</p> | ||
| Line 289: | Line 289: | ||
<p><a href="https://2019.igem.org/Template:YOUR_TEAM_NAME/bootstrap.js">https://2019.igem.org/Template:YOUR_TEAM_NAME/bootstrap.js</a></p> | <p><a href="https://2019.igem.org/Template:YOUR_TEAM_NAME/bootstrap.js">https://2019.igem.org/Template:YOUR_TEAM_NAME/bootstrap.js</a></p> | ||
<p><a href="https://2019.igem.org/Template:YOUR_TEAM_NAME/bootstrap.css">https://2019.igem.org/Template:YOUR_TEAM_NAME/bootstrap.css</a></p> | <p><a href="https://2019.igem.org/Template:YOUR_TEAM_NAME/bootstrap.css">https://2019.igem.org/Template:YOUR_TEAM_NAME/bootstrap.css</a></p> | ||
| − | <p> When you open each URL, since the file doesn’t exist, you will need to ask mediawiki to create the file for you. Use the link that says< | + | <p> When you open each URL, since the file doesn’t exist, you will need to ask mediawiki to create the file for you. Use the link that says<b>EDIT THIS PAGE</b>.</p> |
<p>3) Paste the contents of each file into its corresponding file online.</p> | <p>3) Paste the contents of each file into its corresponding file online.</p> | ||
<p> example: jquery.jsgoes into <a href="https://2019.igem.org/Template:TU_Dresden/bootstrap.css">Template:YOUR_TEAM_NAME</a><a href="https://2019.igem.org/wiki/index.php?title=Template:TU_Dresden/jquery&action=edit">/jquery.js</a></p> | <p> example: jquery.jsgoes into <a href="https://2019.igem.org/Template:TU_Dresden/bootstrap.css">Template:YOUR_TEAM_NAME</a><a href="https://2019.igem.org/wiki/index.php?title=Template:TU_Dresden/jquery&action=edit">/jquery.js</a></p> | ||
| Line 295: | Line 295: | ||
<p>5) When you have created all 3 files, the sources for the updated versions of bootstrap and jQuery will be available within the IGEM server without violating any guidelines.</p> | <p>5) When you have created all 3 files, the sources for the updated versions of bootstrap and jQuery will be available within the IGEM server without violating any guidelines.</p> | ||
<p>You can then include the files in your wiki template by calling them with the following URL within your site Template: “https://2019.igem.org/wiki/index.php?title=Template:YOUR_TEAM_NAME/filename.js&action=raw&ctype=text/javascript”</p> | <p>You can then include the files in your wiki template by calling them with the following URL within your site Template: “https://2019.igem.org/wiki/index.php?title=Template:YOUR_TEAM_NAME/filename.js&action=raw&ctype=text/javascript”</p> | ||
| − | <p>Note that the URL is instructing the iGEM’s mediawiki engine to deliver the file in < | + | <p>Note that the URL is instructing the iGEM’s mediawiki engine to deliver the file in <b>RAW </b>format and using the <b>text/javascript</b>or <b>text/css</b>MIME types. This is very important for the browser to be able to download and execute the imported content without mediawiki adding its annoying html entities (<u>your computer guys will understand what we mean</u>).</p> |
<p>And Voila! We have jQuery 3.4.1 running on our IGEM Wiki! </p> | <p>And Voila! We have jQuery 3.4.1 running on our IGEM Wiki! </p> | ||
<p>It took us a while in TU_Dresden to figure out how to do this on our own from reading the fine letters of MediaWiki; given that the IT people of IGEM didn’t know how to support this kind of setup.</p> | <p>It took us a while in TU_Dresden to figure out how to do this on our own from reading the fine letters of MediaWiki; given that the IT people of IGEM didn’t know how to support this kind of setup.</p> | ||
Revision as of 21:20, 17 July 2019
***We have not finished uploading our current wiki guide draft, please email us (igem@carrollhs.org) for the whole thing!! :D
Introduction
The wiki is a vital part in telling the judges, public, current, and past iGEM teams about your team. Here's another vital iGEM truth - everyone dreads the wiki freeze and many teams are hesitant to begin their wiki. It can be a struggle, but we're here to help.
What are we doing? We're putting together a wiki wealth of knowledge - a comprehensive guide that combines all wiki knowledge from teams past and present, source code that you can use on your wiki, and a YouTube video series where we walk you through all the major things you need to know about everything wiki related.
Who are we looking to help us? Everyone. We need first year teams to give us feedback on if our guide covers all of their questions and how it helped them create their wiki. We need teams to write up a couple bullet points describing how they create their wiki. If you use our guide/video series in any way, please let us know so that we can make sure to thank you on our collaborations page!
What inspired us? We are a third year team who puts many hours into our wiki every year. Our very first year, we collaborated with a team who answered a lot of our initial questions about how to code our wiki; this helped us immensely. Our team has spent many hours trying to get our code to function properly when the fix was simple. We want teams to combine their knowledge into one, easy to find place for current and future teams to use. Additionally, the individuals that work on each team’s wiki may change from year to year. With this guide, they do not have to completely start from scratch; they can build off of previous years’ experience.
Instagram, Twitter, and Facebook - @iGEMLabPats
YouTube Channel - US AFRL Carroll HS
GitHub - https://github.com/us-afrl-carrollhs
Email - igem@carrollhs.org
Collaboration Credits
A huge thank you to all the teams who have collaborated with us (this far) to create this guide:
- iGEM TAU
- iGEM Thessaly
- OhioState
- Nottingham iGEM
- Edinburgh
- ASIJ Tokyo
- Stockholm (memes coming soon!)
- Aux Marseille
- uOttawa
- NCTU Formosa
- iGEM AMU
- Gothenburg
- TU_Dresden
- UCL
- iGEM NCKU-Tainan
- Your team! Our list is growing everyday :)
Wiki 101
Becoming Familiar with the iGEM Wiki
Hosted on the iGEM server, every iGEM team is given a wiki page to create for your team. It is essentially your team’s website to document, not only your lab work, but your entire iGEM project. The judges review it before going to your presentation. It is essential that all work is explained on the wiki as clearly as possible to ensure that judges (and the public) understand your project.
What is it?
Logging In and Finding Your Team's Wiki
Video Tutorial Here - https://youtu.be/tARHk2RWDSk
Planning
Decide on your involvement with the wiki
Basic Understanding - using iGEM’s template and altering it to accommodate content
- It is recommended that several/almost all team members have a basic understanding of the wiki. This way, they can edit content and basic formatting.
Advanced Understanding - in depth knowledge of web development. Not only editing content, but creating HTML structures and more detailed CSS customization
- It is recommended that at least 2-3 team members have some sort of deeper knowledge of how HTML/CSS coding works. This way multiple team members can develop code, along with fix errors in code
- If your team is lacking members who are able to dedicate this much time to understanding the wiki, or if additional help is needed, collaborate with another team who can help.
Basic Understanding Guide
Getting Started
-
Begin by reading iGEM’s wiki how-to (https://2019.igem.org/Competition/Deliverables/Wiki)
-
Main things to pay attention to:
-
THE WIKI FREEZE!!!
- The wiki freeze is final. Keep in mind that the iGEM server may crash due to everyone trying to finish their wikis. The wiki on the last day, especially the last couple of hours, is noticeably slower and not all changes save.
- Read the wiki rules. Main highlights will be covered in the Advanced Understanding Guide, but anyone working on the wiki should understand the basic rules.
-
THE WIKI FREEZE!!!
-
Main things to pay attention to:
Working With the Wiki
Working with the wiki
-
Read over all Wiki documentation provided by iGEM
-
https://2019.igem.org/Resources/Wiki_Editing_Help
- This describes HTML, CSS, and Javascript use on the wiki, how to create a new page, how to upload a file/video, and how to use templates.
-
https://2019.igem.org/Resources/Template_Documentation
- Shows the default wiki settings. Talk with the people in charge of your wiki to see if this is applicable to your wiki.
-
https://2019.igem.org/Resources/Wiki_Editing_Help
How to Navigate the Wiki
- Video Tutorial Here - https://www.youtube.com/watch?v=IK6JjS_LjQg&list=PLg5B0YEXzgEorRa8vuZPoHah2e1jmgVQ6&index=3
- Learn how to edit pages, view page history, and upload photos/documents
All You Need to Know about HTML/CSS
Videos to come!
HTML/CSS Reference Sheets
Basic Elements
*****THERE WILL BE THREE YOUTUBE VIDEOS GOING OVER THESE EXAMPLES :)
Example code found on our GitHub here - https://github.com/us-afrl-carrollhs/Wiki-Code-Examples
Example (Uploading Your Project Description and Inspirations
Video Tutorial Here - https://www.youtube.com/watch?v=orxXYM8Glv4&list=PLg5B0YEXzgEorRa8vuZPoHah2e1jmgVQ6&index=5
HTML/CSS Understanding Guide
Basic Elements
...
Using CSS Code
...
Combining Elements
...
Example (Uploading Project Description/Inspirations)
...
...
Advanced Understanding Guide
Getting Started
First complete the “Basic Understanding Guide” to familiarize yourself with the wiki, then learn HTML and CSS
-
Recommended courses on Codecademy (bolded are highly recommended)
- HTML (https://www.codecademy.com/learn/learn-html)
- CSS (https://www.codecademy.com/learn/learn-css)
- Make a Website (https://www.codecademy.com/learn/make-a-website)
- Learn Responsive Design (https://www.codecademy.com/learn/learn-responsive-design)
Next you can learn jQuery and JavaScript. This is more optional as many elements already have built in functions and you can easily create your wiki without much knowledge of them; HTML and CSS will be your core. It is helpful to be lightly familiar with them, though. More information about jQuery is later in the guide, and JavaScript information is coming soon. There are also Codecademy courses on both of these.
You will be responsible for knowing the Wiki rules (https://2019.igem.org/Competition/Deliverables/Wiki) and ensuring that your team follows them!Here are the main ones that you may run into:
- All content must be hosted on iGEM server (ex external style sheets cannot be used)
- You cannot alter the iGEM menu bar (narrow bar at very top of screen)
- iGEM Stockholm 2015 came up with a fix for the iGEM login bar (their purpose: “to restore the original style to the top menu” after Bootstrap). Find here: igem.org/Team:Stockholm/fixbootstrap.css
- No plagiarism!!!
- Wiki freeze is final
Know How to Upload Your CSS and JavaScript Files
Know How to Upload Your CSS and JavaScript Files
- Video Tutorial Here - https://www.youtube.com/watch?v=YNuSKknqjUA&feature=youtu.be
- Importance - these templates are where you are going to put the bulk of your CSS code to style your wiki!
How to Upload a Video to the Wiki
- Video Tutorial Here - https://www.youtube.com/watch?v=wT6djYIBXmE&list=PLg5B0YEXzgEorRa8vuZPoHah2e1jmgVQ6&index=8
- Example code found on our GitHub here - https://github.com/us-afrl-carrollhs/Wiki-Code-Examples
- Credits to iGEM team Edinburgh for requesting this!!!
Decide on how you want to create your Wiki
There are two main options
The simplest way is just to use iGEM’s template and alter color/font to customize for your team.
- Video tutorial here -https://www.youtube.com/watch?v=IK6JjS_LjQg&list=PLg5B0YEXzgEorRa8vuZPoHah2e1jmgVQ6&index=4&t=0s
- Customizing the iGEM style template to fit your team’s branding
Another option is to remove all iGEM styling from your team’s wiki, then upload your own stylesheets and formatting. There are multiple options within this category, but you’ll want to start by removing all iGEM default formatting.
- Video tutorial here - https://www.youtube.com/watch?v=T3To46H-FeA&list=PLg5B0YEXzgEorRa8vuZPoHah2e1jmgVQ6&index=1
- This video is about how to strip down your team’s iGEM wiki so that default iGEM styling will not interfere with your styling!
From here there are many options on what to do including
- Writing your own code (example wiki - http://2017.igem.org/Team:US_AFRL_CarrollHS)
- Finding open source code online
-
Implementing a program such as Bootstrap
- More info later in guide
- Figure out your design! (Info later in guide :)
Another option is to use an outside program
Here’s what iGEM TAU (https://2019.igem.org/Team:TAU_Israel) says about their experience with Webflow:
- Webflow is a website that allows you to design your website while creating a neat code for you.
- We have currently only done a proof of concept of importing the code to our wiki so there might be more pros or cons
-
Pros
- You can easily design an amazing website
- Webflow creates all the necessary files for you - HTML, CSS, JS
- You don’t have to really understand coding for web design
-
Cons
- The ability for export code files costs money
- You have to make some adjustments in the code while uploading it to the iGEM servers
Designing Your Team's Wiki
Decide on Branding
Decide on Branding
(Suggested by UNSW iGEM)
Color Palette - Come up with a team color palette. It’s very helpful to put them all in a spreadsheet, with their Hex Color Codes and/or RGB Color Codes next to each color, creating an easy reference for your entire team as you work on your wiki/other branding elements.
Logos - Ensure that you have all team and project logos in the file formats that you need. Upload them to the wiki (how to upload photos available on YouTube :), it’s helpful to include the image urls for these images in one location, as finding past uploaded images can be time consuming.
Fonts - Determine the fonts that your team will be using, and if you will need to upload them to your stylesheets. Resources:
- google.comhelps with finding, pairing, and downloading fonts
- REQUESTED BY UNSW iGEM - VIDEO COMING SOON ON HOW TO UPLOAD TO WIKI
Recommended Templates/Elements in Your Wiki
Navbar - this is essential as it allows a user to navigate to all pages of your wiki
- Video/resources coming soon
Footer -recommended if your team has sponsors, additional links/contact information that you would like your user to easily access
- Videos coming soon
Template for styling -main template for all pages that includes styling such as: headers, images, background color, etc.
Easiest ways to transfer templates
-
Copy and paste in the template iGEM created for your team. Ex: In the template — {{YourTeamName}} — create multiple templates as needed, such as {{YourTeamName/navbar}} and {{YourTeamName/style}}
- Note: doesn’t work for tempates (such as the footer) that have a specific location on page)
- Another way is to decide on all the templates you will use, create them all on one page, then copy and paste them to every page
- Video Explanation coming soon (requested by uOttawa)
jQuery
What is it?
Content provided by TU_Dresden
What is it?
Just as with Bootstrap (later section in guide!), jQuery is another major player in the web development industry and it needs to be included in your site for Bootstrap to work properly in your IGEM Wiki.
Imagine that you are in a hair salon. If Bootstrap was the makeup, jQuery would be the tools and gadgets required to make everything work. This is done through a completely different language from CSS or HTML called JAVASCRIPT.
So, what is Javascript? it is the language that your browser (Chrome/Safari) uses to DO STUFF.
Whenever you push a button, most likely you need that button to do something... like send data, change page, bring an alert window or resize an element within the website. Javascript is the language that was created to process these actions, or in our bio-language: to make the website alive!
This used to be a painfully tedious process with javascript alone, so this is where your friend jQuery comes into the play. It is a “layer” built on top of Javascript in order to easily implement actions and content-handling stuff on your Wiki without having to reinvent the wheel.
How to use the newer jQuery and Bootstrap in your Wiki
How to use the newer jQuery and Bootstrap in your Wiki?
This is where things get tricky. The IGEM server will push a VERY old version(1.11.1) of jQuery into whatever content you load into your space. This makes most modern templates and bootstrap versions incompatible with the IGEM MediaWiki by default. You need to use the new versions of both to make your site look like a 2018 website.
This workaround is not mentioned anywherein the Wiki guidelines and it was developed to embed the newest version of jQuery and Bootstrap on top of the annoying old version.
So here it is:
1) Download or open this files with your browser. You will need to copy its contents later.
https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js
https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.js
https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.css
2) Create the following files in your namespace (you must be logged in your igem account)
Template:YOUR_TEAM_NAME/jquery.js
Template:YOUR_TEAM_NAME/bootstrap.js
Template:YOUR_TEAM_NAME/bootstrap.css
To do this, simply navigate to the following addresses (replace YOUR_TEAM_NAME with your namespace):
https://2019.igem.org/Template:YOUR_TEAM_NAME/jquery.js
https://2019.igem.org/Template:YOUR_TEAM_NAME/bootstrap.js
https://2019.igem.org/Template:YOUR_TEAM_NAME/bootstrap.css
When you open each URL, since the file doesn’t exist, you will need to ask mediawiki to create the file for you. Use the link that saysEDIT THIS PAGE.
3) Paste the contents of each file into its corresponding file online.
example: jquery.jsgoes into Template:YOUR_TEAM_NAME/jquery.js
4) Save each file with its corresponding content
5) When you have created all 3 files, the sources for the updated versions of bootstrap and jQuery will be available within the IGEM server without violating any guidelines.
You can then include the files in your wiki template by calling them with the following URL within your site Template: “https://2019.igem.org/wiki/index.php?title=Template:YOUR_TEAM_NAME/filename.js&action=raw&ctype=text/javascript”
Note that the URL is instructing the iGEM’s mediawiki engine to deliver the file in RAW format and using the text/javascriptor text/cssMIME types. This is very important for the browser to be able to download and execute the imported content without mediawiki adding its annoying html entities (your computer guys will understand what we mean).
And Voila! We have jQuery 3.4.1 running on our IGEM Wiki!
It took us a while in TU_Dresden to figure out how to do this on our own from reading the fine letters of MediaWiki; given that the IT people of IGEM didn’t know how to support this kind of setup.
Bootstrap
What is it?
Major benefits include an easier way to make your wiki mobile friendly, along with a large component library built into the system.
Example of Bootstrap in Action (Credit: TU_Dresden)
(in HTML without bootstrap):
(in HTML, with bootstrap):
Note how the aspect of the button changed only by adding 3 classes to the HTML element (bin, btn-primary, bin-lg). This is possible to do with EVERY SINGLE COMPONENT OF YOUR WIKI, as long as you go through the documentation of bootstrap and understand how to use its classes. This is super useful to make your content layout “responsive” and well organized.
The entire documentation of Bootstrap can be reached here: https://getbootstrap.com/
Using Bootstrap in your Wiki (Credit: TU_Dresden)
Currently, Bootstrap is on its 4th version. Earlier versions are very similar but not quite, so bear in mind if you use an earlier version the class names will slightly change from version 4.
You should note that the MediaWiki engine of the IGEM server implements a VERY old bootstrap version that renders all modern templates useless.
For the purpose of your Wiki, it is recommended you upload the newer version of bootstrap into your namespace as template files. Normally, this means to upload the bootstrap JS file and a CSS files that you will later import into your pages.
Have in mind that, as per IGEM guidelines, YOU CAN NOT IMPORT SOURCES FROM AN EXTERNAL SERVER, as usually done in many sites. You need to get the sources yourself and upload them as explained later in this guide.
Why is it difficult?
iGEM expressly states that all wiki content/code must be hosted on the iGEM server!!! Although Bootstrap has many ways to implement their code on a website, many of them link to external stylesheets on the Bootstrap website. iGEM states that this is a form of cheating. Even when all stylesheets are copied from Bootstrap and hosted on the iGEM server, there is a segment of JavaScript in one of the stylesheets that inhibits the menu bar from working, which is also against iGEM’s wiki rules. If you still have trouble with this, iGEM team ASIJ Tokyo brought this fix to our attention (http://2015.igem.org/Team:Stockholm/fixbootstrap.css? fbclid=IwAR1ZxdFtMx6XJPS8KJ6dpLoQ4hAsnlBNp2rP6R- w9dR_7e2LoGz4miFWAmc)
- Video tutorial here -https://www.youtube.com/watch? v=IK6JjS_LjQg&list=PLg5B0YEXzgEorRa8vuZPoHah2e1jmgVQ6&index=4&t= 0s
- GitHub Code here - https://github.com/us-afrl-carrollhs
Helpful Hints
- Look at past team’s wiki pages. Look at their code, you can even use pieces of it on your team’s wiki (just make sure to cite it).
- Google is your best friend. Whether you are trying to find some example code or find a solution to your problem, Google will help.
- UNSW iGEM - “Because the iGEM html editor does not let you do indentations, that could compromise the readability of your code. It's really messy and hard to follow. Thus, it's a good idea to write your code in an external text editor. I use a free software called Sublime Text, which you can download here https://www.sublimetext.com/. It makes your code easy to follow.”
Contact Other Contributing Teams
Do you have specific questions about what teams wrote about? Either contact the US_AFRL_CarrollHS team (and we’ll either answer or redirect your questions for you) or, if a team has been cited on a section, find their information below.
- TU_Dresden - We hope it serves a good purpose for all teams that require to use the latest technology into their websites. Kindly address ANY questions on this matter to tudigem2019@gmail.com