diff --git a/maven-site.vm b/maven-site.vm
new file mode 100644
index 0000000..85e5ccd
--- /dev/null
+++ b/maven-site.vm
@@ -0,0 +1,35 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+  <head>
+    <title>Apache Felix</title>
+    <link rel="stylesheet" href="$relativePath/css/site.css" type="text/css" media="all" />
+    <link rel="stylesheet" href="$relativePath/css/print.css" type="text/css" media="print" />
+    <meta http-equiv="Content-Type" content="text/html; charset=${outputEncoding}" />
+  </head>
+  <body>
+    <div class="title">
+      <img alt="Apache Felix" src="$relativePath/images/apache-felix.png" align="left" /><img alt="Logo" src="$relativePath/images/felix-logo.jpg" align="right" />
+    </div>
+    <div class="menu">
+      <ul>
+        <li><a href="http://incubator.apache.org/felix/index.html">home</a></li>
+        <li><a href="http://cwiki.apache.org/FELIX/about.html">about</a></li>
+        <li><a href="http://cwiki.apache.org/FELIX/status.html">status</a></li>
+        <li><a href="http://cwiki.apache.org/FELIX/license.html">license</a></li>
+        <li><a href="http://cwiki.apache.org/FELIX/downloads.html">downloads</a></li>
+        <li><a href="http://cwiki.apache.org/FELIX/documentation.html">documentation</a></li>
+        <li><a href="http://cwiki.apache.org/FELIX/committers.html">committers</a></li>
+        <li><a href="http://cwiki.apache.org/FELIX/mailinglists.html">mailing lists</a></li>
+        <li><a href="http://cwiki.apache.org/FELIX/faq.html">FAQ</a></li>
+        <li><a href="http://cwiki.apache.org/FELIX/roadmap.html">roadmap</a></li>
+        <li><a href="http://cwiki.apache.org/FELIX/sourcecode.html">source code</a></li>
+        <li><a href="http://cwiki.apache.org/FELIX/codingstandards.html">coding standards</a></li>
+        <li><a href="http://cwiki.apache.org/FELIX/issuetracking.html">issue tracking</a></li>
+        <li><a href="http://cwiki.apache.org/FELIX/dependencies.html">dependencies</a></li>
+      </ul>
+    </div>
+    <div class="main">
+$bodyContent
+    </div>
+  </body>
+</html>
diff --git a/pom.xml b/pom.xml
index aea7c7f..91d431d 100644
--- a/pom.xml
+++ b/pom.xml
@@ -3,8 +3,47 @@
   <groupId>org.apache.felix</groupId>
   <artifactId>felix</artifactId>
   <packaging>pom</packaging>
-  <name>Apache Felix (parent)</name>
+  <name>Apache Felix</name>
   <version>0.8.0-SNAPSHOT</version>
+  <url>http://incubator.apache.org/felix/</url>
+  <description>Apache felix is an OSGi implementation.</description>
+
+  <issueManagement>
+    <system>Jira</system>
+    <url>http://issues.apache.org/jira/browse/FELIX</url>
+  </issueManagement>  
+
+  <mailingLists>
+    <mailingList>
+      <name>Felix Dev</name>
+      <subscribe>felix-dev-subscribe@incubator.apache.org</subscribe>
+      <unsubscribe>felix-dev-unsubscribe@incubator.apache.org</unsubscribe>
+      <post>-</post>
+      <archive>http://www.mail-archive.com/felix-dev%40incubator.apache.org/</archive>
+    </mailingList>
+    <mailingList>
+      <name>Felix Commits</name>
+      <subscribe>felix-commits-subscribe@incubator.apache.org</subscribe>
+      <unsubscribe>felix-commits-unsubscribe@incubator.apache.org</unsubscribe>
+      <post>-</post>
+      <archive>http://www.mail-archive.com/felix-commits%40incubator.apache.org/</archive>
+    </mailingList>
+  </mailingLists>
+
+  <licenses>
+    <license>
+      <name>The Apache Software License, Version 2.0</name>
+      <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
+      <distribution>repo</distribution>
+    </license>
+  </licenses>
+  
+  <scm>
+    <connection>scm:svn:http://svn.apache.org/repos/asf/incubator/felix</connection>
+    <developerConnection>scm:svn:http://svn.apache.org/repos/asf/incubator/felix</developerConnection>
+    <url>http://cvs.apache.org/viewcvs.cgi/incubator/felix/?root=Apache-SVN</url>
+  </scm>
+        
   <modules>
     <module>tools/maven2/maven-osgi-plugin</module>
     <module>javax.servlet</module>
@@ -59,6 +98,10 @@
   </repositories>
 
   <distributionManagement>
+    <site>
+      <id>felix website</id>
+      <url>file:///Users/marcel/tmp/site/</url>
+    </site>
     <snapshotRepository>
       <name>Apache Snapshots</name>
       <id>apache.snapshots</id>
@@ -123,8 +166,44 @@
     <plugins>
       <plugin>
         <groupId>org.apache.maven.plugins</groupId>
-        <artifactId>maven-project-info-reports-plugin</artifactId>
+        <artifactId>maven-site-plugin</artifactId>
+        <configuration>
+          <templateDirectory>${user.dir}</templateDirectory>
+          <template>maven-site.vm</template>
+        </configuration>
       </plugin>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-surefire-plugin</artifactId>
+      </plugin>
+      <plugin>
+        <groupId>org.codehaus.mojo</groupId>
+        <artifactId>jxr-maven-plugin</artifactId>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-project-info-reports-plugin</artifactId>
+        <reportSets>
+          <reportSet>
+            <reports>
+              <report>index</report>
+              <report>dependencies</report>
+              <report>project-team</report>
+              <report>mailing-list</report>
+              <report>issue-tracking</report>
+              <report>license</report>
+              <report>scm</report>
+            </reports>
+          </reportSet>
+        </reportSets>
+      </plugin>
+      <!--plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-javadoc-plugin</artifactId>
+        <configuration>
+          <aggregate>true</aggregate>
+        </configuration> 
+      </plugin-->
     </plugins>
   </reporting>
 </project>
diff --git a/src/site/resources/css/site.css b/src/site/resources/css/site.css
new file mode 100644
index 0000000..dfff9f5
--- /dev/null
+++ b/src/site/resources/css/site.css
@@ -0,0 +1,5 @@
+.title { position: absolute; left: 1em; right: 1em; top: 10px; height: 52px; }
+.menu { position: absolute; top: 65px; left: 1em; width: 8em; }
+.menu ul { list-style: none; padding-left: 0pt}
+.main { position: absolute; top: 65px; left: 10em; right: 1em; }
+
diff --git a/src/site/resources/images/apache-felix.png b/src/site/resources/images/apache-felix.png
new file mode 100644
index 0000000..5d9cbd8
--- /dev/null
+++ b/src/site/resources/images/apache-felix.png
Binary files differ
diff --git a/src/site/resources/images/felix-logo.jpg b/src/site/resources/images/felix-logo.jpg
new file mode 100644
index 0000000..b1303be
--- /dev/null
+++ b/src/site/resources/images/felix-logo.jpg
Binary files differ
diff --git a/src/site/site.xml b/src/site/site.xml
deleted file mode 100644
index 857d174..0000000
--- a/src/site/site.xml
+++ /dev/null
@@ -1,32 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<project name="Apache Felix">
-  <bannerLeft>
-    <name>Apache Felix</name>
-    <href>http://incubator.apache.org/felix/</href>
-  </bannerLeft>
-  <body>
-    <links>
-      <item name="Apache" href="http://www.apache.org/" />
-      <item name="Wiki" href="#"/>
-    </links>
-
-    <menu name="Apache Felix">
-      <item name="Introduction" href="index.html"/>
-      <item name="Download" href="download.html"/>
-      <item name="Release Notes" href="release-notes.html" />
-      <item name="General Information" href="about.html"/>
-      <item name="Road Map" href="roadmap.html" />
-    </menu>
-
-	<menu ref="modules" />
-	
-    <menu ref="reports" />
-
-    <menu name="Test Reports">
-      <item name="Unit tests" href="surefire-report.html" />
-    </menu>
-
-    ${reports}
-
-  </body>
-</project>
