diff --git a/releases/3.17/index.xml b/releases/3.17/index.xml
index 1fd28d2..7779781 100755
--- a/releases/3.17/index.xml
+++ b/releases/3.17/index.xml
@@ -7,7 +7,7 @@
 	</head>
 	<body>
 		<h1>WTP 3.17</h1>
-		<h2>Status as of 2019-03-18</h2>
+		<h2>Status as of 2020-03-18</h2>
 		<p>
 			WTP 3.17 was officially released on March 18, 2020, as part of the Eclipse IDE 2020-03.
 			Users of Eclipse should use the 2020-03 Update Site,
diff --git a/releases/3.18/NewAndNoteworthy/index.html b/releases/3.18/NewAndNoteworthy/index.html
new file mode 100755
index 0000000..21fb591
--- /dev/null
+++ b/releases/3.18/NewAndNoteworthy/index.html
@@ -0,0 +1,8 @@
+<html>
+<head>
+<meta http-equiv="refresh" content="0; url=index.php" />
+</head>
+<body>
+<a href="index.php">This document has moved</a>
+</body>
+</html>
diff --git a/releases/3.18/NewAndNoteworthy/index.php b/releases/3.18/NewAndNoteworthy/index.php
new file mode 100755
index 0000000..8a48a07
--- /dev/null
+++ b/releases/3.18/NewAndNoteworthy/index.php
@@ -0,0 +1,28 @@
+<?php  																														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());    # All on the same line to unclutter the user's desktop'
+$pageKeywords	= "";
+$pageAuthor		="Ugur Yildirim @ Eteration A.S.";
+
+$root = $_SERVER['DOCUMENT_ROOT'];
+require_once ($root . '/webtools/common.php');
+
+# Generate the web page
+// Load the XML source
+$xml = DOMDocument::load('index.xml');
+
+//Set the page title
+$xpath = new DOMXPath($xml);
+$titleNode = $xpath->query("/release/attribute::name")->item(0);
+$pageTitle = ($titleNode != null) ? "Web Tools Platform " . $titleNode->nodeValue . " News" : "eclipse.org webtools page";
+
+// Load the XSL source
+$xsl = DOMDocument::load($root . '/webtools/development/news/phoenix_noteworthy.xsl');
+
+// Configure the transformer
+$proc = new XSLTProcessor;
+$proc->importStyleSheet($xsl); // attach the xsl rules
+
+$html = $proc->transformToXML($xml);
+$html .= $wtpTopButtons;
+
+$App->generatePage($theme, $Menu, $Nav, $pageAuthor, $pageKeywords, $pageTitle, $html);
+?>
diff --git a/releases/3.18/NewAndNoteworthy/index.xml b/releases/3.18/NewAndNoteworthy/index.xml
new file mode 100755
index 0000000..d1713e2
--- /dev/null
+++ b/releases/3.18/NewAndNoteworthy/index.xml
@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet type="text/xsl" href="../../../development/news/phoenix_noteworthy.xsl"?>
+<!-- Run as XSL Transformation to preview -->
+<release
+	name="3.18"
+	root="../../.."
+>
+	<header>
+		 WTP 3.18 is primarily a bug fix release, with more new features expected in the next release.
+		 It is available as part of the
+		 <a href="https://wiki.eclipse.org/Simultaneous_Release">Eclipse IDE</a>
+		 <a href="https://wiki.eclipse.org/Category:SimRel-2020-06">2020-06</a>
+		 (June 17th, 2020).
+		 <a href="http://download.eclipse.org/webtools/downloads/">Download</a>
+				it now!
+	</header>
+	<component name="Source Editing">
+		<item title="'Was that supposed to be a tag?'">
+			<description>
+				If you forgot to actually open your tag, Content Assist for XML,
+				HTML, XML Schema, JSP, and XSL has you covered.
+				<br />
+				<br />
+				<img
+					src="notautoemojification.png"
+					alt="Content Assist got a little smarter" />
+			</description>
+		</item>
+		<item title="Appearance customization">
+			<description>
+				The XML, HTML, XML Schema, JSP, XSL, CSS, DTD, and JSON Editors all now
+				offer their own Appearance preference pages, allowing for more granular
+				control over those defaults. Adopters should see bug 561347 and the
+				<a
+					href="https://wiki.eclipse.org/WTP_3.18_(2020-06)_-_New_Help_for_Old_Friends"
+				>migration documentation</a>
+				for guidance on easily implementing the same for their editors.
+				<br />
+				<br />
+				<img
+					src="many-appearance.png"
+					alt="All those Appearance preference pages. Just look at them!" />
+			</description>
+		</item>
+	</component>
+	<footer>
+		Summaries for earlier releases:
+		<ul>
+			<li>
+				<a
+					href="../../../development/news/"
+				>Full summaries for earlier milestones and releases.</a>
+			</li>
+		</ul>
+	</footer>
+</release>
diff --git a/releases/3.18/NewAndNoteworthy/many-appearance.png b/releases/3.18/NewAndNoteworthy/many-appearance.png
new file mode 100755
index 0000000..7931867
--- /dev/null
+++ b/releases/3.18/NewAndNoteworthy/many-appearance.png
Binary files differ
diff --git a/releases/3.18/NewAndNoteworthy/notautoemojification.png b/releases/3.18/NewAndNoteworthy/notautoemojification.png
new file mode 100755
index 0000000..31b7b13
--- /dev/null
+++ b/releases/3.18/NewAndNoteworthy/notautoemojification.png
Binary files differ
diff --git a/releases/3.18/index.html b/releases/3.18/index.html
new file mode 100755
index 0000000..9a67e7f
--- /dev/null
+++ b/releases/3.18/index.html
@@ -0,0 +1,8 @@
+<html>
+<head>
+<meta http-equiv="refresh" content="0; url=index.php" />
+</head>
+<body>
+<a href="index.php">This document has moved</a>
+</body>
+</html>
diff --git a/releases/3.18/index.php b/releases/3.18/index.php
new file mode 100755
index 0000000..44a28f4
--- /dev/null
+++ b/releases/3.18/index.php
@@ -0,0 +1,28 @@
+<?php  																														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());    # All on the same line to unclutter the user's desktop'
+$pageKeywords	= "";
+$pageAuthor		="Nick Boldt @ Red Hat";
+
+$root = $_SERVER['DOCUMENT_ROOT'];
+require_once ($root . '/webtools/common.php');
+
+# Generate the web page
+// Load the XML source
+$xml = DOMDocument::load('index.xml');
+
+//Set the page title
+$xpath = new DOMXPath($xml);
+$titleNode = $xpath->query("/html/head/title")->item(0);
+$pageTitle = ($titleNode != null) ? $titleNode->nodeValue : "eclipse.org webtools page";
+
+// Load the XSL source
+$xsl = DOMDocument::load($root . '/webtools/wtpnova.xsl');
+
+// Configure the transformer
+$proc = new XSLTProcessor;
+$proc->importStyleSheet($xsl); // attach the xsl rules
+
+$html = $proc->transformToXML($xml);
+$html .= $wtpTopButtons;
+
+$App->generatePage($theme, $Menu, $Nav, $pageAuthor, $pageKeywords, $pageTitle, $html);
+?>
diff --git a/releases/3.18/index.xml b/releases/3.18/index.xml
new file mode 100755
index 0000000..00a5a86
--- /dev/null
+++ b/releases/3.18/index.xml
@@ -0,0 +1,99 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet type="text/xsl" href="../../wtpphoenix.xsl"?>
+<html>
+	<head>
+    	<meta name="root" content="../../../" />
+		<title>eclipse web tools platform release 3.18</title>
+	</head>
+	<body>
+		<h1>WTP 3.18</h1>
+		<h2>Status as of 2020-06-17</h2>
+		<p>
+			WTP 3.18 was officially released on June 17, 2020, as part of the
+			Eclipse IDE 2020-06.
+			Users of Eclipse should use the 2020-06 Update Site,
+			<a href="https://download.eclipse.org/releases/2020-06/">https://download.eclipse.org/releases/2020-06/</a>
+			,
+			to install WTP 3.18, or
+			<a href="https://download.eclipse.org/releases/latest/">https://download.eclipse.org/releases/latest/</a>
+			to always have the latest. The next release, WTP 3.19, will be part of
+			the simultaneous release in September.
+		</p>
+		<ul>
+					<li>Download WTP as part of a complete Eclipse <a href="https://www.eclipse.org/downloads/packages/release/2020-06/r">package</a>. WTP is featured in the Eclipse IDE for <a href="https://www.eclipse.org/downloads/packages/release/2020-06/r/eclipse-ide-enterprise-java-developers-includes-incubating-components">Enterprise Java</a>.</li>
+					<li>Read the <a href="https://wiki.eclipse.org/Category:New_Help_for_Old_Friends">adopter migration documentation</a></li>
+					<li>Find WTP in the <a href="https://marketplace.eclipse.org/user/nitind/listings">Eclipse Marketplace</a></li>
+<!--
+					<li><a href="http://download.eclipse.org/webtools/downloads/">Download</a> the final WTP 3.18 built P2 Update Site now</li>
+          <li>Browse the <a href="http://help.eclipse.org/2019-09/topic/org.eclipse.wst.doc.user/topics/overview.html?cp=96" target="_top">Web Tools Platform User Guide</a></li>
+-->
+					<li>Read the <a href="https://wiki.eclipse.org/WTP_FAQ">FAQ</a></li>
+					<li>Read the <a href="https://wiki.eclipse.org/WTP_Tomcat_FAQ">WTP and Apache Tomcat FAQ</a></li>
+            <!--  <h3><a href="contributorrecognition.html">Recognition of Contributors</a></h3> -->
+            <!--
+             <h2>Press Coverage for WTP 3.18</h2>
+             <h3><a href=""  target="_top">title</a>, <i>source</i></h3>
+             -->
+		</ul>
+	<!--
+		<h2>
+			<a name="new-noteworthy" />
+			New and Noteworthy
+		</h2>
+		<table border="0" cellpadding="10" cellspacing="10" style="border-spacing:10px; border-collapse: separate">
+			<tbody>
+				<tr>
+					<td align="right" valign="top" width="15%">
+						<b>Miscellaneous</b>
+					</td>
+					<td align="left" valign="top" width="85%">
+					The Snippets View and JSP Java Search functionalities have been restored. The latter also has
+					improved performance.
+					</td>
+				</tr>
+			</tbody>
+		</table>
+	-->
+		<h2><a name="what-is-fixed" />New &amp; Noteworthy</h2>
+		Check out what's <a href="NewAndNoteworthy/">New and Noteworthy</a> in this release
+		<h2><a name="what-is-fixed" />What is Fixed</h2>
+		<p>Fixed <a href="https://bugs.eclipse.org/bugs/buglist.cgi?classification=WebTools&amp;query_format=advanced&amp;target_milestone=3.18&amp;target_milestone=3.18%20M1&amp;target_milestone=3.18%20M2&amp;target_milestone=3.18%20M3&amp;target_milestone=3.18%20RC1&amp;target_milestone=3.18%20RC2&amp;target_milestone=3.18.0">list</a>/<a
+		href="https://bugs.eclipse.org/bugs/report.cgi?x_axis_field=bug_severity&amp;y_axis_field=product&amp;no_redirect=1&amp;query_format=report-table&amp;classification=WebTools&amp;target_milestone=3.18&amp;target_milestone=3.18+M1&amp;target_milestone=3.18+M2&amp;target_milestone=3.18+M3&amp;target_milestone=3.18+RC1&amp;target_milestone=3.18+RC2&amp;target_milestone=3.18.0&amp;format=table&amp;action=wrap">table</a>.</p>
+		<p>Adopters should consult the <a href="https://wiki.eclipse.org/Category:New_Help_for_Old_Friends">migration</a> information for potentially breaking changes.</p>
+
+		<h2>
+			<a name="reported-problems" />
+			Reported and Known Problems
+		</h2>
+		<p>
+			All reported problems are recorded in the Eclipse Bugzilla
+			system under:
+			<ul>
+				<li>
+					Classification =
+					<code>WebTools</code>
+				</li>
+				<li>
+					Status =
+					<code>NEW</code>
+					or
+					<code>ASSIGNED</code>
+					or
+					<code>REOPENED</code>
+				</li>
+			</ul>
+		</p>
+		<a href="https://bugs.eclipse.org/bugs/buglist.cgi?bug_status=NEW&amp;bug_status=ASSIGNED&amp;bug_status=REOPENED&amp;bug_status=UNCONFIRMED&amp;classification=WebTools&amp;order=bugs.bug_id%20desc">All reported problems</a>
+		<p>Check for suggested workarounds in the bug report comments. Remember: <b>bugs that aren't reported have little chance of being fixed.</b><!--Here are more specific items:--></p>
+
+		<!--
+		<table cellpadding="3%" >
+
+		<tr>
+			<td><a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=number">number</a></td>
+			<td> title </td>
+		</tr>
+		</table>
+		-->
+	</body>
+</html>
