diff --git a/README.markdown b/README.markdown
index 1e762da..3245ddd 100644
--- a/README.markdown
+++ b/README.markdown
@@ -17,13 +17,53 @@
     under the License.
 -->
 
-Apache Allura
-=============
+<img src="https://allura.apache.org/theme/img/logo_black.png" alt="Apache Allura Logo" width="64" /> 
+
+# Apache Allura
+
+[![Build Status](https://builds.apache.org/buildStatus/icon?job=Allura)](https://builds.apache.org/job/Allura)
 
 Allura is an open source implementation of a software "forge", a web site that manages source code repositories, bug reports, discussions, mailing lists, wiki pages, blogs and more for any number of individual projects.
 
-To install Allura, see `Allura/docs/getting_started/installation.rst` or <https://forge-allura.apache.org/docs/getting_started/installation.html>.
+Allura is written in Python and leverages a great many existing Python packages (see requirements.txt and friends).  It comes with tests which we run with [nose](https://nose.readthedocs.org/en/latest/).  It is extensible in several ways, most importantly via the notion of "tools" based on `allura.app.Application`; but also with [themes, authentication, and various other pluggable-APIs](https://forge-allura.apache.org/docs/extending.html).
 
 Website: <https://allura.apache.org/>
 
-To find more documentation, ask a question, file a bug, or contribute a patch, see the links on our website.  If you're not sure where to start, join the mailing list and ask.
+## Table of Contents
+
+- [Installation](#install)
+- [Usage](#usage)
+- [Contribute](#contribute)
+- [Quick Links](#quick-links)
+
+## Install
+
+Before hacking on Allura, you’ll need to get an Allura instance up and running so you can see and test the changes you make. You can install Allura from scratch, or by using our Docker container images. Instructions for these approaches can be found here:
+
+- [Install from scratch](https://forge-allura.apache.org/docs/getting_started/installation.html#step-by-step-install)
+- [Install using Docker](https://forge-allura.apache.org/docs/getting_started/installation.html#docker-install)
+
+To install Allura, see `Allura/docs/getting_started/installation.rst` or <https://forge-allura.apache.org/docs/getting_started/installation.html>.
+
+
+
+## Usage
+
+You can learn about using Allura, configuring neighborhoods, managing projects and it's tools see `Allura/docs/getting_started/using.rst` or <https://forge-allura.apache.org/docs/getting_started/using.html> 
+
+## Contribute
+
+Apache Allura is an effort _for_ the community: an open source platform for sharing development.  We think it should be _of_ the community as well. We want to encourage community involvement in development, testing and design.  We do that with a public git repo, a bug tracker, a discussion list and an IRC channel.
+
+Developers interested in hacking on Allura or its components should see `Allura/docs/docs/development/contributing.rst` or <https://forge-allura.apache.org/docs/development/contributing.html>.
+
+You can get in touch with other Allura developers on the developer mailing list ([dev@allura.apache.org](https://mail-archives.apache.org/mod_mbox/allura-dev/)) or in the [#allura](https://webchat.freenode.net/?channels=#allura) channel on the Freenode IRC network.
+
+To find more documentation, ask a question, file a bug, or contribute a patch, see the links on our website(<https://allura.apache.org/>).  If you're not sure where to start, join the mailing list and ask.
+
+## Quick Links
+- [Forge Allura](https://forge-allura.apache.org/p/allura/)
+- [Git Repo](https://forge-allura.apache.org/p/allura/git/)
+- [Wiki](https://forge-allura.apache.org/p/allura/wiki/)
+- [Tickets](https://forge-allura.apache.org/p/allura/tickets/)
+- [Documentation](https://forge-allura.apache.org/docs/)
