[Backport] Front Matter header needs to be on the first line for md to be rendered properly by jekyll (#6736)

* Front Matter header needs to be on the first line for md to be rendered properly by jekyll (#6733)

* fixup parquet.md
diff --git a/docs/content/comparisons/druid-vs-elasticsearch.md b/docs/content/comparisons/druid-vs-elasticsearch.md
index 015200e..da0a0c7 100644
--- a/docs/content/comparisons/druid-vs-elasticsearch.md
+++ b/docs/content/comparisons/druid-vs-elasticsearch.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Druid vs Elasticsearch"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Druid vs Elasticsearch"
----
 # Druid vs Elasticsearch
 
 We are not experts on search systems, if anything is incorrect about our portrayal, please let us know on the mailing list or via some other means.
diff --git a/docs/content/comparisons/druid-vs-key-value.md b/docs/content/comparisons/druid-vs-key-value.md
index d8ccd50..49cb75b 100644
--- a/docs/content/comparisons/druid-vs-key-value.md
+++ b/docs/content/comparisons/druid-vs-key-value.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Druid vs. Key/Value Stores (HBase/Cassandra/OpenTSDB)"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Druid vs. Key/Value Stores (HBase/Cassandra/OpenTSDB)"
----
 # Druid vs. Key/Value Stores (HBase/Cassandra/OpenTSDB)
 
 Druid is highly optimized for scans and aggregations, it supports arbitrarily deep drill downs into data sets. This same functionality 
diff --git a/docs/content/comparisons/druid-vs-kudu.md b/docs/content/comparisons/druid-vs-kudu.md
index 7f8fc73..2af1496 100644
--- a/docs/content/comparisons/druid-vs-kudu.md
+++ b/docs/content/comparisons/druid-vs-kudu.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Druid vs Kudu"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Druid vs Kudu"
----
 # Druid vs Kudu
 
 Kudu's storage format enables single row updates, whereas updates to existing Druid segments requires recreating the segment, so theoretically  
diff --git a/docs/content/comparisons/druid-vs-redshift.md b/docs/content/comparisons/druid-vs-redshift.md
index 103ecc3..de74a69 100644
--- a/docs/content/comparisons/druid-vs-redshift.md
+++ b/docs/content/comparisons/druid-vs-redshift.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Druid vs Redshift"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Druid vs Redshift"
----
 # Druid vs Redshift
 
 ### How does Druid compare to Redshift?
diff --git a/docs/content/comparisons/druid-vs-spark.md b/docs/content/comparisons/druid-vs-spark.md
index 07f16fa..5df91d9 100644
--- a/docs/content/comparisons/druid-vs-spark.md
+++ b/docs/content/comparisons/druid-vs-spark.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Druid vs Spark"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Druid vs Spark"
----
 # Druid vs Spark
 
 Druid and Spark are complementary solutions as Druid can be used to accelerate OLAP queries in Spark.
diff --git a/docs/content/comparisons/druid-vs-sql-on-hadoop.md b/docs/content/comparisons/druid-vs-sql-on-hadoop.md
index f867c24..e75261d 100644
--- a/docs/content/comparisons/druid-vs-sql-on-hadoop.md
+++ b/docs/content/comparisons/druid-vs-sql-on-hadoop.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Druid vs SQL-on-Hadoop"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Druid vs SQL-on-Hadoop"
----
 # Druid vs SQL-on-Hadoop (Impala/Drill/Spark SQL/Presto)
 
 SQL-on-Hadoop engines provide an
diff --git a/docs/content/configuration/index.md b/docs/content/configuration/index.md
index 7588ae9..465417a 100644
--- a/docs/content/configuration/index.md
+++ b/docs/content/configuration/index.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Configuration Reference"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Configuration Reference"
----
 # Configuration Reference
 
 This page documents all of the configuration properties for each Druid service type.
diff --git a/docs/content/configuration/logging.md b/docs/content/configuration/logging.md
index 10a6769..97de828 100644
--- a/docs/content/configuration/logging.md
+++ b/docs/content/configuration/logging.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Logging"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Logging"
----
 # Logging
 
 Druid nodes will emit logs that are useful for debugging to the console. Druid nodes also emit periodic metrics about their state. For more about metrics, see [Configuration](../configuration/index.html#enabling-metrics). Metric logs are printed to the console by default, and can be disabled with `-Ddruid.emitter.logging.logLevel=debug`.
diff --git a/docs/content/configuration/realtime.md b/docs/content/configuration/realtime.md
index d5e3ba8..1f8df24 100644
--- a/docs/content/configuration/realtime.md
+++ b/docs/content/configuration/realtime.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Realtime Node Configuration"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Realtime Node Configuration"
----
 # Realtime Node Configuration
 
 For general Realtime Node information, see [here](../design/realtime.html).
diff --git a/docs/content/dependencies/cassandra-deep-storage.md b/docs/content/dependencies/cassandra-deep-storage.md
index 3ba1791..681d298 100644
--- a/docs/content/dependencies/cassandra-deep-storage.md
+++ b/docs/content/dependencies/cassandra-deep-storage.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Cassandra Deep Storage"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Cassandra Deep Storage"
----
 # Cassandra Deep Storage
 
 ## Introduction
diff --git a/docs/content/dependencies/deep-storage.md b/docs/content/dependencies/deep-storage.md
index b75d1be..8d12d49 100644
--- a/docs/content/dependencies/deep-storage.md
+++ b/docs/content/dependencies/deep-storage.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Deep Storage"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Deep Storage"
----
 # Deep Storage
 
 Deep storage is where segments are stored.  It is a storage mechanism that Druid does not provide.  This deep storage infrastructure defines the level of durability of your data, as long as Druid nodes can see this storage infrastructure and get at the segments stored on it, you will not lose data no matter how many Druid nodes you lose.  If segments disappear from this storage layer, then you will lose whatever data those segments represented.
diff --git a/docs/content/dependencies/metadata-storage.md b/docs/content/dependencies/metadata-storage.md
index d50fb05..b831823 100644
--- a/docs/content/dependencies/metadata-storage.md
+++ b/docs/content/dependencies/metadata-storage.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Metadata Storage"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Metadata Storage"
----
 # Metadata Storage
 
 The Metadata Storage is an external dependency of Druid. Druid uses it to store
diff --git a/docs/content/dependencies/zookeeper.md b/docs/content/dependencies/zookeeper.md
index c1b6bb1..b1ceeb5 100644
--- a/docs/content/dependencies/zookeeper.md
+++ b/docs/content/dependencies/zookeeper.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "ZooKeeper"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "ZooKeeper"
----
 # ZooKeeper
 
 Druid uses [ZooKeeper](http://zookeeper.apache.org/) (ZK) for management of current cluster state. The operations that happen over ZK are
diff --git a/docs/content/design/auth.md b/docs/content/design/auth.md
index 62406b8..c8b7a8c 100644
--- a/docs/content/design/auth.md
+++ b/docs/content/design/auth.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Authentication and Authorization"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Authentication and Authorization"
----
 # Authentication and Authorization
 
 |Property|Type|Description|Default|Required|
diff --git a/docs/content/design/broker.md b/docs/content/design/broker.md
index 7a35cd4..ff90ffe 100644
--- a/docs/content/design/broker.md
+++ b/docs/content/design/broker.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Broker"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Broker"
----
 # Broker
 
 ### Configuration
diff --git a/docs/content/design/coordinator.md b/docs/content/design/coordinator.md
index e759357..a858025 100644
--- a/docs/content/design/coordinator.md
+++ b/docs/content/design/coordinator.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Coordinator Node"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Coordinator Node"
----
 # Coordinator Node
 
 ### Configuration
diff --git a/docs/content/design/historical.md b/docs/content/design/historical.md
index 06f8f20..fa7e79f 100644
--- a/docs/content/design/historical.md
+++ b/docs/content/design/historical.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Historical Node"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Historical Node"
----
 # Historical Node
 
 ### Configuration
diff --git a/docs/content/design/index.md b/docs/content/design/index.md
index 4bcb3bb..29c1aee 100644
--- a/docs/content/design/index.md
+++ b/docs/content/design/index.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Design"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,11 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Design"
----
-
 # What is Druid?<a id="what-is-druid"></a>
 
 Druid is a data store designed for high-performance slice-and-dice analytics
diff --git a/docs/content/design/indexing-service.md b/docs/content/design/indexing-service.md
index b23f9c6..f11ab5e 100644
--- a/docs/content/design/indexing-service.md
+++ b/docs/content/design/indexing-service.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Indexing Service"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Indexing Service"
----
 # Indexing Service
 
 The indexing service is a highly-available, distributed service that runs indexing related tasks. 
diff --git a/docs/content/design/middlemanager.md b/docs/content/design/middlemanager.md
index b3e5d84..8d0f47f 100644
--- a/docs/content/design/middlemanager.md
+++ b/docs/content/design/middlemanager.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "MiddleManager Node"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "MiddleManager Node"
----
 # MiddleManager Node
 
 ### Configuration
diff --git a/docs/content/design/overlord.md b/docs/content/design/overlord.md
index 92c394b..d96c98d 100644
--- a/docs/content/design/overlord.md
+++ b/docs/content/design/overlord.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Overlord Node"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Overlord Node"
----
 # Overlord Node
 
 ### Configuration
diff --git a/docs/content/design/peons.md b/docs/content/design/peons.md
index 16fdff1..7008a10 100644
--- a/docs/content/design/peons.md
+++ b/docs/content/design/peons.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Peons"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Peons"
----
 # Peons
 
 ### Configuration
diff --git a/docs/content/design/plumber.md b/docs/content/design/plumber.md
index e3c1cfa..a4dd6ee 100644
--- a/docs/content/design/plumber.md
+++ b/docs/content/design/plumber.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Druid Plumbers"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Druid Plumbers"
----
 # Druid Plumbers
 
 The plumber handles generated segments both while they are being generated and when they are "done". This is also technically a pluggable interface and there are multiple implementations. However, plumbers handle numerous complex details, and therefore an advanced understanding of Druid is recommended before implementing your own.
diff --git a/docs/content/design/realtime.md b/docs/content/design/realtime.md
index 3a15c1d..f29327e 100644
--- a/docs/content/design/realtime.md
+++ b/docs/content/design/realtime.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Real-time Node"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Real-time Node"
----
 # Real-time Node
 
 <div class="note info">
diff --git a/docs/content/design/segments.md b/docs/content/design/segments.md
index d1b8e65..7fe7e6e 100644
--- a/docs/content/design/segments.md
+++ b/docs/content/design/segments.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Segments"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Segments"
----
 # Segments
 
 Druid stores its index in *segment files*, which are partitioned by
diff --git a/docs/content/development/build.md b/docs/content/development/build.md
index f0bd6e8..e1affc8 100644
--- a/docs/content/development/build.md
+++ b/docs/content/development/build.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Build from Source"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Build from Source"
----
 # Build from Source
 
 You can build Druid directly from source. Please note that these instructions are for building the latest stable version of Druid.
diff --git a/docs/content/development/experimental.md b/docs/content/development/experimental.md
index 760ea0d..70abd6d 100644
--- a/docs/content/development/experimental.md
+++ b/docs/content/development/experimental.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Experimental Features"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Experimental Features"
----
 # Experimental Features
 
 Experimental features are features we have developed but have not fully tested in a production environment. If you choose to try them out, there will likely be edge cases that we have not covered. We would love feedback on any of these features, whether they are bug reports, suggestions for improvement, or letting us know they work as intended.
diff --git a/docs/content/development/extensions-contrib/ambari-metrics-emitter.md b/docs/content/development/extensions-contrib/ambari-metrics-emitter.md
index 6357ca3..a498cb8 100644
--- a/docs/content/development/extensions-contrib/ambari-metrics-emitter.md
+++ b/docs/content/development/extensions-contrib/ambari-metrics-emitter.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Ambari Metrics Emitter"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Ambari Metrics Emitter"
----
 # Ambari Metrics Emitter
 
 To use this extension, make sure to [include](../../operations/including-extensions.html) `ambari-metrics-emitter` extension.
diff --git a/docs/content/development/extensions-contrib/azure.md b/docs/content/development/extensions-contrib/azure.md
index bea6b71..5ebd42c 100644
--- a/docs/content/development/extensions-contrib/azure.md
+++ b/docs/content/development/extensions-contrib/azure.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Microsoft Azure"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Microsoft Azure"
----
 # Microsoft Azure
 
 To use this extension, make sure to [include](../../operations/including-extensions.html) `druid-azure-extensions` extension.
diff --git a/docs/content/development/extensions-contrib/cassandra.md b/docs/content/development/extensions-contrib/cassandra.md
index b1e3c9e..0f5d57e 100644
--- a/docs/content/development/extensions-contrib/cassandra.md
+++ b/docs/content/development/extensions-contrib/cassandra.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Apache Cassandra"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Apache Cassandra"
----
 # Apache Cassandra
 
 To use this extension, make sure to [include](../../operations/including-extensions.html) `druid-cassandra-storage` extension.
diff --git a/docs/content/development/extensions-contrib/cloudfiles.md b/docs/content/development/extensions-contrib/cloudfiles.md
index 363507d..b04b5d9 100644
--- a/docs/content/development/extensions-contrib/cloudfiles.md
+++ b/docs/content/development/extensions-contrib/cloudfiles.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Rackspace Cloud Files"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Rackspace Cloud Files"
----
 # Rackspace Cloud Files
 
 ## Deep Storage
diff --git a/docs/content/development/extensions-contrib/distinctcount.md b/docs/content/development/extensions-contrib/distinctcount.md
index 77e6c39..350007d 100644
--- a/docs/content/development/extensions-contrib/distinctcount.md
+++ b/docs/content/development/extensions-contrib/distinctcount.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "DistinctCount Aggregator"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "DistinctCount Aggregator"
----
 # DistinctCount Aggregator
 
 To use this extension, make sure to [include](../../operations/including-extensions.html) the `druid-distinctcount` extension.
diff --git a/docs/content/development/extensions-contrib/google.md b/docs/content/development/extensions-contrib/google.md
index 4d587ec..d3225be 100644
--- a/docs/content/development/extensions-contrib/google.md
+++ b/docs/content/development/extensions-contrib/google.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Google Cloud Storage"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Google Cloud Storage"
----
 # Google Cloud Storage
 
 To use this extension, make sure to [include](../../operations/including-extensions.html) `druid-google-extensions` extension.
diff --git a/docs/content/development/extensions-contrib/graphite.md b/docs/content/development/extensions-contrib/graphite.md
index a50706a..569e1ce 100644
--- a/docs/content/development/extensions-contrib/graphite.md
+++ b/docs/content/development/extensions-contrib/graphite.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Graphite Emitter"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Graphite Emitter"
----
 # Graphite Emitter
 
 To use this extension, make sure to [include](../../operations/including-extensions.html) `graphite-emitter` extension.
diff --git a/docs/content/development/extensions-contrib/influx.md b/docs/content/development/extensions-contrib/influx.md
index 3446b48..65e5e8c 100644
--- a/docs/content/development/extensions-contrib/influx.md
+++ b/docs/content/development/extensions-contrib/influx.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "InfluxDB Line Protocol Parser"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "InfluxDB Line Protocol Parser"
----
 # InfluxDB Line Protocol Parser
 
 To use this extension, make sure to [include](../../operations/including-extensions.html) `druid-influx-extensions`.
diff --git a/docs/content/development/extensions-contrib/kafka-emitter.md b/docs/content/development/extensions-contrib/kafka-emitter.md
index 2ad9429..52026f1 100644
--- a/docs/content/development/extensions-contrib/kafka-emitter.md
+++ b/docs/content/development/extensions-contrib/kafka-emitter.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Kafka Emitter"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Kafka Emitter"
----
 # Kafka Emitter
 
 To use this extension, make sure to [include](../../operations/including-extensions.html) `kafka-emitter` extension.
diff --git a/docs/content/development/extensions-contrib/kafka-simple.md b/docs/content/development/extensions-contrib/kafka-simple.md
index 1aeeea8..5268b30 100644
--- a/docs/content/development/extensions-contrib/kafka-simple.md
+++ b/docs/content/development/extensions-contrib/kafka-simple.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Kafka Simple Consumer"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Kafka Simple Consumer"
----
 # Kafka Simple Consumer
 
 To use this extension, make sure to [include](../../operations/including-extensions.html) `druid-kafka-eight-simpleConsumer` extension.
diff --git a/docs/content/development/extensions-contrib/materialized-view.md b/docs/content/development/extensions-contrib/materialized-view.md
index 67fa154..01198a3 100644
--- a/docs/content/development/extensions-contrib/materialized-view.md
+++ b/docs/content/development/extensions-contrib/materialized-view.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Materialized View"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Materialized View"
----
 # Materialized View
 
 To use this feature, make sure to only load materialized-view-selection on broker and load materialized-view-maintenance on overlord. In addtion, this feature currently requires a hadoop cluster.
diff --git a/docs/content/development/extensions-contrib/opentsdb-emitter.md b/docs/content/development/extensions-contrib/opentsdb-emitter.md
index 17a3f63..780436b 100644
--- a/docs/content/development/extensions-contrib/opentsdb-emitter.md
+++ b/docs/content/development/extensions-contrib/opentsdb-emitter.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "OpenTSDB Emitter"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "OpenTSDB Emitter"
----
 # OpenTSDB Emitter
 
 To use this extension, make sure to [include](../../operations/including-extensions.html) `opentsdb-emitter` extension.
diff --git a/docs/content/development/extensions-contrib/orc.md b/docs/content/development/extensions-contrib/orc.md
index 3674ec7..b5a56bb 100644
--- a/docs/content/development/extensions-contrib/orc.md
+++ b/docs/content/development/extensions-contrib/orc.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "ORC"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "ORC"
----
 # ORC
 
 To use this extension, make sure to [include](../../operations/including-extensions.html) `druid-orc-extensions`.
diff --git a/docs/content/development/extensions-contrib/parquet.md b/docs/content/development/extensions-contrib/parquet.md
index 91b3d82..c72e350 100644
--- a/docs/content/development/extensions-contrib/parquet.md
+++ b/docs/content/development/extensions-contrib/parquet.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Ingestion using Parquet format"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
----
-
 # Ingestion using Parquet format
 
 To use this extension, make sure to [include](../../operations/including-extensions.html) both `druid-avro-extensions` and `druid-parquet-extensions`.
diff --git a/docs/content/development/extensions-contrib/rabbitmq.md b/docs/content/development/extensions-contrib/rabbitmq.md
index a1bce50..2d55be1 100644
--- a/docs/content/development/extensions-contrib/rabbitmq.md
+++ b/docs/content/development/extensions-contrib/rabbitmq.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "RabbitMQ"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "RabbitMQ"
----
 # RabbitMQ
 
 To use this extension, make sure to [include](../../operations/including-extensions.html) `druid-rabbitmq` extension.
diff --git a/docs/content/development/extensions-contrib/redis-cache.md b/docs/content/development/extensions-contrib/redis-cache.md
index a446b4f..d7a006f 100644
--- a/docs/content/development/extensions-contrib/redis-cache.md
+++ b/docs/content/development/extensions-contrib/redis-cache.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Druid Redis Cache"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Druid Redis Cache"
----
 # Druid Redis Cache
 
 A cache implementation for Druid based on [Redis](https://github.com/antirez/redis).
diff --git a/docs/content/development/extensions-contrib/rocketmq.md b/docs/content/development/extensions-contrib/rocketmq.md
index c9c2e00..45016cd 100644
--- a/docs/content/development/extensions-contrib/rocketmq.md
+++ b/docs/content/development/extensions-contrib/rocketmq.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "RocketMQ"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "RocketMQ"
----
 # RocketMQ
 
 To use this extension, make sure to [include](../../operations/including-extensions.html) `druid-rocketmq` extension.
diff --git a/docs/content/development/extensions-contrib/sqlserver.md b/docs/content/development/extensions-contrib/sqlserver.md
index 99a9fac..af47868 100644
--- a/docs/content/development/extensions-contrib/sqlserver.md
+++ b/docs/content/development/extensions-contrib/sqlserver.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Microsoft SQLServer"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Microsoft SQLServer"
----
 # Microsoft SQLServer
 
 Make sure to [include](../../operations/including-extensions.html) `sqlserver-metadata-storage` as an extension.
diff --git a/docs/content/development/extensions-contrib/statsd.md b/docs/content/development/extensions-contrib/statsd.md
index e68fd7a..915fd7c 100644
--- a/docs/content/development/extensions-contrib/statsd.md
+++ b/docs/content/development/extensions-contrib/statsd.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "StatsD Emitter"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "StatsD Emitter"
----
 # StatsD Emitter
 
 To use this extension, make sure to [include](../../operations/including-extensions.html) `statsd-emitter` extension.
diff --git a/docs/content/development/extensions-contrib/thrift.md b/docs/content/development/extensions-contrib/thrift.md
index 284879b..bd9a378 100644
--- a/docs/content/development/extensions-contrib/thrift.md
+++ b/docs/content/development/extensions-contrib/thrift.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Thrift"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Thrift"
----
 # Thrift
 
 To use this extension, make sure to [include](../../operations/including-extensions.html) `druid-thrift-extensions`.
diff --git a/docs/content/development/extensions-contrib/time-min-max.md b/docs/content/development/extensions-contrib/time-min-max.md
index 6782042..e8143b4 100644
--- a/docs/content/development/extensions-contrib/time-min-max.md
+++ b/docs/content/development/extensions-contrib/time-min-max.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Timestamp Min/Max aggregators"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Timestamp Min/Max aggregators"
----
 # Timestamp Min/Max aggregators
 
 To use this extension, make sure to [include](../../operations/including-extensions.html) `druid-time-min-max`.
diff --git a/docs/content/development/extensions-core/approximate-histograms.md b/docs/content/development/extensions-core/approximate-histograms.md
index ae96d15..b8c899d 100644
--- a/docs/content/development/extensions-core/approximate-histograms.md
+++ b/docs/content/development/extensions-core/approximate-histograms.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Approximate Histogram aggregator"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Approximate Histogram aggregator"
----
 # Approximate Histogram aggregator
 
 Make sure to [include](../../operations/including-extensions.html) `druid-histogram` as an extension.
diff --git a/docs/content/development/extensions-core/avro.md b/docs/content/development/extensions-core/avro.md
index c8ba667..00e8469 100644
--- a/docs/content/development/extensions-core/avro.md
+++ b/docs/content/development/extensions-core/avro.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Avro"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Avro"
----
 # Avro
 
 This extension enables Druid to ingest and understand the Apache Avro data format. Make sure to [include](../../operations/including-extensions.html) `druid-avro-extensions` as an extension.
diff --git a/docs/content/development/extensions-core/bloom-filter.md b/docs/content/development/extensions-core/bloom-filter.md
index 1c861e4..8e88b5c 100644
--- a/docs/content/development/extensions-core/bloom-filter.md
+++ b/docs/content/development/extensions-core/bloom-filter.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Bloom Filter"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Bloom Filter"
----
 # Bloom Filter
 
 Make sure to [include](../../operations/including-extensions.html) `druid-bloom-filter` as an extension.
diff --git a/docs/content/development/extensions-core/datasketches-extension.md b/docs/content/development/extensions-core/datasketches-extension.md
index aec599c..32e45f9 100644
--- a/docs/content/development/extensions-core/datasketches-extension.md
+++ b/docs/content/development/extensions-core/datasketches-extension.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "DataSketches extension"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "DataSketches extension"
----
 # DataSketches extension
 
 Druid aggregators based on [datasketches](http://datasketches.github.io/) library. Sketches are data structures implementing approximate streaming mergeable algorithms. Sketches can be ingested from the outside of Druid or built from raw data at ingestion time. Sketches can be stored in Druid segments as additive metrics.
diff --git a/docs/content/development/extensions-core/datasketches-hll.md b/docs/content/development/extensions-core/datasketches-hll.md
index 783af1f..365ecd2 100644
--- a/docs/content/development/extensions-core/datasketches-hll.md
+++ b/docs/content/development/extensions-core/datasketches-hll.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "DataSketches HLL Sketch module"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "DataSketches HLL Sketch module"
----
 # DataSketches HLL Sketch module
 
 This module provides Druid aggregators for distinct counting based on HLL sketch from [datasketches](http://datasketches.github.io/) library. At ingestion time, this aggregator creates the HLL sketch objects to be stored in Druid segments. At query time, sketches are read and merged together. In the end, by default, you receive the estimate of the number of distinct values presented to the sketch. Also, you can use post aggregator to produce a union of sketch columns in the same row. 
diff --git a/docs/content/development/extensions-core/datasketches-quantiles.md b/docs/content/development/extensions-core/datasketches-quantiles.md
index 4b5fe83..ad495b1 100644
--- a/docs/content/development/extensions-core/datasketches-quantiles.md
+++ b/docs/content/development/extensions-core/datasketches-quantiles.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "DataSketches Quantiles Sketch module"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "DataSketches Quantiles Sketch module"
----
 # DataSketches Quantiles Sketch module
 
 This module provides Druid aggregators based on numeric quantiles DoublesSketch from [datasketches](http://datasketches.github.io/) library. Quantiles sketch is a mergeable streaming algorithm to estimate the distribution of values, and approximately answer queries about the rank of a value, probability mass function of the distribution (PMF) or histogram, cummulative distribution function (CDF), and quantiles (median, min, max, 95th percentile and such). See [Quantiles Sketch Overview](https://datasketches.github.io/docs/Quantiles/QuantilesOverview.html).
diff --git a/docs/content/development/extensions-core/datasketches-theta.md b/docs/content/development/extensions-core/datasketches-theta.md
index 8eca141..60e945f 100644
--- a/docs/content/development/extensions-core/datasketches-theta.md
+++ b/docs/content/development/extensions-core/datasketches-theta.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "DataSketches Theta Sketch module"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "DataSketches Theta Sketch module"
----
 # DataSketches Theta Sketch module
 
 This module provides Druid aggregators based on Theta sketch from [datasketches](http://datasketches.github.io/) library. Note that sketch algorithms are approximate; see details in the "Accuracy" section of the datasketches doc. 
diff --git a/docs/content/development/extensions-core/datasketches-tuple.md b/docs/content/development/extensions-core/datasketches-tuple.md
index 4cfa5a9..480b67e 100644
--- a/docs/content/development/extensions-core/datasketches-tuple.md
+++ b/docs/content/development/extensions-core/datasketches-tuple.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "DataSketches Tuple Sketch module"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "DataSketches Tuple Sketch module"
----
 # DataSketches Tuple Sketch module
 
 This module provides Druid aggregators based on Tuple sketch from [datasketches](http://datasketches.github.io/) library. ArrayOfDoublesSketch sketches extend the functionality of the count-distinct Theta sketches by adding arrays of double values associated with unique keys.
diff --git a/docs/content/development/extensions-core/druid-basic-security.md b/docs/content/development/extensions-core/druid-basic-security.md
index 6b80862..c812929 100644
--- a/docs/content/development/extensions-core/druid-basic-security.md
+++ b/docs/content/development/extensions-core/druid-basic-security.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Basic Security"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Basic Security"
----
 # Druid Basic Security
 
 This extension adds:
diff --git a/docs/content/development/extensions-core/druid-kerberos.md b/docs/content/development/extensions-core/druid-kerberos.md
index c74ab06..decd384 100644
--- a/docs/content/development/extensions-core/druid-kerberos.md
+++ b/docs/content/development/extensions-core/druid-kerberos.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Kerberos"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Kerberos"
----
 # Kerberos
 
 Druid Extension to enable Authentication for Druid Nodes using Kerberos.
diff --git a/docs/content/development/extensions-core/druid-lookups.md b/docs/content/development/extensions-core/druid-lookups.md
index 473109d..3379f94 100644
--- a/docs/content/development/extensions-core/druid-lookups.md
+++ b/docs/content/development/extensions-core/druid-lookups.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Cached Lookup Module"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Cached Lookup Module"
----
 # Cached Lookup Module
 
 <div class="note info">Please note that this is an experimental module and the development/testing still at early stage. Feel free to try it and give us your feedback.</div>
diff --git a/docs/content/development/extensions-core/examples.md b/docs/content/development/extensions-core/examples.md
index 02b22e6..bea6cf5 100644
--- a/docs/content/development/extensions-core/examples.md
+++ b/docs/content/development/extensions-core/examples.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Extension Examples"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Extension Examples"
----
 # Extension Examples
 
 ## TwitterSpritzerFirehose
diff --git a/docs/content/development/extensions-core/hdfs.md b/docs/content/development/extensions-core/hdfs.md
index e2fe62c..870d457 100644
--- a/docs/content/development/extensions-core/hdfs.md
+++ b/docs/content/development/extensions-core/hdfs.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "HDFS"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "HDFS"
----
 # HDFS
 
 Make sure to [include](../../operations/including-extensions.html) `druid-hdfs-storage` as an extension.
diff --git a/docs/content/development/extensions-core/kafka-eight-firehose.md b/docs/content/development/extensions-core/kafka-eight-firehose.md
index 2ab4122..83e80e5 100644
--- a/docs/content/development/extensions-core/kafka-eight-firehose.md
+++ b/docs/content/development/extensions-core/kafka-eight-firehose.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Kafka Eight Firehose"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Kafka Eight Firehose"
----
 # Kafka Eight Firehose
 
 Make sure to [include](../../operations/including-extensions.html) `druid-kafka-eight` as an extension.
diff --git a/docs/content/development/extensions-core/kafka-extraction-namespace.md b/docs/content/development/extensions-core/kafka-extraction-namespace.md
index 6d9ea16..82c4ce4 100644
--- a/docs/content/development/extensions-core/kafka-extraction-namespace.md
+++ b/docs/content/development/extensions-core/kafka-extraction-namespace.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Kafka Lookups"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Kafka Lookups"
----
 # Kafka Lookups
 
 <div class="note caution">
diff --git a/docs/content/development/extensions-core/kafka-ingestion.md b/docs/content/development/extensions-core/kafka-ingestion.md
index f8b80c0..f1666b8 100644
--- a/docs/content/development/extensions-core/kafka-ingestion.md
+++ b/docs/content/development/extensions-core/kafka-ingestion.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Kafka Indexing Service"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Kafka Indexing Service"
----
 # Kafka Indexing Service
 
 The Kafka indexing service enables the configuration of *supervisors* on the Overlord, which facilitate ingestion from
diff --git a/docs/content/development/extensions-core/lookups-cached-global.md b/docs/content/development/extensions-core/lookups-cached-global.md
index c5a89cb..d0fbb42 100644
--- a/docs/content/development/extensions-core/lookups-cached-global.md
+++ b/docs/content/development/extensions-core/lookups-cached-global.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Globally Cached Lookups"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Globally Cached Lookups"
----
 # Globally Cached Lookups
 
 <div class="note caution">
diff --git a/docs/content/development/extensions-core/mysql.md b/docs/content/development/extensions-core/mysql.md
index 67bc5cf..239196a 100644
--- a/docs/content/development/extensions-core/mysql.md
+++ b/docs/content/development/extensions-core/mysql.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "MySQL Metadata Store"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "MySQL Metadata Store"
----
 # MySQL Metadata Store
 
 Make sure to [include](../../operations/including-extensions.html) `mysql-metadata-storage` as an extension.
diff --git a/docs/content/development/extensions-core/postgresql.md b/docs/content/development/extensions-core/postgresql.md
index cc54cdf..a7b8f40 100644
--- a/docs/content/development/extensions-core/postgresql.md
+++ b/docs/content/development/extensions-core/postgresql.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "PostgreSQL Metadata Store"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "PostgreSQL Metadata Store"
----
 # PostgreSQL Metadata Store
 
 Make sure to [include](../../operations/including-extensions.html) `postgresql-metadata-storage` as an extension.
diff --git a/docs/content/development/extensions-core/protobuf.md b/docs/content/development/extensions-core/protobuf.md
index b8f3125..8c25780 100644
--- a/docs/content/development/extensions-core/protobuf.md
+++ b/docs/content/development/extensions-core/protobuf.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Protobuf"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Protobuf"
----
 # Protobuf
 
 This extension enables Druid to ingest and understand the Protobuf data format. Make sure to [include](../../operations/including-extensions.html) `druid-protobuf-extensions` as an extension.
diff --git a/docs/content/development/extensions-core/s3.md b/docs/content/development/extensions-core/s3.md
index df8d745..c1ad94f 100644
--- a/docs/content/development/extensions-core/s3.md
+++ b/docs/content/development/extensions-core/s3.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "S3-compatible"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "S3-compatible"
----
 # S3-compatible
 
 Make sure to [include](../../operations/including-extensions.html) `druid-s3-extensions` as an extension.
diff --git a/docs/content/development/extensions-core/simple-client-sslcontext.md b/docs/content/development/extensions-core/simple-client-sslcontext.md
index 19976bf..f68aa24 100644
--- a/docs/content/development/extensions-core/simple-client-sslcontext.md
+++ b/docs/content/development/extensions-core/simple-client-sslcontext.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Simple SSLContext Provider Module"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Simple SSLContext Provider Module"
----
 # Simple SSLContext Provider Module
 
 This module contains a simple implementation of [SSLContext](http://docs.oracle.com/javase/8/docs/api/javax/net/ssl/SSLContext.html)
diff --git a/docs/content/development/extensions-core/stats.md b/docs/content/development/extensions-core/stats.md
index 31117c7..504c79e 100644
--- a/docs/content/development/extensions-core/stats.md
+++ b/docs/content/development/extensions-core/stats.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Stats aggregator"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Stats aggregator"
----
 # Stats aggregator
 
 Includes stat-related aggregators, including variance and standard deviations, etc. Make sure to [include](../../operations/including-extensions.html) `druid-stats` as an extension.
diff --git a/docs/content/development/extensions-core/test-stats.md b/docs/content/development/extensions-core/test-stats.md
index 9e175ae..e36eb94 100644
--- a/docs/content/development/extensions-core/test-stats.md
+++ b/docs/content/development/extensions-core/test-stats.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Test Stats Aggregators"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Test Stats Aggregators"
----
 # Test Stats Aggregators
 
 Incorporates test statistics related aggregators, including z-score and p-value. Please refer to [https://www.paypal-engineering.com/2017/06/29/democratizing-experimentation-data-for-product-innovations/](https://www.paypal-engineering.com/2017/06/29/democratizing-experimentation-data-for-product-innovations/) for math background and details.
diff --git a/docs/content/development/extensions.md b/docs/content/development/extensions.md
index 64e3f07..fa456cd 100644
--- a/docs/content/development/extensions.md
+++ b/docs/content/development/extensions.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Druid extensions"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Druid extensions"
----
 # Druid extensions
 
 Druid implements an extension system that allows for adding functionality at runtime. Extensions
diff --git a/docs/content/development/geo.md b/docs/content/development/geo.md
index 7f9befa..7092ef1 100644
--- a/docs/content/development/geo.md
+++ b/docs/content/development/geo.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Geographic Queries"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Geographic Queries"
----
 # Geographic Queries
 
 Druid supports filtering specially spatially indexed columns based on an origin and a bound.
diff --git a/docs/content/development/integrating-druid-with-other-technologies.md b/docs/content/development/integrating-druid-with-other-technologies.md
index 16c6bde..075341c 100644
--- a/docs/content/development/integrating-druid-with-other-technologies.md
+++ b/docs/content/development/integrating-druid-with-other-technologies.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Integrating Druid With Other Technologies"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Integrating Druid With Other Technologies"
----
 # Integrating Druid With Other Technologies
 
 This page discusses how we can integrate Druid with other technologies. 
diff --git a/docs/content/development/javascript.md b/docs/content/development/javascript.md
index a90a08c..faa09bd 100644
--- a/docs/content/development/javascript.md
+++ b/docs/content/development/javascript.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "JavaScript Programming Guide"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "JavaScript Programming Guide"
----
 # JavaScript Programming Guide
 
 This page discusses how to use JavaScript to extend Druid.
diff --git a/docs/content/development/modules.md b/docs/content/development/modules.md
index 901b1b5..f85fe6c 100644
--- a/docs/content/development/modules.md
+++ b/docs/content/development/modules.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Extending Druid With Custom Modules"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Extending Druid With Custom Modules"
----
 # Extending Druid With Custom Modules
 
 Druid uses a module system that allows for the addition of extensions at runtime.
diff --git a/docs/content/development/overview.md b/docs/content/development/overview.md
index d900b4e..2637cb4 100644
--- a/docs/content/development/overview.md
+++ b/docs/content/development/overview.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Developing on Druid"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Developing on Druid"
----
 # Developing on Druid
 
 Druid's codebase consists of several major components. For developers interested in learning the code, this document provides 
diff --git a/docs/content/development/router.md b/docs/content/development/router.md
index ff480e8..e243512 100644
--- a/docs/content/development/router.md
+++ b/docs/content/development/router.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Router Node"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Router Node"
----
 # Router Node
 
 You should only ever need the router node if you have a Druid cluster well into the terabyte range. The router node can be used to route queries to different broker nodes. By default, the broker routes queries based on how [Rules](../operations/rule-configuration.html) are set up. For example, if 1 month of recent data is loaded into a `hot` cluster, queries that fall within the recent month can be routed to a dedicated set of brokers. Queries outside this range are routed to another set of brokers. This set up provides query isolation such that queries for more important data are not impacted by queries for less important data. 
diff --git a/docs/content/development/versioning.md b/docs/content/development/versioning.md
index 4b1577f..59e87e4 100644
--- a/docs/content/development/versioning.md
+++ b/docs/content/development/versioning.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Versioning Druid"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Versioning Druid"
----
 # Versioning Druid
 
 This page discusses how we do versioning and provides information on our stable releases.
diff --git a/docs/content/ingestion/batch-ingestion.md b/docs/content/ingestion/batch-ingestion.md
index db394c6..8f81710 100644
--- a/docs/content/ingestion/batch-ingestion.md
+++ b/docs/content/ingestion/batch-ingestion.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Batch Data Ingestion"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Batch Data Ingestion"
----
 # Batch Data Ingestion
 
 Druid can load data from static files through a variety of methods described here.
diff --git a/docs/content/ingestion/command-line-hadoop-indexer.md b/docs/content/ingestion/command-line-hadoop-indexer.md
index 3068783..fc0bc5a 100644
--- a/docs/content/ingestion/command-line-hadoop-indexer.md
+++ b/docs/content/ingestion/command-line-hadoop-indexer.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Command Line Hadoop Indexer"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Command Line Hadoop Indexer"
----
 # Command Line Hadoop Indexer
 
 To run:
diff --git a/docs/content/ingestion/compaction.md b/docs/content/ingestion/compaction.md
index 956c347..cd7345f 100644
--- a/docs/content/ingestion/compaction.md
+++ b/docs/content/ingestion/compaction.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Compaction Task"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Compaction Task"
----
 # Compaction Task
 
 Compaction tasks merge all segments of the given interval. The syntax is:
diff --git a/docs/content/ingestion/data-formats.md b/docs/content/ingestion/data-formats.md
index bfd7962..be7ea3e 100644
--- a/docs/content/ingestion/data-formats.md
+++ b/docs/content/ingestion/data-formats.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Data Formats for Ingestion"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Data Formats for Ingestion"
----
 # Data Formats for Ingestion
 
 Druid can ingest denormalized data in JSON, CSV, or a delimited form such as TSV, or any custom format. While most examples in the documentation use data in JSON format, it is not difficult to configure Druid to ingest any other delimited data.
diff --git a/docs/content/ingestion/delete-data.md b/docs/content/ingestion/delete-data.md
index 6f5e966..7e28ffc 100644
--- a/docs/content/ingestion/delete-data.md
+++ b/docs/content/ingestion/delete-data.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Deleting Data"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Deleting Data"
----
 # Deleting Data
 
 Permanent deletion of a Druid segment has two steps:
diff --git a/docs/content/ingestion/faq.md b/docs/content/ingestion/faq.md
index 9ed403e..13a0a95 100644
--- a/docs/content/ingestion/faq.md
+++ b/docs/content/ingestion/faq.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "My Data isn't being loaded"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "My Data isn't being loaded"
----
 # My Data isn't being loaded
 
 ### Realtime Ingestion
diff --git a/docs/content/ingestion/firehose.md b/docs/content/ingestion/firehose.md
index 8aab739..ff10206 100644
--- a/docs/content/ingestion/firehose.md
+++ b/docs/content/ingestion/firehose.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Druid Firehoses"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Druid Firehoses"
----
 # Druid Firehoses
 
 Firehoses are used in [native batch ingestion tasks](../ingestion/native_tasks.html), stream push tasks automatically created by [Tranquility](../ingestion/stream-push.html), and the [stream-pull (deprecated)](../ingestion/stream-pull.html) ingestion model.
diff --git a/docs/content/ingestion/flatten-json.md b/docs/content/ingestion/flatten-json.md
index bcaf6c8..2eb36f1 100644
--- a/docs/content/ingestion/flatten-json.md
+++ b/docs/content/ingestion/flatten-json.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "JSON Flatten Spec"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "JSON Flatten Spec"
----
 # JSON Flatten Spec
 
 | Field | Type | Description | Required |
diff --git a/docs/content/ingestion/hadoop.md b/docs/content/ingestion/hadoop.md
index 8eda60c..3afbb5c 100644
--- a/docs/content/ingestion/hadoop.md
+++ b/docs/content/ingestion/hadoop.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Hadoop-based Batch Ingestion"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Hadoop-based Batch Ingestion"
----
 # Hadoop-based Batch Ingestion
 
 Hadoop-based batch ingestion in Druid is supported via a Hadoop-ingestion task. These tasks can be posted to a running
diff --git a/docs/content/ingestion/index.md b/docs/content/ingestion/index.md
index c072176..d0e6915 100644
--- a/docs/content/ingestion/index.md
+++ b/docs/content/ingestion/index.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Ingestion"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Ingestion"
----
 # Ingestion
 
 ## Overview
diff --git a/docs/content/ingestion/ingestion-spec.md b/docs/content/ingestion/ingestion-spec.md
index 82888ce..5f54906 100644
--- a/docs/content/ingestion/ingestion-spec.md
+++ b/docs/content/ingestion/ingestion-spec.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Ingestion Spec"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Ingestion Spec"
----
 # Ingestion Spec
 
 A Druid ingestion spec consists of 3 components:
diff --git a/docs/content/ingestion/locking-and-priority.md b/docs/content/ingestion/locking-and-priority.md
index d2a8579..523ed77 100644
--- a/docs/content/ingestion/locking-and-priority.md
+++ b/docs/content/ingestion/locking-and-priority.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Task Locking & Priority"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Task Locking & Priority"
----
 # Task Locking & Priority
 
 ## Locking
diff --git a/docs/content/ingestion/misc-tasks.md b/docs/content/ingestion/misc-tasks.md
index fe119dc..48c4a5b 100644
--- a/docs/content/ingestion/misc-tasks.md
+++ b/docs/content/ingestion/misc-tasks.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Miscellaneous Tasks"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Miscellaneous Tasks"
----
 # Miscellaneous Tasks
 
 ## Noop Task
diff --git a/docs/content/ingestion/native_tasks.md b/docs/content/ingestion/native_tasks.md
index 2742994..24aba32 100644
--- a/docs/content/ingestion/native_tasks.md
+++ b/docs/content/ingestion/native_tasks.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Native Index Tasks"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Native Index Tasks"
----
 # Native Index Tasks
 
 Druid currently has two types of native batch indexing tasks, `index_parallel` which runs tasks
diff --git a/docs/content/ingestion/reports.md b/docs/content/ingestion/reports.md
index 2f30317..de37cd1 100644
--- a/docs/content/ingestion/reports.md
+++ b/docs/content/ingestion/reports.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Ingestion Reports"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Ingestion Reports"
----
 # Ingestion Reports
 
 ## Completion Report
diff --git a/docs/content/ingestion/schema-changes.md b/docs/content/ingestion/schema-changes.md
index 5f091f1..a29133a 100644
--- a/docs/content/ingestion/schema-changes.md
+++ b/docs/content/ingestion/schema-changes.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Schema Changes"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Schema Changes"
----
 # Schema Changes
 
 Schemas for datasources can change at any time and Druid supports different schemas among segments.
diff --git a/docs/content/ingestion/schema-design.md b/docs/content/ingestion/schema-design.md
index 21be5bf..0fd27a9 100644
--- a/docs/content/ingestion/schema-design.md
+++ b/docs/content/ingestion/schema-design.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Schema Design"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Schema Design"
----
 # Schema Design
 
 This page is meant to assist users in designing a schema for data to be ingested in Druid. Druid intakes denormalized data 
diff --git a/docs/content/ingestion/stream-ingestion.md b/docs/content/ingestion/stream-ingestion.md
index dd22218..4e7b660 100644
--- a/docs/content/ingestion/stream-ingestion.md
+++ b/docs/content/ingestion/stream-ingestion.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Loading Streams"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Loading Streams"
----
 # Loading Streams
 
 Streams can be ingested in Druid using either [Tranquility](https://github.com/druid-io/tranquility) (a Druid-aware
diff --git a/docs/content/ingestion/stream-pull.md b/docs/content/ingestion/stream-pull.md
index 0c53944..384a876 100644
--- a/docs/content/ingestion/stream-pull.md
+++ b/docs/content/ingestion/stream-pull.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Stream Pull Ingestion"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,11 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Stream Pull Ingestion"
----
-
 <div class="note info">
 NOTE: Realtime nodes are deprecated. Please use the <a href="../development/extensions-core/kafka-ingestion.html">Kafka Indexing Service</a> for stream pull use cases instead.
 </div>
diff --git a/docs/content/ingestion/stream-push.md b/docs/content/ingestion/stream-push.md
index c6e79ad..b31b3ab 100644
--- a/docs/content/ingestion/stream-push.md
+++ b/docs/content/ingestion/stream-push.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Stream Push"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Stream Push"
----
 # Stream Push
 
 Druid can connect to any streaming data source through
diff --git a/docs/content/ingestion/tasks.md b/docs/content/ingestion/tasks.md
index 44ffc3b..4c55b0e 100644
--- a/docs/content/ingestion/tasks.md
+++ b/docs/content/ingestion/tasks.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Tasks Overview"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Tasks Overview"
----
 # Tasks Overview
 
 Tasks are run on middle managers and always operate on a single data source.
diff --git a/docs/content/ingestion/transform-spec.md b/docs/content/ingestion/transform-spec.md
index 4e7c66e..9cb3b06 100644
--- a/docs/content/ingestion/transform-spec.md
+++ b/docs/content/ingestion/transform-spec.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Transform Specs"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Transform Specs"
----
 # Transform Specs
 
 Transform specs allow Druid to filter and transform input data during ingestion. 
diff --git a/docs/content/ingestion/update-existing-data.md b/docs/content/ingestion/update-existing-data.md
index da8ab31..506e5b3 100644
--- a/docs/content/ingestion/update-existing-data.md
+++ b/docs/content/ingestion/update-existing-data.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Updating Existing Data"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Updating Existing Data"
----
 # Updating Existing Data
 
 Once you ingest some data in a dataSource for an interval and create Druid segments, you might want to make changes to 
diff --git a/docs/content/misc/math-expr.md b/docs/content/misc/math-expr.md
index 7a3beeb..5767ebe 100644
--- a/docs/content/misc/math-expr.md
+++ b/docs/content/misc/math-expr.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Druid Expressions"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Druid Expressions"
----
 # Druid Expressions
 
 <div class="note info">
diff --git a/docs/content/misc/papers-and-talks.md b/docs/content/misc/papers-and-talks.md
index f97c3d3..989b909 100644
--- a/docs/content/misc/papers-and-talks.md
+++ b/docs/content/misc/papers-and-talks.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Papers"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Papers"
----
 # Papers
 
 * [Druid: A Real-time Analytical Data Store](http://static.druid.io/docs/druid.pdf) - Discusses the Druid architecture in detail.
diff --git a/docs/content/operations/alerts.md b/docs/content/operations/alerts.md
index 239c330..f976113 100644
--- a/docs/content/operations/alerts.md
+++ b/docs/content/operations/alerts.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Druid Alerts"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Druid Alerts"
----
 # Druid Alerts
 
 Druid generates alerts on getting into unexpected situations.
diff --git a/docs/content/operations/api-reference.md b/docs/content/operations/api-reference.md
index 030a748..37a30d2 100644
--- a/docs/content/operations/api-reference.md
+++ b/docs/content/operations/api-reference.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "API Reference"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "API Reference"
----
 # API Reference
 
 This page documents all of the API endpoints for each Druid service type.
diff --git a/docs/content/operations/dump-segment.md b/docs/content/operations/dump-segment.md
index 1f93dfd..62d9398 100644
--- a/docs/content/operations/dump-segment.md
+++ b/docs/content/operations/dump-segment.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "DumpSegment tool"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "DumpSegment tool"
----
 # DumpSegment tool
 
 The DumpSegment tool can be used to dump the metadata or contents of a segment for debugging purposes. Note that the
diff --git a/docs/content/operations/http-compression.md b/docs/content/operations/http-compression.md
index 5ba9c0d..77824c6 100644
--- a/docs/content/operations/http-compression.md
+++ b/docs/content/operations/http-compression.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "HTTP Compression"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "HTTP Compression"
----
 # HTTP Compression
 
 Druid supports http request decompression and response compression, to use this, http request header `Content-Encoding:gzip` and  `Accept-Encoding:gzip` is needed to be set.
diff --git a/docs/content/operations/including-extensions.md b/docs/content/operations/including-extensions.md
index d8cb69e..d3321f7 100644
--- a/docs/content/operations/including-extensions.md
+++ b/docs/content/operations/including-extensions.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Loading extensions"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Loading extensions"
----
 # Loading extensions
 
 ## Loading core extensions
diff --git a/docs/content/operations/insert-segment-to-db.md b/docs/content/operations/insert-segment-to-db.md
index 8f9aed6..ba8e644 100644
--- a/docs/content/operations/insert-segment-to-db.md
+++ b/docs/content/operations/insert-segment-to-db.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "insert-segment-to-db Tool"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "insert-segment-to-db Tool"
----
 # insert-segment-to-db Tool
 
 `insert-segment-to-db` is a tool that can insert segments into Druid metadata storage. It is intended to be used
diff --git a/docs/content/operations/metrics.md b/docs/content/operations/metrics.md
index 0a4b010..7969076 100644
--- a/docs/content/operations/metrics.md
+++ b/docs/content/operations/metrics.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Druid Metrics"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Druid Metrics"
----
 # Druid Metrics
 
 Druid generates metrics related to queries, ingestion, and coordination.
diff --git a/docs/content/operations/other-hadoop.md b/docs/content/operations/other-hadoop.md
index 594d167..d6c6f70 100644
--- a/docs/content/operations/other-hadoop.md
+++ b/docs/content/operations/other-hadoop.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Working with different versions of Hadoop"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Working with different versions of Hadoop"
----
 # Working with different versions of Hadoop
 
 Druid can interact with Hadoop in two ways:
diff --git a/docs/content/operations/password-provider.md b/docs/content/operations/password-provider.md
index 7ed0e5a..5e3497b 100644
--- a/docs/content/operations/password-provider.md
+++ b/docs/content/operations/password-provider.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Password Provider"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Password Provider"
----
 # Password Provider
 
 Druid needs some passwords for accessing various secured systems like metadata store, Key Store containing server certificates etc.
diff --git a/docs/content/operations/performance-faq.md b/docs/content/operations/performance-faq.md
index 6b703ab..03b2c37 100644
--- a/docs/content/operations/performance-faq.md
+++ b/docs/content/operations/performance-faq.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Performance FAQ"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Performance FAQ"
----
 # Performance FAQ
 
 ## I can't match your benchmarked results
diff --git a/docs/content/operations/pull-deps.md b/docs/content/operations/pull-deps.md
index 6721f7f..8f8c4e1 100644
--- a/docs/content/operations/pull-deps.md
+++ b/docs/content/operations/pull-deps.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "pull-deps Tool"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "pull-deps Tool"
----
 # pull-deps Tool
 
 `pull-deps` is a tool that can pull down dependencies to the local repository and lay dependencies out into the extension directory as needed.
diff --git a/docs/content/operations/recommendations.md b/docs/content/operations/recommendations.md
index 2672ea3..cfac2ae 100644
--- a/docs/content/operations/recommendations.md
+++ b/docs/content/operations/recommendations.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Recommendations"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Recommendations"
----
 # Recommendations
 
 # Some General guidelines
diff --git a/docs/content/operations/reset-cluster.md b/docs/content/operations/reset-cluster.md
index f33667e..548e464 100644
--- a/docs/content/operations/reset-cluster.md
+++ b/docs/content/operations/reset-cluster.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "ResetCluster tool"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "ResetCluster tool"
----
 # ResetCluster tool
 
 ResetCluster tool can be used to completely wipe out Druid cluster state stored on Metadata and Deep storage. This is
diff --git a/docs/content/operations/rolling-updates.md b/docs/content/operations/rolling-updates.md
index df94842..c154fc4 100644
--- a/docs/content/operations/rolling-updates.md
+++ b/docs/content/operations/rolling-updates.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Rolling Updates"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Rolling Updates"
----
 # Rolling Updates
 
 For rolling Druid cluster updates with no downtime, we recommend updating Druid nodes in the
diff --git a/docs/content/operations/rule-configuration.md b/docs/content/operations/rule-configuration.md
index c3dc4b2..9d653ea 100644
--- a/docs/content/operations/rule-configuration.md
+++ b/docs/content/operations/rule-configuration.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Retaining or Automatically Dropping Data"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Retaining or Automatically Dropping Data"
----
 # Retaining or Automatically Dropping Data
 
 Coordinator nodes use rules to determine what data should be loaded to or dropped from the cluster. Rules are used for data retention and query execution, and are set on the coordinator console (http://coordinator_ip:port).
diff --git a/docs/content/operations/segment-optimization.md b/docs/content/operations/segment-optimization.md
index e539d9d..04d099e 100644
--- a/docs/content/operations/segment-optimization.md
+++ b/docs/content/operations/segment-optimization.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Segment size optimization"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Segment size optimization"
----
 # Segment size optimization
 
 In Druid, it's important to optimize the segment size because
diff --git a/docs/content/operations/tls-support.md b/docs/content/operations/tls-support.md
index a98036e..e0c4a20 100644
--- a/docs/content/operations/tls-support.md
+++ b/docs/content/operations/tls-support.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "TLS Support"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "TLS Support"
----
 # TLS Support
 
 # General Configuration
diff --git a/docs/content/operations/use_sbt_to_build_fat_jar.md b/docs/content/operations/use_sbt_to_build_fat_jar.md
index 79f5a0f..95d7a9b 100644
--- a/docs/content/operations/use_sbt_to_build_fat_jar.md
+++ b/docs/content/operations/use_sbt_to_build_fat_jar.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Content for build.sbt"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Content for build.sbt"
----
 # Content for build.sbt
 
 ```scala
diff --git a/docs/content/querying/aggregations.md b/docs/content/querying/aggregations.md
index ddd804e..b0d300d 100644
--- a/docs/content/querying/aggregations.md
+++ b/docs/content/querying/aggregations.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Aggregations"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Aggregations"
----
 # Aggregations
 
 Aggregations can be provided at ingestion time as part of the ingestion spec as a way of summarizing data before it enters Druid. 
diff --git a/docs/content/querying/caching.md b/docs/content/querying/caching.md
index 68b7daa..cb84e1f 100644
--- a/docs/content/querying/caching.md
+++ b/docs/content/querying/caching.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Query Caching"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Query Caching"
----
 # Query Caching
 
 Druid supports query result caching through an LRU cache. Results are stored as a whole or either on a per segment basis along with the 
diff --git a/docs/content/querying/datasource.md b/docs/content/querying/datasource.md
index 7dee075..d9811e8 100644
--- a/docs/content/querying/datasource.md
+++ b/docs/content/querying/datasource.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Datasources"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Datasources"
----
 # Datasources
 
 A data source is the Druid equivalent of a database table. However, a query can also masquerade as a data source, providing subquery-like functionality. Query data sources are currently supported only by [GroupBy](../querying/groupbyquery.html) queries.
diff --git a/docs/content/querying/datasourcemetadataquery.md b/docs/content/querying/datasourcemetadataquery.md
index f7d2da1..7d9fe23 100644
--- a/docs/content/querying/datasourcemetadataquery.md
+++ b/docs/content/querying/datasourcemetadataquery.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Data Source Metadata Queries"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Data Source Metadata Queries"
----
 # Data Source Metadata Queries
 
 Data Source Metadata queries return metadata information for a dataSource.  These queries return information about:
diff --git a/docs/content/querying/dimensionspecs.md b/docs/content/querying/dimensionspecs.md
index 823ea07..c6c636d 100644
--- a/docs/content/querying/dimensionspecs.md
+++ b/docs/content/querying/dimensionspecs.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Transforming Dimension Values"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Transforming Dimension Values"
----
 # Transforming Dimension Values
 
 The following JSON fields can be used in a query to operate on dimension values.
diff --git a/docs/content/querying/filters.md b/docs/content/querying/filters.md
index 9012df8..fef3a6e 100644
--- a/docs/content/querying/filters.md
+++ b/docs/content/querying/filters.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Query Filters"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Query Filters"
----
 # Query Filters
 
 A filter is a JSON object indicating which rows of data should be included in the computation for a query. It’s essentially the equivalent of the WHERE clause in SQL. Druid supports the following types of filters.
diff --git a/docs/content/querying/granularities.md b/docs/content/querying/granularities.md
index c8a1a47..b7438c7 100644
--- a/docs/content/querying/granularities.md
+++ b/docs/content/querying/granularities.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Aggregation Granularity"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Aggregation Granularity"
----
 # Aggregation Granularity
 
 The granularity field determines how data gets bucketed across the time dimension, or how it gets aggregated by hour, day, minute, etc.
diff --git a/docs/content/querying/groupbyquery.md b/docs/content/querying/groupbyquery.md
index e4e39a3..8f35c97 100644
--- a/docs/content/querying/groupbyquery.md
+++ b/docs/content/querying/groupbyquery.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "groupBy Queries"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "groupBy Queries"
----
 # groupBy Queries
 
 These types of queries take a groupBy query object and return an array of JSON objects where each object represents a
diff --git a/docs/content/querying/having.md b/docs/content/querying/having.md
index aba8acf..3b45547 100644
--- a/docs/content/querying/having.md
+++ b/docs/content/querying/having.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Filter groupBy Query Results"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Filter groupBy Query Results"
----
 # Filter groupBy Query Results
 
 A having clause is a JSON object identifying which rows from a groupBy query should be returned, by specifying conditions on aggregated values.
diff --git a/docs/content/querying/joins.md b/docs/content/querying/joins.md
index 1c8c5fd..0a55ff0 100644
--- a/docs/content/querying/joins.md
+++ b/docs/content/querying/joins.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Joins"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Joins"
----
 # Joins
 
 Druid has limited support for joins through [query-time lookups](../querying/lookups.html). The common use case of 
diff --git a/docs/content/querying/limitspec.md b/docs/content/querying/limitspec.md
index cc57ab3..25168b4 100644
--- a/docs/content/querying/limitspec.md
+++ b/docs/content/querying/limitspec.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Sort groupBy Query Results"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Sort groupBy Query Results"
----
 # Sort groupBy Query Results
 
 The limitSpec field provides the functionality to sort and limit the set of results from a groupBy query. If you group by a single dimension and are ordering by a single metric, we highly recommend using [TopN Queries](../querying/topnquery.html) instead. The performance will be substantially better. Available options are:
diff --git a/docs/content/querying/lookups.md b/docs/content/querying/lookups.md
index b86501c..9a9feca 100644
--- a/docs/content/querying/lookups.md
+++ b/docs/content/querying/lookups.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Lookups"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Lookups"
----
 # Lookups
 
 <div class="note caution">
diff --git a/docs/content/querying/multi-value-dimensions.md b/docs/content/querying/multi-value-dimensions.md
index 532538e..417cb1a 100644
--- a/docs/content/querying/multi-value-dimensions.md
+++ b/docs/content/querying/multi-value-dimensions.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Multi-value dimensions"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Multi-value dimensions"
----
 # Multi-value dimensions
 
 Druid supports "multi-value" string dimensions. These are generated when an input field contains an array of values
diff --git a/docs/content/querying/multitenancy.md b/docs/content/querying/multitenancy.md
index 7ab468e..642d6ea 100644
--- a/docs/content/querying/multitenancy.md
+++ b/docs/content/querying/multitenancy.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Multitenancy Considerations"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Multitenancy Considerations"
----
 # Multitenancy Considerations
 
 Druid is often used to power user-facing data applications, where multitenancy is an important requirement. This
diff --git a/docs/content/querying/post-aggregations.md b/docs/content/querying/post-aggregations.md
index 15f8d80..7bdb65d 100644
--- a/docs/content/querying/post-aggregations.md
+++ b/docs/content/querying/post-aggregations.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Post-Aggregations"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Post-Aggregations"
----
 # Post-Aggregations
 
 Post-aggregations are specifications of processing that should happen on aggregated values as they come out of Druid. If you include a post aggregation as part of a query, make sure to include all aggregators the post-aggregator requires.
diff --git a/docs/content/querying/query-context.md b/docs/content/querying/query-context.md
index 81d1e09..d6225ee 100644
--- a/docs/content/querying/query-context.md
+++ b/docs/content/querying/query-context.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Query Context"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Query Context"
----
 # Query Context
 
 The query context is used for various query configuration parameters. The following parameters apply to all queries.
diff --git a/docs/content/querying/querying.md b/docs/content/querying/querying.md
index af59ba6..40cb711 100644
--- a/docs/content/querying/querying.md
+++ b/docs/content/querying/querying.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Querying"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Querying"
----
 # Querying
 
 Queries are made using an HTTP REST style request to queryable nodes ([Broker](../design/broker.html),
diff --git a/docs/content/querying/scan-query.md b/docs/content/querying/scan-query.md
index 3571727..3963800 100644
--- a/docs/content/querying/scan-query.md
+++ b/docs/content/querying/scan-query.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Scan query"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Scan query"
----
 # Scan query
 
 Scan query returns raw Druid rows in streaming mode.
diff --git a/docs/content/querying/searchquery.md b/docs/content/querying/searchquery.md
index e26746b..8a9c5b1 100644
--- a/docs/content/querying/searchquery.md
+++ b/docs/content/querying/searchquery.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Search Queries"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Search Queries"
----
 # Search Queries
 
 A search query returns dimension values that match the search specification.
diff --git a/docs/content/querying/searchqueryspec.md b/docs/content/querying/searchqueryspec.md
index 6e15757..c7ef1e2 100644
--- a/docs/content/querying/searchqueryspec.md
+++ b/docs/content/querying/searchqueryspec.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Refining Search Queries"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Refining Search Queries"
----
 # Refining Search Queries
 
 Search query specs define how a "match" is defined between a search value and a dimension value. The available search query specs are:
diff --git a/docs/content/querying/segmentmetadataquery.md b/docs/content/querying/segmentmetadataquery.md
index ae3477f..ae6d6b8 100644
--- a/docs/content/querying/segmentmetadataquery.md
+++ b/docs/content/querying/segmentmetadataquery.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Segment Metadata Queries"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Segment Metadata Queries"
----
 # Segment Metadata Queries
 
 Segment metadata queries return per-segment information about:
diff --git a/docs/content/querying/select-query.md b/docs/content/querying/select-query.md
index 7454ba5..7464283 100644
--- a/docs/content/querying/select-query.md
+++ b/docs/content/querying/select-query.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Select Queries"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Select Queries"
----
 # Select Queries
 
 Select queries return raw Druid rows and support pagination.
diff --git a/docs/content/querying/sorting-orders.md b/docs/content/querying/sorting-orders.md
index 4ba336e..2604b52 100644
--- a/docs/content/querying/sorting-orders.md
+++ b/docs/content/querying/sorting-orders.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Sorting Orders"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Sorting Orders"
----
 # Sorting Orders
 
 These sorting orders are used by the [TopNMetricSpec](./topnmetricspec.html), [SearchQuery](./searchquery.html), GroupByQuery's [LimitSpec](./limitspec.html), and [BoundFilter](./filters.html#bound-filter).
diff --git a/docs/content/querying/sql.md b/docs/content/querying/sql.md
index 5fa4319..b3016d8 100644
--- a/docs/content/querying/sql.md
+++ b/docs/content/querying/sql.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "SQL"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "SQL"
----
 # SQL
 
 <div class="note caution">
diff --git a/docs/content/querying/timeboundaryquery.md b/docs/content/querying/timeboundaryquery.md
index 971f733..ebb3c6e 100644
--- a/docs/content/querying/timeboundaryquery.md
+++ b/docs/content/querying/timeboundaryquery.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Time Boundary Queries"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Time Boundary Queries"
----
 # Time Boundary Queries
 
 Time boundary queries return the earliest and latest data points of a data set. The grammar is:
diff --git a/docs/content/querying/timeseriesquery.md b/docs/content/querying/timeseriesquery.md
index 1af6815..d8ab592 100644
--- a/docs/content/querying/timeseriesquery.md
+++ b/docs/content/querying/timeseriesquery.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Timeseries queries"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Timeseries queries"
----
 # Timeseries queries
 
 These types of queries take a timeseries query object and return an array of JSON objects where each object represents a value asked for by the timeseries query.
diff --git a/docs/content/querying/topnmetricspec.md b/docs/content/querying/topnmetricspec.md
index f3b195b..09355f4 100644
--- a/docs/content/querying/topnmetricspec.md
+++ b/docs/content/querying/topnmetricspec.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "TopNMetricSpec"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "TopNMetricSpec"
----
 # TopNMetricSpec
 
 The topN metric spec specifies how topN values should be sorted.
diff --git a/docs/content/querying/topnquery.md b/docs/content/querying/topnquery.md
index b9adf80..8963f7b 100644
--- a/docs/content/querying/topnquery.md
+++ b/docs/content/querying/topnquery.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "TopN queries"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "TopN queries"
----
 # TopN queries
 
 TopN queries return a sorted set of results for the values in a given dimension according to some criteria. Conceptually, they can be thought of as an approximate [GroupByQuery](../querying/groupbyquery.html) over a single dimension with an [Ordering](../querying/limitspec.html) spec. TopNs are much faster and resource efficient than GroupBys for this use case. These types of queries take a topN query object and return an array of JSON objects where each object represents a value asked for by the topN query.
diff --git a/docs/content/querying/virtual-columns.md b/docs/content/querying/virtual-columns.md
index 1a9779c..002741d 100644
--- a/docs/content/querying/virtual-columns.md
+++ b/docs/content/querying/virtual-columns.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Virtual Columns"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Virtual Columns"
----
 # Virtual Columns
 
 Virtual columns are queryable column "views" created from a set of columns during a query. 
diff --git a/docs/content/toc.md b/docs/content/toc.md
index 50b3187..9ed563b 100644
--- a/docs/content/toc.md
+++ b/docs/content/toc.md
@@ -1,3 +1,7 @@
+---
+layout: toc
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +21,6 @@
   ~ under the License.
   -->
 
----
-layout: toc
----
-
 ## Getting Started
   * [Design](/docs/VERSION/design/index.html)
     * [What is Druid?](/docs/VERSION/design/index.html#what-is-druid)
diff --git a/docs/content/tutorials/cluster.md b/docs/content/tutorials/cluster.md
index f9b2cee..c4c2b19 100644
--- a/docs/content/tutorials/cluster.md
+++ b/docs/content/tutorials/cluster.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Clustering"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Clustering"
----
 # Clustering
 
 Druid is designed to be deployed as a scalable, fault-tolerant cluster.
diff --git a/docs/content/tutorials/index.md b/docs/content/tutorials/index.md
index 1863365..7ba0cd2 100644
--- a/docs/content/tutorials/index.md
+++ b/docs/content/tutorials/index.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Quickstart"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Quickstart"
----
 # Druid Quickstart
 
 In this quickstart, we will download Druid and set it up on a single machine. The cluster will be ready to load data
diff --git a/docs/content/tutorials/tutorial-batch-hadoop.md b/docs/content/tutorials/tutorial-batch-hadoop.md
index 0afd25b..e709bfa 100644
--- a/docs/content/tutorials/tutorial-batch-hadoop.md
+++ b/docs/content/tutorials/tutorial-batch-hadoop.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Tutorial: Load batch data using Hadoop"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Tutorial: Load batch data using Hadoop"
----
 # Tutorial: Load batch data using Hadoop
 
 This tutorial shows you how to load data files into Druid using a remote Hadoop cluster.
diff --git a/docs/content/tutorials/tutorial-batch.md b/docs/content/tutorials/tutorial-batch.md
index 1cf8b2f..ebe10bb 100644
--- a/docs/content/tutorials/tutorial-batch.md
+++ b/docs/content/tutorials/tutorial-batch.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Tutorial: Loading a file"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Tutorial: Loading a file"
----
 # Tutorial: Loading a file
 
 ## Getting started
diff --git a/docs/content/tutorials/tutorial-compaction.md b/docs/content/tutorials/tutorial-compaction.md
index 3080eb8..ac4445e 100644
--- a/docs/content/tutorials/tutorial-compaction.md
+++ b/docs/content/tutorials/tutorial-compaction.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Tutorial: Compacting segments"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Tutorial: Compacting segments"
----
 # Tutorial: Compacting segments
 
 This tutorial demonstrates how to compact existing segments into fewer but larger segments.
diff --git a/docs/content/tutorials/tutorial-delete-data.md b/docs/content/tutorials/tutorial-delete-data.md
index 49b9d14..146658d 100644
--- a/docs/content/tutorials/tutorial-delete-data.md
+++ b/docs/content/tutorials/tutorial-delete-data.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Tutorial: Deleting data"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Tutorial: Deleting data"
----
 # Tutorial: Deleting data
 
 This tutorial demonstrates how to delete existing data.
diff --git a/docs/content/tutorials/tutorial-ingestion-spec.md b/docs/content/tutorials/tutorial-ingestion-spec.md
index 34ee3ab..1c939ae 100644
--- a/docs/content/tutorials/tutorial-ingestion-spec.md
+++ b/docs/content/tutorials/tutorial-ingestion-spec.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Tutorial: Writing an ingestion spec"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Tutorial: Writing an ingestion spec"
----
 # Tutorial: Writing an ingestion spec
 
 This tutorial will guide the reader through the process of defining an ingestion spec, pointing out key considerations and guidelines.
diff --git a/docs/content/tutorials/tutorial-kafka.md b/docs/content/tutorials/tutorial-kafka.md
index 2cfc05f..505481f 100644
--- a/docs/content/tutorials/tutorial-kafka.md
+++ b/docs/content/tutorials/tutorial-kafka.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Tutorial: Load streaming data from Kafka"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Tutorial: Load streaming data from Kafka"
----
 # Tutorial: Load streaming data from Kafka
 
 ## Getting started
diff --git a/docs/content/tutorials/tutorial-query.md b/docs/content/tutorials/tutorial-query.md
index fbf75e0..1cc2839 100644
--- a/docs/content/tutorials/tutorial-query.md
+++ b/docs/content/tutorials/tutorial-query.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Tutorial: Querying data"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Tutorial: Querying data"
----
 # Tutorial: Querying data
 
 This tutorial will demonstrate how to query data in Druid, with examples for Druid's native query format and Druid SQL.
diff --git a/docs/content/tutorials/tutorial-retention.md b/docs/content/tutorials/tutorial-retention.md
index 8c894f3..b78e1de 100644
--- a/docs/content/tutorials/tutorial-retention.md
+++ b/docs/content/tutorials/tutorial-retention.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Tutorial: Configuring data retention"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Tutorial: Configuring data retention"
----
 # Tutorial: Configuring data retention
 
 This tutorial demonstrates how to configure retention rules on a datasource to set the time intervals of data that will be retained or dropped.
diff --git a/docs/content/tutorials/tutorial-rollup.md b/docs/content/tutorials/tutorial-rollup.md
index dd57085..1828dba 100644
--- a/docs/content/tutorials/tutorial-rollup.md
+++ b/docs/content/tutorials/tutorial-rollup.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Tutorial: Roll-up"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Tutorial: Roll-up"
----
 # Tutorial: Roll-up
 
 Druid can summarize raw data at ingestion time using a process we refer to as "roll-up". Roll-up is a first-level aggregation operation over a selected set of columns that reduces the size of stored segments.
diff --git a/docs/content/tutorials/tutorial-tranquility.md b/docs/content/tutorials/tutorial-tranquility.md
index 21fbe5a..195e050 100644
--- a/docs/content/tutorials/tutorial-tranquility.md
+++ b/docs/content/tutorials/tutorial-tranquility.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Tutorial: Load streaming data with HTTP push"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Tutorial: Load streaming data with HTTP push"
----
 # Tutorial: Load streaming data with HTTP push
 
 ## Getting started
diff --git a/docs/content/tutorials/tutorial-transform-spec.md b/docs/content/tutorials/tutorial-transform-spec.md
index f1e13c4..ba9933c 100644
--- a/docs/content/tutorials/tutorial-transform-spec.md
+++ b/docs/content/tutorials/tutorial-transform-spec.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Tutorial: Transforming input data"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Tutorial: Transforming input data"
----
 # Tutorial: Transforming input data
 
 This tutorial will demonstrate how to use transform specs to filter and transform input data during ingestion.
diff --git a/docs/content/tutorials/tutorial-update-data.md b/docs/content/tutorials/tutorial-update-data.md
index f24e559..3d870de 100644
--- a/docs/content/tutorials/tutorial-update-data.md
+++ b/docs/content/tutorials/tutorial-update-data.md
@@ -1,3 +1,8 @@
+---
+layout: doc_page
+title: "Tutorial: Updating existing data"
+---
+
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,10 +22,6 @@
   ~ under the License.
   -->
 
----
-layout: doc_page
-title: "Tutorial: Updating existing data"
----
 # Tutorial: Updating existing data
 
 This tutorial demonstrates how to update existing data, showing both overwrites and appends.