diff --git a/_index.html b/_index.html
new file mode 100644
index 0000000..9f3901d
--- /dev/null
+++ b/_index.html
@@ -0,0 +1,46 @@
+<div class="col-md-18">
+	<h3>Vex - A Visual Editor for XML</h3>
+	<p class="left">
+		Vex is a <b>V</b>isual <b>E</b>ditor for <b>X</b>ML that hides the raw
+		XML tags from the user, providing instead a <b>word processor like</b>
+		interface. Vex uses standard <b>DTD files to define document types</b>
+		and <b>CSS stylesheets to define document layout</b>. Vex contains
+		definitions for <a href="http://en.wikipedia.org/wiki/Docbook">DocBook</a>
+		and <a href="http://en.wikipedia.org/wiki/DITA">DITA</a>. To edit
+		other XML formats only a DTD and a CSS are needed.
+	</p>
+	<div id="screencast">
+		<iframe
+		src="https://player.vimeo.com/video/58346326?byline=0&amp;portrait=0&amp;color=ffffff"
+		width="640" height="480" frameborder="0" webkitAllowFullScreen
+		mozallowfullscreen allowFullScreen></iframe>
+	</div>
+</div>
+
+<div class="col-md-6">
+  <div class="sideitem">
+	<h6>Bugs</h6>
+	<div class="content">
+	  <ul>
+		<li><a href="https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced;bug_status=UNCONFIRMED;bug_status=NEW;bug_status=ASSIGNED;bug_status=REOPENED;product=Mylyn%20Docs%20Vex">Open</a></li>
+		<li><a href="https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced;bug_status=RESOLVED;bug_status=VERIFIED;bug_status=CLOSED;product=Mylyn%20Docs%20Vex">Closed</a></li>
+		<li><a href="https://bugs.eclipse.org/bugs/enter_bug.cgi?product=Mylyn%20Docs%20Vex">New</a></li>
+	  </ul>
+	</div>
+  </div>
+  <div class="sideitem">
+	<div class="content"><a href="/projects/project_summary.php?projectid=mylyn.docs.vex">About This Project</a></div>
+  </div>
+  <div class="sideitem">
+	<h6>Committers</h6>
+	<div class="content">
+	  <ul>
+		 <li>Florian Thienel (lead)</li>
+		 <li>Carsten Hiesserich</li>
+		 <li>Holger Voormann</li>
+		 <li>David Carver</li>
+		 <li>Igor Jacy Lino Campista</li>
+	  </ul>
+	</div>
+  </div>
+</div>
diff --git a/_projectCommon.php b/_projectCommon.php
old mode 100755
new mode 100644
index 4481e0b..e0aa03b
--- a/_projectCommon.php
+++ b/_projectCommon.php
@@ -1,57 +1,47 @@
 <?php
-
-/*******************************************************************************
- * Copyright (c) 2009 Eclipse Foundation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+/**
+ * Copyright (c) 2018 Eclipse Foundation and others.
+ *
+ * This program and the accompanying materials are made
+ * available under the terms of the Eclipse Public License 2.0
+ * which is available at https://www.eclipse.org/legal/epl-2.0/
  *
  * Contributors:
+ *    Christopher Guindon (Eclipse Foundation)
  *
- *******************************************************************************/
+ * SPDX-License-Identifier: EPL-2.0
+ */
 
-    # Set the theme for your project's web pages.
-    # See http://eclipse.org/phoenix/
-    $theme = "Nova";
+require_once ($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/nav.class.php");
+require_once ($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/menu.class.php");
 
+// Eclipse IDE theme
+$Theme = $App->getThemeClass("eclipse_ide");
 
-    # Define your project-wide Navigation here
-    # This appears on the left of the page if you define a left nav
-    # Format is Link text, link URL (can be http://www.someothersite.com/), target (_self, _blank), level (1, 2 or 3)
-    # these are optional
+# Define your project-wide Nav bars here.
+# Format is Link text, link URL (can be http://www.someothersite.com/), target (_self, _blank), level (1, 2 or 3)
+# these are optional
+$Nav = new Nav();
+$Nav->setLinkList(array());
+$Nav->addNavSeparator("Vex", "/vex/");
+$Nav->addCustomNav("Download", "/vex/download/", "_self", 3);
+$Nav->addCustomNav("Documentation", "https://wiki.eclipse.org/Vex#Documentation", "_self", 3);
+$Nav->addCustomNav("Support", "https://wiki.eclipse.org/Vex#Support", "_self", 3);
+$Nav->addCustomNav("Getting Involved", "https://wiki.eclipse.org/Vex#Contributing", "_self", 3);
+$Theme->setNav($Nav);
 
-    # If you want to override the eclipse.org navigation, uncomment below.
-    # $Nav->setLinkList(array());
+$Theme->setPageKeywords("eclipse, IDE, project, vex, DITA, DocBook, DTD, CSS");
+$Theme->setPageAuthor("Holger Voormann");
+$Theme->setPageTitle("Vex - A Visual Editor for XML");
 
-    # Break the navigation into sections
-    $Nav->addNavSeparator("MyProject", 	"/vex");
-    $Nav->addCustomNav("Download", "/vex/download.php", "_self", 3);
-    $Nav->addCustomNav("Documentation", "http://wiki.eclipse.org/Vex#Documentation", "_blank", 3);
-    $Nav->addCustomNav("Support", "http://wiki.eclipse.org/Vex#Support", "_blank", 3);
-    $Nav->addCustomNav("Getting Involved", "http://wiki.eclipse.org/Vex#Contributing", "_blank", 3);
+$Menu = new Menu();
+$Menu->setMenuItemList(array());
+$Menu->addMenuItem("Home", "/vex/", "_self");
+$Menu->addMenuItem("Download", "/vex/download/", "_self");
+$Menu->addMenuItem("Documentation", "https://wiki.eclipse.org/Vex#Documentation", "_self");
+$Menu->addMenuItem("Support", "https://wiki.eclipse.org/Vex#Support", "_self");
+$Menu->addMenuItem("Getting Involved", "https://wiki.eclipse.org/Vex#Contributing", "_self");
+$Theme->setMenu($Menu);
 
-    # Define keywords, author and title here, or in each PHP page specifically
-    $pageKeywords	= "eclipse, project, vex, DITA, DocBook, DTD, CSS";
-    $pageAuthor		= "Holger Voormann";
-    # $pageTitle 		= "Vex - A Visual Editor for XML";
-
-
-    # top navigation bar
-    # To override and replace the navigation with your own, uncomment the line below.
-    # $Menu->setMenuItemList(array());
-    # $Menu->addMenuItem("Home", "/project", "_self");
-    # $Menu->addMenuItem("Download", "/project/download.php", "_self");
-    # $Menu->addMenuItem("Documentation", "/project/documentation.php", "_self");
-    # $Menu->addMenuItem("Support", "/project/support.php", "_self");
-    # $Menu->addMenuItem("Developers", "/project/developers", "_self");
-
-    # To define additional CSS or other pre-body headers
-    $App->AddExtraHtmlHeader('<link rel="stylesheet" type="text/css" href="/vex/style.css"/>');
-
-    # To enable occasional Eclipse Foundation Promotion banners on your pages (EclipseCon, etc)
-    $App->Promotion = TRUE;
-
-    # If you have Google Analytics code, use it here
-    # $App->SetGoogleAnalyticsTrackingCode("YOUR_CODE");
-?>
\ No newline at end of file
+// Disable occasional Eclipse Foundation Promotion banners (EclipseCon, etc.)
+$App->Promotion = FALSE;
\ No newline at end of file
diff --git a/artwork/Vex_banner_smaller.svg b/artwork/Vex_banner_smaller.svg
new file mode 100644
index 0000000..9bad3e8
--- /dev/null
+++ b/artwork/Vex_banner_smaller.svg
@@ -0,0 +1,169 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="210mm"
+   height="297mm"
+   id="svg10"
+   version="1.1"
+   inkscape:version="0.92.1 r15371"
+   sodipodi:docname="Vex_banner_smaller.svg">
+  <defs
+     id="defs12">
+    <mask
+       maskUnits="userSpaceOnUse"
+       id="mask1418">
+      <rect
+         y="675.75079"
+         x="-251.36287"
+         height="66.978745"
+         width="39.98901"
+         id="rect1420"
+         style="fill:#ffffff;fill-opacity:1;stroke:none"
+         transform="matrix(0.70710678,-0.70710678,0.70710678,0.70710678,0,0)" />
+    </mask>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient1050"
+       id="linearGradient1056"
+       x1="435.96875"
+       y1="474.66321"
+       x2="435.96875"
+       y2="541.98865"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       id="linearGradient1050">
+      <stop
+         style="stop-color:#d6d6d6;stop-opacity:1;"
+         offset="0"
+         id="stop1052" />
+      <stop
+         style="stop-color:#717171;stop-opacity:1;"
+         offset="1"
+         id="stop1054" />
+    </linearGradient>
+    <linearGradient
+       gradientTransform="translate(-1e-5,1e-5)"
+       y2="541.98865"
+       x2="435.96875"
+       y1="474.66321"
+       x1="435.96875"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient74"
+       xlink:href="#linearGradient1050"
+       inkscape:collect="always" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="1.8848672"
+     inkscape:cx="341.40848"
+     inkscape:cy="526.17468"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer1"
+     showgrid="false"
+     inkscape:window-width="1538"
+     inkscape:window-height="877"
+     inkscape:window-x="54"
+     inkscape:window-y="-8"
+     inkscape:window-maximized="1" />
+  <metadata
+     id="metadata15">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title></dc:title>
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:label="Ebene 1"
+     inkscape:groupmode="layer"
+     id="layer1">
+    <rect
+       style="fill:url(#linearGradient74);fill-opacity:1;stroke:none"
+       id="rect1030"
+       width="39.98901"
+       height="66.978745"
+       x="272.29807"
+       y="492.69434"
+       inkscape:export-xdpi="236.87604"
+       inkscape:export-ydpi="236.87604"
+       inkscape:export-filename="C:\Users\User\Desktop\vex.png" />
+    <g
+       id="g1412"
+       transform="matrix(0.70710678,0.70710678,-0.70710678,0.70710678,523.66095,-183.05641)"
+       mask="url(#mask1418)"
+       inkscape:export-filename="C:\Users\User\Desktop\vex.png"
+       inkscape:export-xdpi="236.87604"
+       inkscape:export-ydpi="236.87604">
+      <path
+         sodipodi:nodetypes="ccsscsscc"
+         inkscape:connector-curvature="0"
+         id="rect1303-1"
+         d="m 335.64955,657.08527 c 0,0 0,21.52638 0,32.28957 0,3.71757 2.92715,6.71043 6.56303,6.71043 3.63587,0 6.56302,-2.99286 6.56302,-6.71043 l 0,-19.00899 13.2416,0 c 3.67432,0 6.63235,-2.96161 6.63235,-6.64029 0,-3.67868 -2.95803,-6.64029 -6.63235,-6.64029 -8.78922,0 -26.36765,0 -26.36765,0 z"
+         style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:3;stroke-miterlimit:4;stroke-dasharray:none" />
+      <path
+         sodipodi:nodetypes="ccsscsscc"
+         inkscape:connector-curvature="0"
+         id="rect1303-1-3"
+         d="m 345.77859,667.36859 c 0,0 0,-21.52638 0,-32.28957 0,-3.71758 -2.92715,-6.71043 -6.56303,-6.71043 -3.63587,0 -6.56302,2.99285 -6.56302,6.71043 l 0,19.00899 -13.2416,0 c -3.67432,0 -6.63235,2.96161 -6.63235,6.64029 0,3.67868 2.95803,6.64029 6.63235,6.64029 8.78922,0 26.36765,0 26.36765,0 z"
+         style="fill:#6b76bd;fill-opacity:1;stroke:#000000;stroke-width:3;stroke-miterlimit:4;stroke-dasharray:none" />
+    </g>
+    <rect
+       y="492.69434"
+       x="272.29807"
+       height="66.978745"
+       width="39.98901"
+       id="rect1422"
+       style="fill:none;stroke:#000000;stroke-width:1.5;stroke-miterlimit:4;stroke-dasharray:none"
+       inkscape:export-filename="C:\Users\User\Desktop\vex.png"
+       inkscape:export-xdpi="236.87604"
+       inkscape:export-ydpi="236.87604" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Bitstream Vera Sans';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
+       x="311.35544"
+       y="555.59302"
+       id="text1454"
+       transform="scale(1.0483773,0.95385507)"
+       inkscape:export-filename="C:\Users\User\Desktop\vex.png"
+       inkscape:export-xdpi="236.87604"
+       inkscape:export-ydpi="236.87604"><tspan
+         sodipodi:role="line"
+         id="tspan1456"
+         x="311.35544"
+         y="555.59302"
+         style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:38.78995895px;line-height:1.25;font-family:Arial;-inkscape-font-specification:'Arial Bold'">Vex</tspan></text>
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:11.37614918px;line-height:0%;font-family:'Bitstream Vera Sans';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.94801247"
+       x="320.80301"
+       y="556.46625"
+       id="text1454-1"
+       transform="scale(1.0170908,0.98319637)"
+       inkscape:export-filename="C:\Users\User\Desktop\vex.png"
+       inkscape:export-xdpi="236.87604"
+       inkscape:export-ydpi="236.87604"><tspan
+         sodipodi:role="line"
+         id="tspan1456-1"
+         x="320.80301"
+         y="556.46625"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:12.6640501px;line-height:1.25;font-family:Arial;-inkscape-font-specification:Arial;stroke-width:0.94801247">A Visual Editor for XML</tspan></text>
+  </g>
+</svg>
diff --git a/download.php b/download.php
deleted file mode 100755
index 7b8a628..0000000
--- a/download.php
+++ /dev/null
@@ -1,29 +0,0 @@
-<?php  																														
-/*******************************************************************************
- * Copyright (c) 2009
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *
- *******************************************************************************/
-
-	require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/app.class.php");	
-	require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/nav.class.php"); 	
-	require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/menu.class.php"); 	
-	$App 	= new App();	
-	$Nav	= new Nav();	
-	$Menu 	= new Menu();		
-	include($App->getProjectCommon());
-	
-	$localVersion = false;
-
-    $pageTitle = "Vex - Download";
-
-    $html = file_get_contents('pages/_download.html');
-    
-    # Generate the web page
-    $App->generatePage($theme, $Menu, null, $pageAuthor, $pageKeywords, $pageTitle, $html);
-?>
\ No newline at end of file
diff --git a/download/_index.html b/download/_index.html
new file mode 100644
index 0000000..ccb1056
--- /dev/null
+++ b/download/_index.html
@@ -0,0 +1,25 @@
+<h1>Vex Downloads</h1>
+
+<h3><a href="http://wiki.eclipse.org/Vex/NewAndNoteworthy">New &amp; Noteworthy</a></h3>
+
+<h3></h3>
+<table>
+	<tbody><tr><td></td>
+		<th>Update Site</th>
+		<th>Drag to Install</th></tr>
+	<tr><th>Latest Release:&nbsp;</th>
+		<td><a href="http://download.eclipse.org/vex/releases/latest/">http://download.eclipse.org/vex/releases/latest/</a></td>
+		<td><a href="http://marketplace.eclipse.org/marketplace-client-intro?mpc_install=1662" title="Drag and drop into your running Eclipse IDE to install Vex"><img src="https://marketplace.eclipse.org/sites/all/modules/custom/marketplace/images/installbutton.png" style="vertical-align: text-bottom"></a></td></tr>
+	<tr><th>Latest Milestone:&nbsp;</th>
+		<td><a href="http://download.eclipse.org/vex/milestones/latest/">http://download.eclipse.org/vex/milestones/latest/</a></td>
+		<td><a href="http://marketplace.eclipse.org/marketplace-client-intro?mpc_install=650134" title="Drag and drop into your running Eclipse IDE to install Vex (Latest Milestone)"><img src="https://marketplace.eclipse.org/sites/all/modules/custom/marketplace/images/installbutton.png" style="vertical-align: text-bottom"></a></td></tr>
+</tbody></table>
+
+<h3></h3>
+<p>
+	Like Vex?
+	<a href="https://marketplace.eclipse.org/content/vex">
+		<img src="/vex/images/star.png" border="0"/>
+		Star it as a <b>favorite</b> on Eclipse Marketplace!
+	</a>
+</p>
diff --git a/download/index.php b/download/index.php
new file mode 100644
index 0000000..84d49f6
--- /dev/null
+++ b/download/index.php
@@ -0,0 +1,27 @@
+<?php
+/**
+ * Copyright (c) 2018 Eclipse Foundation and others.
+ *
+ * This program and the accompanying materials are made
+ * available under the terms of the Eclipse Public License 2.0
+ * which is available at https://www.eclipse.org/legal/epl-2.0/
+ *
+ * Contributors:
+ *    Christopher Guindon (Eclipse Foundation)
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ */
+
+require_once ($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/app.class.php");
+
+$App = new App();
+
+include ($App->getProjectCommon());
+$Theme->setPageTitle("Vex Downloads");
+
+//$version = "1.2.3";
+$html = file_get_contents('_index.html');
+//$html = preg_replace('/@VERSION@/', $version, $html); // replaces '@VERSION@' in '_index.html'
+$Theme->setHtml($html);
+
+$Theme->generatePage();
\ No newline at end of file
diff --git a/images/backgroundMain.png b/images/backgroundMain.png
index 84c0526..27b4f8e 100755
--- a/images/backgroundMain.png
+++ b/images/backgroundMain.png
Binary files differ
diff --git a/images/backgroundMain.xcf b/images/backgroundMain.xcf
deleted file mode 100644
index 6d66426..0000000
--- a/images/backgroundMain.xcf
+++ /dev/null
Binary files differ
diff --git a/images/backgroundMainEmpty.png b/images/backgroundMainEmpty.png
deleted file mode 100755
index 9487b21..0000000
--- a/images/backgroundMainEmpty.png
+++ /dev/null
Binary files differ
diff --git a/images/buttonDocumentation.png b/images/buttonDocumentation.png
deleted file mode 100755
index bbfdde0..0000000
--- a/images/buttonDocumentation.png
+++ /dev/null
Binary files differ
diff --git a/images/buttonDocumentation_sel.png b/images/buttonDocumentation_sel.png
deleted file mode 100755
index 8affb93..0000000
--- a/images/buttonDocumentation_sel.png
+++ /dev/null
Binary files differ
diff --git a/images/buttonDownload.png b/images/buttonDownload.png
deleted file mode 100755
index e620092..0000000
--- a/images/buttonDownload.png
+++ /dev/null
Binary files differ
diff --git a/images/buttonDownload_new.png b/images/buttonDownload_new.png
deleted file mode 100755
index e620092..0000000
--- a/images/buttonDownload_new.png
+++ /dev/null
Binary files differ
diff --git a/images/buttonDownload_sel.png b/images/buttonDownload_sel.png
deleted file mode 100755
index d3a0330..0000000
--- a/images/buttonDownload_sel.png
+++ /dev/null
Binary files differ
diff --git a/images/buttonInvolved.png b/images/buttonInvolved.png
deleted file mode 100755
index b3e9a82..0000000
--- a/images/buttonInvolved.png
+++ /dev/null
Binary files differ
diff --git a/images/buttonInvolved_sel.png b/images/buttonInvolved_sel.png
deleted file mode 100755
index 346a452..0000000
--- a/images/buttonInvolved_sel.png
+++ /dev/null
Binary files differ
diff --git a/images/buttonSupport.png b/images/buttonSupport.png
deleted file mode 100755
index bd36086..0000000
--- a/images/buttonSupport.png
+++ /dev/null
Binary files differ
diff --git a/images/buttonSupport_sel.png b/images/buttonSupport_sel.png
deleted file mode 100755
index a535fe8..0000000
--- a/images/buttonSupport_sel.png
+++ /dev/null
Binary files differ
diff --git a/images/vex_screenshot_xhtml1.png b/images/vex_screenshot_xhtml1.png
deleted file mode 100644
index 3418d0e..0000000
--- a/images/vex_screenshot_xhtml1.png
+++ /dev/null
Binary files differ
diff --git a/index.php b/index.php
old mode 100755
new mode 100644
index f209d17..dc623cb
--- a/index.php
+++ b/index.php
@@ -1,29 +1,55 @@
 <?php
-/*******************************************************************************
- * Copyright (c) 2009 Eclipse Foundation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+/**
+ * Copyright (c) 2018 Eclipse Foundation and others.
+ *
+ * This program and the accompanying materials are made
+ * available under the terms of the Eclipse Public License 2.0
+ * which is available at https://www.eclipse.org/legal/epl-2.0/
  *
  * Contributors:
+ *    Christopher Guindon (Eclipse Foundation)
  *
- *******************************************************************************/
+ * SPDX-License-Identifier: EPL-2.0
+ */
 
-    require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/app.class.php");	require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/nav.class.php"); 	require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/menu.class.php"); 	$App 	= new App();	$Nav	= new Nav();	$Menu 	= new Menu();		include($App->getProjectCommon());
+require_once ($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/app.class.php");
 
-    $localVersion = false;
+$App = new App();
+include ($App->getProjectCommon());
 
-    # Define these here, or in _projectCommon.php for site-wide values
-    $pageKeywords	= "eclipse, project, vex, DITA, DocBook, DTD, CSS";
-    $pageAuthor		= "Holger Voormann";
-    $pageTitle 		= "Vex - A Visual Editor for XML";
+// Remove sidebar on frontpage
+$Theme->setNav(new Nav());
 
+$variables['header_nav']['links'][] = array(
+  'icon' => 'fa-book',
+  'url' => 'https://wiki.eclipse.org/Vex#Documentation',
+  'title' => 'Documentation',
+  'text' => 'Tutorials, Examples, Videos, Reference Documentation'
+);
 
-    // 	# Paste your HTML content between the EOHTML markers!
-    $html = file_get_contents('pages/_index.html');
+$variables['header_nav']['links'][] = array(
+  'icon' => 'fa-download',
+  'url' => 'download',
+  'title' => 'Download',
+  'text' => 'Eclipse Distribution, Update Site, Dropins'
+);
 
-    # Generate the web page
-    $App->generatePage($theme, $Menu, null, $pageAuthor, $pageKeywords, $pageTitle, $html);
+$variables['header_nav']['links'][] = array(
+  'icon' => 'fa-users',
+  'url' => 'https://wiki.eclipse.org/Vex#Contributing',
+  'title' => 'Getting Involved',
+  'text' => 'Contributor Guide, Mailing Lists, Wiki'
+);
 
-?>
\ No newline at end of file
+$variables['header_nav']['links'][] = array(
+  'icon' => 'fa-support',
+  'url' => 'https://wiki.eclipse.org/Vex#Support',
+  'title' => 'Support',
+  'text' => 'Contributor Guide, Mailing Lists, Wiki'
+);
+$Theme->setThemeVariables($variables);
+
+$Theme->setHtml(file_get_contents('_index.html'));
+
+$Theme->setExtraHeaders('<style>.header_nav{background: url("images/backgroundMain.png") top left no-repeat;}</style>');
+$Theme->generatePage();
\ No newline at end of file
diff --git a/pages/_download.html b/pages/_download.html
deleted file mode 100644
index 75f573a..0000000
--- a/pages/_download.html
+++ /dev/null
@@ -1,27 +0,0 @@
-<div id="midcolumn">
-
-	<h2>Downloads</h2>
-	<p>
-		All downloads are provided under the terms and conditions of the <a
-			href="/legal/epl/notice.php">Eclipse Foundation Software User
-			Agreement</a> unless otherwise specified.
-	</p>
-
-	<p>
-		<a href="http://wiki.eclipse.org/Vex/NewAndNoteworthy"><img
-			src="images/star.png" alt="New" style="vertical-align: text-bottom" />
-			New & Noteworthy</a>
-	</p>
-	<table>
-	   <tr><td></td>
-	       <td>Update Site:</td>
-	       <td>Drag to Install:</td></tr>
-	   <tr><td><b>Latest Release:</b></td>
-	       <td><a href="http://download.eclipse.org/vex/releases/latest/">http://download.eclipse.org/vex/releases/latest/</a></td>
-	       <td><a href="http://marketplace.eclipse.org/marketplace-client-intro?mpc_install=1662" title="Drag and drop into your running Eclipse IDE to install Vex"><img src="https://marketplace.eclipse.org/sites/all/modules/custom/marketplace/images/installbutton.png" style="vertical-align: text-bottom" /></a></td></tr>
-	   <tr><td><b>Latest Milestone:</b></td>
-	       <td><a href="http://download.eclipse.org/vex/milestones/latest/">http://download.eclipse.org/vex/milestones/latest/</a></td>
-	       <td><a href="http://marketplace.eclipse.org/marketplace-client-intro?mpc_install=650134" title="Drag and drop into your running Eclipse IDE to install Vex (Latest Milestone)"><img src="https://marketplace.eclipse.org/sites/all/modules/custom/marketplace/images/installbutton.png" style="vertical-align: text-bottom" /></a></td></tr>
-	</table>
-
-</div>
diff --git a/pages/_index.html b/pages/_index.html
deleted file mode 100755
index 3e7c2cc..0000000
--- a/pages/_index.html
+++ /dev/null
@@ -1,133 +0,0 @@
-<div id="bigbuttons">
-	<h3>Primary Links</h3>
-	<ul>
-		<li><a id="buttonDownload" href="download.php" title="Download">Eclipse
-				Distribution, Update Site, Dropins</a></li>
-		<li><a id="buttonDocumentation"
-			href="http://wiki.eclipse.org/Vex#Documentation"
-			title="Documentation">Tutorials, Examples, Videos, Reference
-				Documentation</a></li>
-		<li><a id="buttonSupport"
-			href="http://wiki.eclipse.org/Vex#Support" title="Download">Bug
-				Tracker, Newsgroup, Professional Support</a></li>
-		<li><a id="buttonInvolved"
-			href="http://wiki.eclipse.org/Vex#Contributing"
-			title="Getting Involved">CVS, Workspace Setup, Wiki, Committers</a></li>
-	</ul>
-</div>
-
-<div id="midcolumn">
-	<h3>Vex - A Visual Editor for XML</h3>
-	<p class="left">
-		Vex is a <b>V</b>isual <b>E</b>ditor for <b>X</b>ML that hides the raw
-		XML tags from the user, providing instead a <b>word processor like</b>
-		interface. Vex uses standard <b>DTD files to define document types</b>
-		and <b>CSS stylesheets to define document layout</b>. Vex contains
-		definitions for <a href="http://en.wikipedia.org/wiki/Docbook">DocBook</a>
-		and <a href="http://en.wikipedia.org/wiki/DITA">DITA</a>. To edit
-		other XML formats only a DTD and a CSS are needed.
-	</p>
-
-	<div id="screencast">
-		<iframe
-        src="https://player.vimeo.com/video/58346326?byline=0&amp;portrait=0&amp;color=ffffff"
-        width="640" height="480" frameborder="0" webkitAllowFullScreen
-        mozallowfullscreen allowFullScreen></iframe>
-	</div>
-
-	<!--
-<div id="screencast">
-<object width="640" height="480"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="https://vimeo.com/moogaloop.swf?clip_id=8260921&amp;server=vimeo.com&amp;show_title=0&amp;show_byline=0&amp;show_portrait=0&amp;color=DBD7EF&amp;fullscreen=1" /><embed src="https://vimeo.com/moogaloop.swf?clip_id=8260921&amp;server=vimeo.com&amp;show_title=0&amp;show_byline=0&amp;show_portrait=0&amp;color=DBD7EF&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="640" height="480"></embed></object>
-</div>
--->
-	<!--
-<h3>...and yet powerful</h3>
- -->
-</div>
-
-<!--
-<div id="feature_1">
-<h4>Some cool feature</h4>
-<p>MyProject has this really cool feature that you describe here in few words, just as a teaser.</p>
-
-<div id="feature_2">
-<h4>Another Feature</h4>
-<p>When working with MyProject, great things happen, and one of them is described here.</p>
-</div>
-
-<div id="feature_3">
-<h4>Another Feature</h4>
-<p>When working with MyProject, great things happen, and one of them is described here.</p>
-</div>
-
-<div id="feature_4">
-<h4>User Experience</h4>
-<p>
-Experiment with style.css to create columns for text, just the way you want it. This section
-is a bit wider and can contain more words, even small logos or graphics to describe a neat feature in more detail.</p>
-</div>
-
-<div id="feature_more">
-<h4>and much more...</h4>
-<p>Read the MyProject <a href="/project/documentation.php">documentation</a> and join the discussion at the <a href="http://www.eclipse.org/forums/eclipse.newsgroup.name">forum</a> to understand how powerful MyProject is.</p>
-<p> Want to know more? <a href="/projects/project_summary.php?projectid=mylyn.docs.vex">About This Project</a>
-</div>
-
-</div>
-
--->
-<div id="rightcolumn">
-
-	<div>
-		<h3>Talks/Presentations</h3>
-		<ul>
-			<li>2011-11-03, Florian Thienel: <a
-				href="http://eclipsecon.org/sessions/introducing-visual-editor-xml">Introducing
-					the Visual Editor for XML</a>, EclipseCon Europe 2011
-			</li>
-		</ul>
-		<p />
-	</div>
-
-	<div>
-		<h3>Bugs</h3>
-		<ul>
-			<li><a
-				href="https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced;bug_status=UNCONFIRMED;bug_status=NEW;bug_status=ASSIGNED;bug_status=REOPENED;product=Mylyn%20Docs%20Vex">Open</a></li>
-			<li><a
-				href="https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced;bug_status=RESOLVED;bug_status=VERIFIED;bug_status=CLOSED;product=Mylyn%20Docs%20Vex">Closed</a></li>
-			<li><a
-				href="https://bugs.eclipse.org/bugs/enter_bug.cgi?product=Mylyn%20Docs%20Vex">New</a></li>
-		</ul>
-		<p />
-	</div>
-
-	<div>
-		<h3>Committers</h3>
-		<ul>
-			<li>Florian Thienel (lead)</li>
-			<li>Carsten Hiesserich</li>
-			<li>Holger Voormann</li>
-			<li>David Carver</li>
-			<li>Igor Jacy Lino Campista</li>
-		</ul>
-	</div>
-
-
-	<!--
-<div id="headlines">
-<h3>New and Noteworthy</h3>
-<p>... or a link to your new and noteworthy.</p>
-</div>
-
-<div id="headlines">
-<h3>Headlines on the web</h3>
-<p>Project headlines...</p>
-</div>
-
-<div id="headlines">
-<h3>Another announcement</h3>
-<p>MyProject is pleased to announce...</p>
-</div>
--->
-</div>
diff --git a/style.css b/style.css
deleted file mode 100755
index edf76c9..0000000
--- a/style.css
+++ /dev/null
@@ -1,190 +0,0 @@
-@CHARSET "UTF-8";
-#novaContent {
-	background: url("images/backgroundMain.png") no-repeat;
-	padding-top: 210px;
-}
-
-#midcolumn {
-	width: 640px;
-	padding: 0 10px 10px 10px;
-}
-
-#rightcolumn {
-	width: 260px;
-}
-
-
-h3 {
-	clear: both;
-}
-
-h7 {
-	font-weight: bold;
-	padding: 5px;
-}
-
-a strong {
-	text-decoration: underline;
-}
-
-
-#novaContent {
-	background: url("images/backgroundMain.png") no-repeat white;
-	padding-top: 170px;
-}
-
-#introText p.left {
-	width: 48%;
-	float: left;
-}
-
-#introText p.right {
-	width: 48%;
-	float: right;
-}
-
-#feature_1 {
-	float: left;
-	width: 30%;
-	margin-right: 3%;
-}
-
-#feature_2 {
-	float: left;
-	width: 30%;
-	margin-right: 3%
-}
-
-#feature_3 {
-	float: left;
-	width: 30%;
-}
-
-#feature_4 {
-	clear: both;
-	float: left;
-	width: 63%;
-	margin-right: 3%;	
-}
-
-#feature_more {
-	float: left;
-	width: 30%;
-}
-	
-#bigbuttons {
-	position: relative;
-	left: 420px;
-	top: -170px;
-}
-#bigbuttons h3{
-	visibility: hidden;
-}
-
-#bigbuttons a {
-}
-
-#bigbuttons ul li {
-   display:block;
-   list-style-type:none;
-   background-color: red;
-   padding: 0;
-   margin: 0;
-}
-
-#bigbuttons a:hover {
-	text-decoration: none;
-}
-
-#bigbuttons a {
-   display: block;
-   height:77px; width:250px;
-   padding: 0;
-   margin: 20px;
-   text-indent: -9000px;
-   position: absolute;
-}
-
-#buttonDownload {
-   background:transparent url("images/buttonDownload.png") no-repeat 0 0;
-   top: 0px;
-   left: 0px;
-}
-
-#buttonDownload:hover {
-   background:transparent url("images/buttonDownload_sel.png") no-repeat 0 0;
-}
-
-   
-#buttonDocumentation {
-   background:transparent url("images/buttonDocumentation.png") no-repeat 0 0;
-   top: 87px;
-   left: 0px;
-}
-
-#buttonDocumentation:hover {
-   background:transparent url("images/buttonDocumentation_sel.png") no-repeat 0 0;
-}
-
-#buttonSupport {
-   background:transparent url("images/buttonSupport.png") no-repeat 0 0;
-   top: 0px;
-   left: 280px;
-}
-
-#buttonSupport:hover {
-   background:transparent url("images/buttonSupport_sel.png") no-repeat 0 0;
-}
-
-#buttonInvolved {
-   background:transparent url("images/buttonInvolved.png") no-repeat 0 0;
-   top: 87px;
-   left: 280px;
-}
-
-#buttonInvolved:hover {
-   background:transparent url("images/buttonInvolved_sel.png") no-repeat 0 0;
-}
-
-#bigbuttons a * {
-	visibility: hidden;
-}
-
-#headlines {
-}
-
-#headlines ul li {
-	margin: 0 0;
-	list-style-type: none;
-	list-style-image: none;
-}
-
-	
-#headlines div.title {
-	display: inline;
-	margin-right: 0.5em;
-}
-
-#headlines div.meta {
-	display: inline;
-	color: #444444;
-	font-size: smaller;  
-}
-
-#headlines div.item {
-	display: block;
-	}
-	
-#screencast {
-	margin-bottom: 10px;
-}
-
-#newAndNoteworthy a {
-   display: block;
-   width:218px; 
-   height:51px;
-   padding: 0;
-   text-indent: -9000px;
-   background:transparent url("images/bannerNewAndNoteworthy08M4.png") no-repeat 0 0;
-   margin-top: 10px;
-}
\ No newline at end of file
