diff --git a/docs/source/overview.html b/docs/source/overview.html
new file mode 100644
index 0000000..c0b6ea2
--- /dev/null
+++ b/docs/source/overview.html
@@ -0,0 +1,118 @@
+<!DOCTYPE html>
+<html lang="en">
+  <head>
+    <meta charset="utf-8">
+    <title>DevStack - Overview</title>
+    <meta name="description" content="">
+    <meta name="author" content="">
+
+    <!-- Le HTML5 shim, for IE6-8 support of HTML elements -->
+    <!--[if lt IE 9]>
+      <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
+    <![endif]-->
+
+    <!-- Le styles -->
+    <link href="assets/css/bootstrap.css" rel="stylesheet">
+    <link href="assets/css/local.css" rel="stylesheet">
+    <style type="text/css">
+      body { padding-top: 60px; }
+      dd { padding: 10px; }
+    </style>
+    
+    <!-- Le javascripts -->
+    <script src="assets/js/jquery-1.7.1.min.js" type="text/javascript" charset="utf-8"></script>
+    <script src="assets/js/bootstrap.js" type="text/javascript" charset="utf-8"></script>
+  </head>
+
+  <body>
+
+    <div class="navbar navbar-fixed-top">
+      <div class="navbar-inner">
+        <div class="container">
+          <a class="brand" href="/">DevStack</a>
+          <ul class="nav pull-right">
+            <li><a href="overview.html">Overview</a></li>
+            <li><a href="changes.html">Changes</a></li>
+            <li><a href="faq.html">FAQ</a></li>
+            <li><a href="http://github.com/openstack-dev/devstack">GitHub</a></li>
+            <li><a href="https://review.openstack.org/#/q/status:open+project:openstack-dev/devstack,n,z">Gerrit</a></li>
+          </ul>
+        </div>
+      </div>
+    </div>
+
+    <div class="container" id="home">
+      
+      <section id="overview" class="span12">
+
+        <div class='row pull-left'>
+          <h2>Overview <small>DevStack from a cloud-height view</small></h2>
+          <p>DevStack is not and has never been intended to be a general OpenStack installer.  It has evolved to support a large number of configuration options and alternative platforms and support services.  However, that evolution has grown well beyond what was originally intended and the majority of configuration combinations are rarely, if ever, tested.  DevStack was never meant to be everything to everyone and can not continue in that direction.</p>
+          <p>Below is a list of what is specifically is supported (read that as "tested and assumed to work") going forward.</p>
+
+          <h2>Supported Components</h2>
+
+          <h3>Base OS</h3>
+          <p><em>The OpenStack Technical Committee (TC) has defined the current CI strategy to include the latest Ubuntu release and the latest RHEL release (for Python 2.6 testing).</em></p>
+          <ul>
+            <li>Ubuntu: current LTS release plus current development release</li>
+            <li>Fedora: current release plus previous release</li>
+            <li>RHEL: current major release</li>
+            <li>Other OS platforms may continue to be included but the maintenance of those platforms shall not be assumed simply due to their presence.  Having a listed point-of-contact for each additional OS will greatly increase its chance of being well-maintained.</li>
+            <li>Patches for Ubuntu and/or Fedora will not be held up due to side-effects on other OS platforms.</li>
+          </ul>
+
+          <h3>Databases</h3>
+          <p><em>As packaged by the host OS</em></p>
+          <ul>
+            <li>MySQL</li>
+            <li>PostgreSQL</li>
+          </ul>
+
+          <h3>Queues</h3>
+          <p><em>As packaged by the host OS</em></p>
+          <ul>
+            <li>Rabbit</li>
+            <li>Qpid</li>
+<!--
+            <li>ZeroMQ</li>
+-->
+          </ul>
+
+          <h3>Web Server</h3>
+          <p><em>As packaged by the host OS</em></p>
+          <ul>
+            <li>Apache</li>
+          </ul>
+
+          <h3>OpenStack Network</h3>
+          <p><em>Default to Nova Network, optionally use Neutron</em></p>
+          <ul>
+            <li>Nova Network: FlatDHCP</li>
+            <li>Neutron: A basic configuration approximating the original FlatDHCP mode using linuxbridge or OpenVSwitch.</li>
+          </ul>
+
+          <h3>Services</h3>
+          <p>The default services configured by DevStack are Identity (Keystone), Object Storage (Swift), Image Storage (Glance), Block Storage (Cinder), Compute (Nova), Network (Nova), Dashboard (Horizon)</p>
+          <p>Additional services not included directly in DevStack can be tied in to <code>stack.sh</code> using the <a href="plugins.html">plugin mechanism</a> to call scripts that perform the configuration and startup of the service.</p>
+
+          <h3>Node Configurations</h3>
+          <ul>
+            <li>single node</li>
+            <li>multi-node is not tested regularly by the core team, and even then only minimal configurations are reviewed</li>
+          </ul>
+
+          <h3>Exercises</h3>
+          <p>The DevStack exercise scripts have been replaced as integration and gating test with Tempest.  They will continue to be maintained as they are valuable as demonstrations of using OpenStack from the command line and for quick operational testing.</p>
+
+        </div>        
+
+      </section>
+
+      <footer>
+        <p>&copy; Openstack Foundation 2011-2014 &mdash; An <a href="https://www.openstack.org/">OpenStack</a> <a href="https://wiki.openstack.org/wiki/Programs">program</a></p>
+      </footer>
+
+    </div> <!-- /container -->
+  </body>
+</html>
