kafka-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From guozh...@apache.org
Subject [kafka-site] branch asf-site updated: Menu order in Streams docs incorrect (#115)
Date Tue, 09 Jan 2018 22:25:57 GMT
This is an automated email from the ASF dual-hosted git repository.

guozhang pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/kafka-site.git


The following commit(s) were added to refs/heads/asf-site by this push:
     new c0844f1  Menu order in Streams docs incorrect (#115)
c0844f1 is described below

commit c0844f1925053ce808f503322bce6dd9fb02698e
Author: Joel Hamill <11722533+joel-hamill@users.noreply.github.com>
AuthorDate: Tue Jan 9 14:25:55 2018 -0800

    Menu order in Streams docs incorrect (#115)
    
    * Fix Streams navigation, menu order, and missing maven content
    
    Reviewers: Guozhang Wang <wangguoz@gmail.com>
---
 10/streams/architecture.html                       |  17 +-
 10/streams/core-concepts.html                      |  23 +-
 10/streams/developer-guide/app-reset-tool.html     |   2 +-
 10/streams/developer-guide/datatypes.html          |   4 +-
 10/streams/developer-guide/dsl-api.html            |  16 +-
 10/streams/developer-guide/index.html              |  24 +-
 .../developer-guide/interactive-queries.html       |  10 +-
 10/streams/developer-guide/memory-mgmt.html        |   6 +-
 10/streams/developer-guide/processor-api.html      |   4 +-
 10/streams/developer-guide/running-app.html        |  10 +-
 10/streams/developer-guide/security.html           |   2 +-
 10/streams/developer-guide/write-streams.html      |  52 +++-
 10/streams/index.html                              | 326 +++++++++++----------
 10/streams/quickstart.html                         |  31 +-
 10/streams/tutorial.html                           |  23 +-
 10/streams/upgrade-guide.html                      |  17 +-
 16 files changed, 328 insertions(+), 239 deletions(-)

diff --git a/10/streams/architecture.html b/10/streams/architecture.html
index 35c9168..69d1330 100644
--- a/10/streams/architecture.html
+++ b/10/streams/architecture.html
@@ -19,6 +19,19 @@
 
 <script id="content-template" type="text/x-handlebars-template">
     <h1>Architecture</h1>
+    <div class="sub-nav-sticky">
+        <div class="sticky-top">
+            <div style="height:35px">
+                <a href="/{{version}}/documentation/streams/">Introduction</a>
+                <a href="/{{version}}/documentation/streams/quickstart">Run Demo App</a>
+                <a href="/{{version}}/documentation/streams/tutorial">Tutorial: Write App</a>
+                <a href="/{{version}}/documentation/streams/core-concepts">Concepts</a>
+                <a class="active-menu-item" href="/{{version}}/documentation/streams/architecture">Architecture</a>
+                <a href="/{{version}}/documentation/streams/developer-guide/">Developer Guide</a>
+                <a href="/{{version}}/documentation/streams/upgrade-guide">Upgrade</a>
+            </div>
+        </div>
+    </div>
 
     Kafka Streams simplifies application development by building on the Kafka producer and consumer libraries and leveraging the native capabilities of
     Kafka to offer data parallelism, distributed coordination, fault tolerance, and operational simplicity. In this section, we describe how Kafka Streams works underneath the covers.
@@ -131,7 +144,7 @@
 
     <div class="pagination">
         <a href="/{{version}}/documentation/streams/core-concepts" class="pagination__btn pagination__btn__prev">Previous</a>
-        <a href="/{{version}}/documentation/streams/upgrade-guide" class="pagination__btn pagination__btn__next">Next</a>
+        <a href="/{{version}}/documentation/streams/developer-guide" class="pagination__btn pagination__btn__next">Next</a>
     </div>
 </script>
 
@@ -143,7 +156,7 @@
         <!--#include virtual="../../includes/_docs_banner.htm" -->
         <ul class="breadcrumbs">
             <li><a href="/documentation">Documentation</a></li>
-            <li><a href="/documentation/streams">Kafka Streams</a></li>
+            <li><a href="/documentation/streams">Kafka Streams API</a></li>
         </ul>
         <div class="p-content"></div>
     </div>
diff --git a/10/streams/core-concepts.html b/10/streams/core-concepts.html
index c979ea0..d803b3a 100644
--- a/10/streams/core-concepts.html
+++ b/10/streams/core-concepts.html
@@ -23,10 +23,12 @@
         <div class="sticky-top">
             <div style="height:35px">
                 <a href="/{{version}}/documentation/streams/">Introduction</a>
-                <a href="/{{version}}/documentation/streams/developer-guide">Developer Guide</a>
-                <a class="active-menu-item"  href="/{{version}}/documentation/streams/core-concepts">Concepts</a>
                 <a href="/{{version}}/documentation/streams/quickstart">Run Demo App</a>
                 <a href="/{{version}}/documentation/streams/tutorial">Tutorial: Write App</a>
+                <a class="active-menu-item" href="/{{version}}/documentation/streams/core-concepts">Concepts</a>
+                <a href="/{{version}}/documentation/streams/architecture">Architecture</a>
+                <a href="/{{version}}/documentation/streams/developer-guide/">Developer Guide</a>
+                <a href="/{{version}}/documentation/streams/upgrade-guide">Upgrade</a>
             </div>
         </div>
     </div>
@@ -167,7 +169,7 @@
     </p>
 
     <div class="pagination">
-        <a href="/{{version}}/documentation/streams/developer-guide" class="pagination__btn pagination__btn__prev">Previous</a>
+        <a href="/{{version}}/documentation/streams/tutorial" class="pagination__btn pagination__btn__prev">Previous</a>
         <a href="/{{version}}/documentation/streams/architecture" class="pagination__btn pagination__btn__next">Next</a>
     </div>
 </script>
@@ -180,7 +182,7 @@
         <!--#include virtual="../../includes/_docs_banner.htm" -->
         <ul class="breadcrumbs">
             <li><a href="/documentation">Documentation</a></li>
-            <li><a href="/documentation/streams">Kafka Streams</a></li>
+            <li><a href="/documentation/streams">Kafka Streams API</a></li>
         </ul>
         <div class="p-content"></div>
     </div>
@@ -188,11 +190,11 @@
 <!--#include virtual="../../includes/_footer.htm" -->
 <script>
 $(function() {
-          // Show selected style on nav item
-          $('.b-nav__streams').addClass('selected');
+  // Show selected style on nav item
+  $('.b-nav__streams').addClass('selected');
 
-   
-          //sticky secondary nav
+
+     //sticky secondary nav
           var $navbar = $(".sub-nav-sticky"),
                y_pos = $navbar.offset().top,
                height = $navbar.height();
@@ -206,7 +208,8 @@ $(function() {
                    $navbar.removeClass("navbar-fixed")
                }
            });
-           // Display docs subnav items
-           $('.b-nav__docs').parent().toggleClass('nav__item__with__subs--expanded');
+
+  // Display docs subnav items
+  $('.b-nav__docs').parent().toggleClass('nav__item__with__subs--expanded');
 });
 </script>
diff --git a/10/streams/developer-guide/app-reset-tool.html b/10/streams/developer-guide/app-reset-tool.html
index 096d37a..dfee64f 100644
--- a/10/streams/developer-guide/app-reset-tool.html
+++ b/10/streams/developer-guide/app-reset-tool.html
@@ -128,7 +128,7 @@
               </div>
   <div class="pagination">
     <a href="/{{version}}/documentation/streams/developer-guide/security" class="pagination__btn pagination__btn__prev">Previous</a>
-      <a href="/{{version}}/documentation/streams/developer-guide/" class="pagination__btn pagination__btn__next">Next</a>
+      <a href="/{{version}}/documentation/streams/upgrade-guide" class="pagination__btn pagination__btn__next">Next</a>
   </div>
 </script>
 
diff --git a/10/streams/developer-guide/datatypes.html b/10/streams/developer-guide/datatypes.html
index ad596f8..155ee2c 100644
--- a/10/streams/developer-guide/datatypes.html
+++ b/10/streams/developer-guide/datatypes.html
@@ -40,7 +40,7 @@
       <li>By specifying explicit SerDes when calling the appropriate API methods, thus overriding the defaults.</li>
     </ul>
 
-      <p class="topic-title first">Table of Contents</p>
+      <p class="topic-title first"><b>Table of Contents</b></p>
       <ul class="simple">
           <li><a class="reference internal" href="#configuring-serdes" id="id1">Configuring SerDes</a></li>
           <li><a class="reference internal" href="#overriding-default-serdes" id="id2">Overriding default SerDes</a></li>
@@ -139,7 +139,7 @@
           </tbody>
         </table>
         <div class="admonition tip">
-          <p class="first admonition-title">Tip</p>
+          <p><b>Tip</b></p>
           <p class="last"><a class="reference external" href="https://github.com/apache/kafka/blob/1.0/clients/src/main/java/org/apache/kafka/common/utils/Bytes.java">Bytes</a> is a wrapper for Java&#8217;s <code class="docutils literal"><span class="pre">byte[]</span></code> (byte array) that supports proper equality and ordering semantics.  You may want to consider using <code class="docutils literal"><span class="pre">Bytes</span></code> instead of <code class="docutils literal"><span [...]
         </div>
       </div>
diff --git a/10/streams/developer-guide/dsl-api.html b/10/streams/developer-guide/dsl-api.html
index 218dab8..6b24cb5 100644
--- a/10/streams/developer-guide/dsl-api.html
+++ b/10/streams/developer-guide/dsl-api.html
@@ -37,7 +37,7 @@
         <p>The Kafka Streams DSL (Domain Specific Language) is built on top of the Streams Processor API. It is the recommended for
             most users, especially beginners. Most data processing operations can be expressed in just a few lines of DSL code.</p>
         <div class="contents local topic" id="table-of-contents">
-            <p class="topic-title first">Table of Contents</p>
+            <p class="topic-title first"><b>Table of Contents</b></p>
             <ul class="simple">
                 <li><a class="reference internal" href="#overview" id="id7">Overview</a></li>
                 <li><a class="reference internal" href="#creating-source-streams-from-kafka" id="id8">Creating source streams from Kafka</a></li>
@@ -700,7 +700,7 @@
                 </ul>
                 <p>The following diagram shows their relationships:</p>
                 <div class="figure align-center" id="id2">
-                    <img class="centered" src="/{{version}}/images/streams-stateful_operations.png">
+                    <a class="reference internal image-reference" href="../../../images/streams-stateful_operations.png"><img alt="../../../images/streams-stateful_operations.png" src="../../../images/streams-stateful_operations.png" style="width: 400pt;" /></a>
                     <p class="caption"><span class="caption-text">Stateful transformations in the DSL.</span></p>
                 </div>
                 <p>Here is an example of a stateful application: the WordCount algorithm.</p>
@@ -1542,7 +1542,7 @@
                             join, are delivered to the same stream task during processing.
                             <strong>It is the responsibility of the user to ensure data co-partitioning when joining</strong>.</p>
                         <div class="admonition tip">
-                            <p class="first admonition-title">Tip</p>
+                            <p><b>Tip</b></p>
                             <p class="last">If possible, consider using <a class="reference internal" href="../concepts.html#streams-concepts-globalktable"><span class="std std-ref">global tables</span></a> (<code class="docutils literal"><span class="pre">GlobalKTable</span></code>) for joining because they do not require data co-partitioning.</p>
                         </div>
                         <p>The requirements for data co-partitioning are:</p>
@@ -2743,7 +2743,7 @@
                             A tumbling window is a hopping window whose window size is equal to its advance interval.
                             Since tumbling windows never overlap, a data record will belong to one and only one window.</p>
                         <div class="figure align-center" id="id3">
-                            <img class="centered" src="/{{version}}/images/streams-time-windows-tumbling.png">
+                            <a class="reference internal image-reference" href="../../../images/streams-time-windows-tumbling.png"><img alt="../../../images/streams-time-windows-tumbling.png" src="../../../images/streams-time-windows-tumbling.png" style="width: 400pt;" /></a>
                             <p class="caption"><span class="caption-text">This diagram shows windowing a stream of data records with tumbling windows.  Windows do not overlap because, by
 definition, the advance interval is identical to the window size.  In this diagram the time numbers represent minutes;
 e.g. t=5 means &#8220;at the five-minute mark&#8221;.  In reality, the unit of time in Kafka Streams is milliseconds, which means
@@ -2793,7 +2793,7 @@ become t=300,000).</span></p>
 </pre></div>
                         </div>
                         <div class="figure align-center" id="id4">
-                            <img class="centered" src="/{{version}}/images/streams-time-windows-hopping.png">
+                            <a class="reference internal image-reference" href="../../../images/streams-time-windows-hopping.png"><img alt="../../../images/streams-time-windows-hopping.png" src="../../../images/streams-time-windows-hopping.png" style="width: 400pt;" /></a>
                             <p class="caption"><span class="caption-text">This diagram shows windowing a stream of data records with hopping windows.  In this diagram the time numbers
 represent minutes; e.g. t=5 means &#8220;at the five-minute mark&#8221;.  In reality, the unit of time in Kafka Streams is
 milliseconds, which means the time numbers would need to be multiplied with 60 * 1,000 to convert from minutes to
@@ -2849,7 +2849,7 @@ milliseconds (e.g. t=5 would become t=300,000).</span></p>
                             0-minute mark (only due to the illustration it looks as if the session goes from 0 to 1), and another starting and
                             ending at the 6-minute mark; and one session for the blue record key, starting and ending at the 2-minute mark.</p>
                         <div class="figure align-center" id="id5">
-                            <img class="centered" src="/{{version}}/images/streams-session-windows-01.png">
+                            <a class="reference internal image-reference" href="../../../images/streams-session-windows-01.png"><img alt="../../../images/streams-session-windows-01.png" src="../../../images/streams-session-windows-01.png" style="width: 400pt;" /></a>
                             <p class="caption"><span class="caption-text">Detected sessions after having received three input records: two records for the green record key at t=0 and t=6, and
 one record for the blue record key at t=2.
 In this diagram the time numbers represent minutes; e.g.  t=5 means &#8220;at the five-minute mark&#8221;.  In reality, the unit
@@ -2862,7 +2862,7 @@ convert from minutes to milliseconds (e.g. t=5 would become t=300,000).</span></
                             consisting of a total of two records.  And, finally, there will be a new session for the blue key starting and ending at
                             time 11.</p>
                         <div class="figure align-center" id="id6">
-                            <img class="centered" src="/{{version}}/images/streams-session-windows-02.png">
+                            <a class="reference internal image-reference" href="../../../images/streams-session-windows-02.png"><img alt="../../../images/streams-session-windows-02.png" src="../../../images/streams-session-windows-02.png" style="width: 400pt;" /></a>
                             <p class="caption"><span class="caption-text">Detected sessions after having received six input records.  Note the two late-arriving data records at t=4 (green) and
 t=5 (blue), which lead to a merge of sessions and an extension of a session, respectively.</span></p>
                         </div>
@@ -2989,7 +2989,7 @@ t=5 (blue), which lead to a merge of sessions and an extension of a session, res
 </pre></div>
                 </div>
                 <div class="admonition tip">
-                    <p class="first admonition-title">Tip</p>
+                    <p><b>Tip</b></p>
                     <p class="last">Even though we do not demonstrate it in this example, a stream processor can access any available state stores by
                         calling <code class="docutils literal"><span class="pre">ProcessorContext#getStateStore()</span></code>.  Only such state stores are available that (1) have been named in the
                         corresponding <code class="docutils literal"><span class="pre">KStream#process()</span></code> method call (note that this is a different method than <code class="docutils literal"><span class="pre">Processor#process()</span></code>),
diff --git a/10/streams/developer-guide/index.html b/10/streams/developer-guide/index.html
index 397861a..443ad7d 100644
--- a/10/streams/developer-guide/index.html
+++ b/10/streams/developer-guide/index.html
@@ -19,17 +19,19 @@
 
 <script id="content-template" type="text/x-handlebars-template">
   <h1>Developer Guide for Kafka Streams</h1>
-  <div class="sub-nav-sticky">
-    <div class="sticky-top">
-      <div style="height:35px">
-        <a href="/{{version}}/documentation/streams/">Introduction</a>
-        <a class="active-menu-item" href="/{{version}}/documentation/streams/developer-guide">Developer Guide</a>
-        <a href="/{{version}}/documentation/streams/core-concepts">Concepts</a>
-        <a href="/{{version}}/documentation/streams/quickstart">Run Demo App</a>
-        <a href="/{{version}}/documentation/streams/tutorial">Tutorial: Write App</a>
-      </div>
+    <div class="sub-nav-sticky">
+        <div class="sticky-top">
+            <div style="height:35px">
+                <a href="/{{version}}/documentation/streams/">Introduction</a>
+                <a href="/{{version}}/documentation/streams/quickstart">Run Demo App</a>
+                <a href="/{{version}}/documentation/streams/tutorial">Tutorial: Write App</a>
+                <a href="/{{version}}/documentation/streams/core-concepts">Concepts</a>
+                <a href="/{{version}}/documentation/streams/architecture">Architecture</a>
+                <a class="active-menu-item" href="/{{version}}/documentation/streams/developer-guide/">Developer Guide</a>
+                <a href="/{{version}}/documentation/streams/upgrade-guide">Upgrade</a>
+            </div>
+        </div>
     </div>
-  </div>
 
                 
   <div class="section" id="developer-guide">
@@ -57,7 +59,7 @@
               </div>
 
     <div class="pagination">
-        <a href="/{{version}}/documentation/streams/" class="pagination__btn pagination__btn__prev">Previous</a>
+        <a href="/{{version}}/documentation/streams/architecture" class="pagination__btn pagination__btn__prev">Previous</a>
         <a href="/{{version}}/documentation/streams/developer-guide/write-streams" class="pagination__btn pagination__btn__next">Next</a>
     </div>
 </script>
diff --git a/10/streams/developer-guide/interactive-queries.html b/10/streams/developer-guide/interactive-queries.html
index 543a705..f93d2d6 100644
--- a/10/streams/developer-guide/interactive-queries.html
+++ b/10/streams/developer-guide/interactive-queries.html
@@ -35,7 +35,7 @@
         <span id="streams-developer-guide-interactive-queries"></span><h1>Interactive Queries<a class="headerlink" href="#interactive-queries" title="Permalink to this headline"></a></h1>
         <p>Interactive queries allow you to leverage the state of your application from outside your application. The Kafka Streams API enables your applications to be queryable.</p>
         <div class="contents local topic" id="table-of-contents">
-            <p class="topic-title first">Table of Contents</p>
+            <p class="topic-title first"><b>Table of Contents</b></p>
             <ul class="simple">
                 <li><a class="reference internal" href="#querying-local-state-stores-for-an-app-instance" id="id3">Querying local state stores for an app instance</a><ul>
                     <li><a class="reference internal" href="#querying-local-key-value-stores" id="id4">Querying local key-value stores</a></li>
@@ -54,7 +54,7 @@
         </div>
         <p>The full state of your application is typically <a class="reference internal" href="../architecture.html#streams-architecture-state"><span class="std std-ref">split across many distributed instances of your application</span></a>, and across many state stores that are managed locally by these application instances.</p>
         <div class="figure align-center">
-            <img class="centered" src="/{{version}}/images/streams-interactive-queries-03.png">
+            <a class="reference internal image-reference" href="../../../images/streams-interactive-queries-03.png"><img alt="../../../images/streams-interactive-queries-03.png" src="../../../images/streams-interactive-queries-03.png" style="width: 400pt; height: 400pt;" /></a>
         </div>
         <p>There are local and remote components to interactively querying the state of your application.</p>
         <dl class="docutils">
@@ -108,7 +108,7 @@
             <p>A Kafka Streams application typically runs on multiple instances.  The state that is locally available on any given instance is only a subset of the <a class="reference internal" href="../architecture.html#streams-architecture-state"><span class="std std-ref">application&#8217;s entire state</span></a>.  Querying the local stores on an instance will only return data locally available on that particular instance.</p>
             <p>The method <code class="docutils literal"><span class="pre">KafkaStreams#store(...)</span></code> finds an application instance&#8217;s local state stores by name and type.</p>
             <div class="figure align-center" id="id1">
-                <img class="centered" src="/{{version}}/images/streams-interactive-queries-api-01.png">
+                <a class="reference internal image-reference" href="../../../images/streams-interactive-queries-api-01.png"><img alt="../../../images/streams-interactive-queries-api-01.png" src="../../../images/streams-interactive-queries-api-01.png" style="width: 500pt;" /></a>
                 <p class="caption"><span class="caption-text">Every application instance can directly query any of its local state stores.</span></p>
             </div>
             <p>The <em>name</em> of a state store is defined when you create the store. You can create the store explicitly by using the Processor API or implicitly by using stateful operations in the DSL.</p>
@@ -357,7 +357,7 @@
                 <li>In the RPC layer, <a class="reference internal" href="#streams-developer-guide-interactive-queries-discover-app-instances-and-stores"><span class="std std-ref">discover remote application instances</span></a> and their state stores and <a class="reference internal" href="#streams-developer-guide-interactive-queries-local-stores"><span class="std std-ref">query locally available state stores</span></a> to make the full state of your application queryable. The remote ap [...]
             </ol>
             <div class="figure align-center" id="id2">
-                <img class="centered" src="/{{version}}/images/streams-interactive-queries-api-02.png">
+                <a class="reference internal image-reference" href="../../../images/streams-interactive-queries-api-02.png"><img alt="../../../images/streams-interactive-queries-api-02.png" src="../../../images/streams-interactive-queries-api-02.png" style="width: 500pt;" /></a>
                 <p class="caption"><span class="caption-text">Discover any running instances of the same application as well as the respective RPC endpoints they expose for
 interactive queries</span></p>
             </div>
@@ -373,7 +373,7 @@ interactive queries</span></p>
                     The value of this configuration property will vary across the instances of your application.
                     When this property is set, Kafka Streams will keep track of the RPC endpoint information for every instance of an application, its state stores, and assigned stream partitions through instances of <a class="reference external" href="../javadocs/org/apache/kafka/streams/state/StreamsMetadata.html">StreamsMetadata</a>.</p>
                 <div class="admonition tip">
-                    <p class="first admonition-title">Tip</p>
+                    <p><b>Tip</b></p>
                     <p class="last">Consider leveraging the exposed RPC endpoints of your application for further functionality, such as
                         piggybacking additional inter-application communication that goes beyond interactive queries.</p>
                 </div>
diff --git a/10/streams/developer-guide/memory-mgmt.html b/10/streams/developer-guide/memory-mgmt.html
index d93b5ed..b9ee1f3 100644
--- a/10/streams/developer-guide/memory-mgmt.html
+++ b/10/streams/developer-guide/memory-mgmt.html
@@ -37,7 +37,7 @@
       before the records are written to state stores or forwarded downstream to other nodes.</p>
     <p>The record caches are implemented slightly different in the DSL and Processor API.</p>
     <div class="contents local topic" id="table-of-contents">
-      <p class="topic-title first">Table of Contents</p>
+      <p class="topic-title first"><b>Table of Contents</b></p>
       <ul class="simple">
         <li><a class="reference internal" href="#record-caches-in-the-dsl" id="id1">Record caches in the DSL</a></li>
         <li><a class="reference internal" href="#record-caches-in-the-processor-api" id="id2">Record caches in the Processor API</a></li>
@@ -143,7 +143,7 @@
         </li>
       </ul>
       <div class="figure align-center">
-        <img class="centered" src="/{{version}}/images/streams-cache-and-commit-interval.png">
+        <a class="reference internal image-reference" href="../../../images/streams-cache-and-commit-interval.png"><img alt="../../../images/streams-cache-and-commit-interval.png" src="../../../images/streams-cache-and-commit-interval.png" style="width: 500pt; height: 400pt;" /></a>
       </div>
     </div>
     <div class="section" id="record-caches-in-the-processor-api">
@@ -185,7 +185,7 @@
           <code class="docutils literal"><span class="pre">rocksdb.config.setter</span></code> configuration.</li>
       </ul>
       <div class="admonition tip">
-        <p class="first admonition-title">Tip</p>
+        <p><b>Tip</b></p>
         <p><strong>Iterators should be closed explicitly to release resources:</strong> Store iterators (e.g., <code class="docutils literal"><span class="pre">KeyValueIterator</span></code> and <code class="docutils literal"><span class="pre">WindowStoreIterator</span></code>) must be closed explicitly upon completeness to release resources such as open file handlers and in-memory read buffers, or use try-with-resources statement (available since JDK7) for this Closeable class.</p>
         <p class="last">Otherwise, stream application&#8217;s memory usage keeps increasing when running until it hits an OOM.</p>
 </div>
diff --git a/10/streams/developer-guide/processor-api.html b/10/streams/developer-guide/processor-api.html
index fd7673d..5ed569a 100644
--- a/10/streams/developer-guide/processor-api.html
+++ b/10/streams/developer-guide/processor-api.html
@@ -38,7 +38,7 @@
             processors with their associated state stores to compose the processor topology that represents a customized processing
             logic.</p>
         <div class="contents local topic" id="table-of-contents">
-            <p class="topic-title first">Table of Contents</p>
+            <p class="topic-title first"><b>Table of Contents</b></p>
             <ul class="simple">
                 <li><a class="reference internal" href="#overview" id="id1">Overview</a></li>
                 <li><a class="reference internal" href="#defining-a-stream-processor" id="id2">Defining a Stream Processor</a></li>
@@ -57,7 +57,7 @@
             <p>The Processor API can be used to implement both <strong>stateless</strong> as well as <strong>stateful</strong> operations, where the latter is
                 achieved through the use of <a class="reference internal" href="#streams-developer-guide-state-store"><span class="std std-ref">state stores</span></a>.</p>
             <div class="admonition tip">
-                <p class="first admonition-title">Tip</p>
+                <p><b>Tip</b></p>
                 <p class="last"><strong>Combining the DSL and the Processor API:</strong>
                     You can combine the convenience of the DSL with the power and flexibility of the Processor API as described in the
                     section <a class="reference internal" href="dsl-api.html#streams-developer-guide-dsl-process"><span class="std std-ref">Applying processors and transformers (Processor API integration)</span></a>.</p>
diff --git a/10/streams/developer-guide/running-app.html b/10/streams/developer-guide/running-app.html
index ea5e87c..253866b 100644
--- a/10/streams/developer-guide/running-app.html
+++ b/10/streams/developer-guide/running-app.html
@@ -35,7 +35,7 @@
 <span id="streams-developer-guide-execution"></span><h1>Running Streams Applications<a class="headerlink" href="#running-streams-applications" title="Permalink to this headline"></a></h1>
 <p>You can run Java applications that use the Kafka Streams library without any additional configuration or requirements.</p>
 <div class="contents local topic" id="table-of-contents">
-<p class="topic-title first">Table of Contents</p>
+<p class="topic-title first"><b>Table of Contents</b></p>
 <ul class="simple">
 <li><a class="reference internal" href="#starting-a-kafka-streams-application" id="id3">Starting a Kafka Streams application</a></li>
 <li><a class="reference internal" href="#elastic-scaling-of-your-application" id="id4">Elastic scaling of your application</a><ul>
@@ -53,7 +53,7 @@
               also provides the ability to receive notification of the various states of the application. The ability to monitor the runtime
               status is discussed in <a class="reference internal" href="../monitoring.html#streams-monitoring"><span class="std std-ref">the monitoring guide</span></a>.</p>
           <div class="contents local topic" id="table-of-contents">
-              <p class="topic-title first">Table of Contents</p>
+              <p class="topic-title first"><b>Table of Contents</b></p>
               <ul class="simple">
                   <li><a class="reference internal" href="#starting-a-kafka-streams-application" id="id3">Starting a Kafka Streams application</a></li>
                   <li><a class="reference internal" href="#elastic-scaling-of-your-application" id="id4">Elastic scaling of your application</a><ul>
@@ -97,11 +97,11 @@ $ java -cp path-to-app-fatjar.jar com.example.MyStreamsApp
                   <p>If you need more processing capacity for your stream processing application, you can simply start another instance of your stream processing application, e.g. on another machine, in order to scale out.  The instances of your application will become aware of each other and automatically begin to share the processing work.  More specifically, what will be handed over from the existing instances to the new instances is (some of) the stream tasks that have been run by th [...]
                   <p>The various instances of your application each run in their own JVM process, which means that each instance can leverage all the processing capacity that is available to their respective JVM process (minus the capacity that any non-Kafka-Streams part of your application may be using).  This explains why running additional instances will grant your application additional processing capacity.  The exact capacity you will be adding by running a new instance depends of c [...]
                   <div class="figure align-center" id="id1">
-                      <img class="centered" src="/{{version}}/images/streams-elastic-scaling-1.png">
+                      <a class="reference internal image-reference" href="../../../images/streams-elastic-scaling-1.png"><img alt="../../../images/streams-elastic-scaling-1.png" src="../../../images/streams-elastic-scaling-1.png" style="width: 500pt; height: 400pt;" /></a>
                       <p class="caption"><span class="caption-text">Before adding capacity: only a single instance of your Kafka Streams application is running.  At this point the corresponding Kafka consumer group of your application contains only a single member (this instance).  All data is being read and processed by this single instance.</span></p>
                   </div>
                   <div class="figure align-center" id="id2">
-                      <img class="centered" src="/{{version}}/images/streams-elastic-scaling-2.png">
+                      <a class="reference internal image-reference" href="../../../images/streams-elastic-scaling-2.png"><img alt="../../../images/streams-elastic-scaling-2.png" src="../../../images/streams-elastic-scaling-2.png" style="width: 500pt; height: 400pt;" /></a>
                       <p class="caption"><span class="caption-text">After adding capacity: now two additional instances of your Kafka Streams application are running, and they have automatically joined the application&#8217;s Kafka consumer group for a total of three current members. These three instances are automatically splitting the processing work between each other. The splitting is based on the Kafka topic partitions from which data is being read.</span></p>
                   </div>
               </div>
@@ -114,7 +114,7 @@ $ java -cp path-to-app-fatjar.jar com.example.MyStreamsApp
                       work plus any internal state of these stream tasks. The state of a stream task is recreated in the target instance
                       from its changelog topic.</p>
                   <div class="figure align-center">
-                      <img class="centered" src="/{{version}}/images/streams-elastic-scaling-3.png">
+                      <a class="reference internal image-reference" href="../../../images/streams-elastic-scaling-3.png"><img alt="../../../images/streams-elastic-scaling-3.png" src="../../../images/streams-elastic-scaling-3.png" style="width: 500pt; height: 400pt;" /></a>
                   </div>
               </div>
               <div class="section" id="state-restoration-during-workload-rebalance">
diff --git a/10/streams/developer-guide/security.html b/10/streams/developer-guide/security.html
index 92aa0f5..2e9b387 100644
--- a/10/streams/developer-guide/security.html
+++ b/10/streams/developer-guide/security.html
@@ -34,7 +34,7 @@
     <div class="section" id="streams-security">
         <span id="streams-developer-guide-security"></span><h1>Streams Security<a class="headerlink" href="#streams-security" title="Permalink to this headline"></a></h1>
         <div class="contents local topic" id="table-of-contents">
-            <p class="topic-title first">Table of Contents</p>
+            <p class="topic-title first"><b>Table of Contents</b></p>
             <ul class="simple">
                 <li><a class="reference internal" href="#required-acl-setting-for-secure-kafka-clusters" id="id1">Required ACL setting for secure Kafka clusters</a></li>
                 <li><a class="reference internal" href="#security-example" id="id2">Security example</a></li>
diff --git a/10/streams/developer-guide/write-streams.html b/10/streams/developer-guide/write-streams.html
index f262b50..c9ca49c 100644
--- a/10/streams/developer-guide/write-streams.html
+++ b/10/streams/developer-guide/write-streams.html
@@ -33,7 +33,7 @@
 
   <div class="section" id="writing-a-streams-application">
     <span id="streams-write-app"></span><h1>Writing a Streams Application<a class="headerlink" href="#writing-a-streams-application" title="Permalink to this headline"></a></h1>
-      <p class="topic-title first">Table of Contents</p>
+      <p class="topic-title first"><b>Table of Contents</b></p>
       <ul class="simple">
           <li><a class="reference internal" href="#libraries-and-maven-artifacts" id="id1">Libraries and Maven artifacts</a></li>
           <li><a class="reference internal" href="#using-kafka-streams-within-your-application-code" id="id2">Using Kafka Streams within your application code</a></li>
@@ -48,6 +48,56 @@
       <dt><a class="reference internal" href="processor-api.html#streams-developer-guide-processor-api"><span class="std std-ref">Processor API</span></a></dt>
       <dd>A low-level API that lets you add and connect processors as well as interact directly with state stores. The Processor API provides you with even more flexibility than the DSL but at the expense of requiring more manual work on the side of the application developer (e.g., more lines of code).</dd>
     </dl>
+      <div class="section" id="libraries-and-maven-artifacts">
+          <span id="streams-developer-guide-maven"></span><h2>Libraries and Maven artifacts</h2>
+          <p>This section lists the Kafka Streams related libraries that are available for writing your Kafka Streams applications.</p>
+          <p>You can define dependencies on the following libraries for your Kafka Streams applications.</p>
+          <table border="1" class="non-scrolling-table docutils">
+              <colgroup>
+                  <col width="14%" />
+                  <col width="19%" />
+                  <col width="12%" />
+                  <col width="55%" />
+              </colgroup>
+              <thead valign="bottom">
+              <tr class="row-odd"><th class="head">Group ID</th>
+                  <th class="head">Artifact ID</th>
+                  <th class="head">Version</th>
+                  <th class="head">Description</th>
+              </tr>
+              </thead>
+              <tbody valign="top">
+              <tr class="row-even"><td><code class="docutils literal"><span class="pre">org.apache.kafka</span></code></td>
+                  <td><code>kafka-streams</code></td>
+                  <td><code class="docutils literal"><span class="pre">1.0.0</span></code></td>
+                  <td>(Required) Base library for Kafka Streams.</td>
+              </tr>
+              <tr class="row-odd"><td><code class="docutils literal"><span class="pre">org.apache.kafka</span></code></td>
+                  <td><code class="docutils literal"><span class="pre">kafka-clients</span></code></td>
+                  <td><code class="docutils literal"><span class="pre">1.0.0</span></code></td>
+                  <td>(Required) Kafka client library.  Contains built-in serializers/deserializers.</td>
+              </tr>
+              </tbody>
+          </table>
+          <div class="admonition tip">
+              <p><b>Tip</b></p>
+              <p class="last">See the section <a class="reference internal" href="datatypes.html#streams-developer-guide-serdes"><span class="std std-ref">Data Types and Serialization</span></a> for more information about Serializers/Deserializers.</p>
+          </div>
+          <p>Example <code class="docutils literal"><span class="pre">pom.xml</span></code> snippet when using Maven:</p>
+          <div class="highlight-xml"><div class="highlight"><pre><span></span><span class="nt">&lt;dependency&gt;</span>
+    <span class="nt">&lt;groupId&gt;</span>org.apache.kafka<span class="nt">&lt;/groupId&gt;</span>
+    <span class="nt">&lt;artifactId&gt;</span>kafka-streams<span class="nt">&lt;/artifactId&gt;</span>
+    <span class="nt">&lt;version&gt;</span>1.0.0<span class="nt">&lt;/version&gt;</span>
+<span class="nt">&lt;/dependency&gt;</span>
+<span class="nt">&lt;dependency&gt;</span>
+    <span class="nt">&lt;groupId&gt;</span>org.apache.kafka<span class="nt">&lt;/groupId&gt;</span>
+    <span class="nt">&lt;artifactId&gt;</span>kafka-clients<span class="nt">&lt;/artifactId&gt;</span>
+    <span class="nt">&lt;version&gt;</span>1.0.0<span class="nt">&lt;/version&gt;</span>
+<span class="nt">&lt;/dependency&gt;</span>
+              
+</pre></div>
+          </div>
+      </div>
     <div class="section" id="using-kafka-streams-within-your-application-code">
       <h2>Using Kafka Streams within your application code<a class="headerlink" href="#using-kafka-streams-within-your-application-code" title="Permalink to this headline"></a></h2>
       <p>You can call Kafka Streams from anywhere in your application code, but usually these calls are made within the <code class="docutils literal"><span class="pre">main()</span></code> method of
diff --git a/10/streams/index.html b/10/streams/index.html
index 2bc35ee..1cbd9be 100644
--- a/10/streams/index.html
+++ b/10/streams/index.html
@@ -16,139 +16,141 @@
   <!--#include virtual="../js/templateData.js" -->
 </script>
 <script id="streams-template" type="text/x-handlebars-template">
-    <h1>Kafka Streams API</h1>
-    <div class="sub-nav-sticky">
-        <div class="sticky-top">
-            <div style="height:35px">
+  <h1>Kafka Streams</h1>
+       <div class="sub-nav-sticky">
+          <div class="sticky-top">
+             <div style="height:35px">
                 <a  class="active-menu-item" href="/{{version}}/documentation/streams/">Introduction</a>
-                <a href="/{{version}}/documentation/streams/developer-guide">Developer Guide</a>
-                <a href="/{{version}}/documentation/streams/core-concepts">Concepts</a>
                 <a href="/{{version}}/documentation/streams/quickstart">Run Demo App</a>
                 <a href="/{{version}}/documentation/streams/tutorial">Tutorial: Write App</a>
+                <a href="/{{version}}/documentation/streams/core-concepts">Concepts</a>
+                <a href="/{{version}}/documentation/streams/architecture">Architecture</a>
+                <a href="/{{version}}/documentation/streams/developer-guide/">Developer Guide</a>
+                <a href="/{{version}}/documentation/streams/upgrade-guide">Upgrade</a>
             </div>
         </div>
     </div>
     <h3 class="streams_intro">The easiest way to write mission-critical real-time applications and microservices</h3>
-    <p class="streams__description">Kafka Streams is a client library for building applications and microservices, where the input and output data are stored in Kafka clusters. It combines the simplicity of writing and deploying standard Java and Scala applications on the client side with the benefits of Kafka's server-side cluster technology.</p>
-    <div class="video__series__grid">
-        <div class="yt__video__block">
+       <p class="streams__description">Kafka Streams is a client library for building applications and microservices, where the input and output data are stored in Kafka clusters. It combines the simplicity of writing and deploying standard Java and Scala applications on the client side with the benefits of Kafka's server-side cluster technology.</p>
+       <div class="video__series__grid">
+          <div class="yt__video__block">
             <div class="yt__video__inner__block">
                 <iframe  class="yt_series video_1 active" style="display:block" src="https://www.youtube.com/embed/Z3JKCLG3VP4?rel=0&showinfo=0&end=602" frameborder="0" allowfullscreen></iframe>
                 <iframe  class="yt_series video_2" src="https://www.youtube.com/embed/LxxeXI1mPKo?rel=0&showinfo=0&end=622" frameborder="0" allowfullscreen></iframe>
-                <iframe  class="yt_series video_3" src="https://www.youtube.com/embed/7JYEEx7SBuE?rel=0&showinfo=0&end=557" frameborder="0" allowfullscreen></iframe>
+                <iframe  class="yt_series video_3" src="https://www.youtube.com/embed/7JYEEx7SBuE?rel=0&showinfo=0end=557" frameborder="0" allowfullscreen></iframe>
                 <iframe  class="yt_series video_4" src="https://www.youtube.com/embed/3kJgYIkAeHs?rel=0&showinfo=0&end=564" frameborder="0" allowfullscreen></iframe>
+             </div>
             </div>
-        </div>
-        <div class="video__block">
-            <h3>TOUR OF THE STREAMS API</h3>
-            <div class="video__list">
-                <p class="video__item video_list_1 active" onclick="$('.video__item').removeClass('active'); $(this).addClass('active');$('.yt_series').hide();$('.video_1').show();">
-                    <span class="number">1</span><span class="video__text">Intro to Streams</span>
-                </p>
-                <p class="video__item video_list_2" onclick="$('.video__item').removeClass('active'); $(this).addClass('active');$('.yt_series').hide();$('.video_2').show();">
-                    <span class="number">2</span><span class="video__text">Creating a Streams Application</span>
-                </p>
-                <p class="video__item video_list_3" onclick="$('.video__item').removeClass('active'); $(this).addClass('active');$('.yt_series').hide();$('.video_3').show();">
-                    <span class="number">3</span><span class="video__text">Transforming Data Pt. 1</span>
-                </p>
-                <p class="video__item video_list_4" onclick="$('.video__item').removeClass('active'); $(this).addClass('active');$('.yt_series').hide();$('.video_4').show();">
-                    <span class="number">4</span><span class="video__text">Transforming Data Pt. 11</span>
-                </p>
-            </div>
-        </div>
-    </div>
-    <hr class="separator">
-    <div class="use-item-section">
-        <div class="use__list__sec">
-            <h3>Why you'll love using Kafka Streams!</h3>
-            <ul class="use-feature-list">
-                <li>Elastic, highly scalable, fault-tolerant</li>
-                <li>Deploy to containers, VMs, bare metal, cloud</li>
-                <li>Equally viable for small, medium, &amp; large use cases</li>
-                <li>Fully integrated with Kafka security</li>
-                <li>Write standard Java applications</li>
-                <li>Exactly-once processing semantics</li>
-                <li>No seperate processing cluster required</li>
-                <li>Develop on Mac, Linux, Windows</li>
-
-            </ul>
-        </div>
-        <div class="first__app__cta">
-            <a href="/{{version}}/documentation/streams/tutorial" class="first__app__btn">Write your first app</a>
-        </div>
-    </div>
-    <hr class="separator">
-    <h3 class="stream__text">Streams API use cases</h3>
-    <div class="customers__grid">
-        <div class="customer__grid">
-            <div class="customer__item streams_logo_grid streams__ny__grid">
-                <a href="https://open.nytimes.com/publishing-with-apache-kafka-at-the-new-york-times-7f0e3b7d2077" target="_blank" class="grid__logo__link">
-                    <span class="grid__item__logo" style="background-image: url('/images/powered-by/NYT.jpg');"></span>
-                </a>
-                <p class="grid__item__customer__description extra__space">
-                    <a href="https://open.nytimes.com/publishing-with-apache-kafka-at-the-new-york-times-7f0e3b7d2077" target="_blank">The New York Times uses Apache Kafka </a>and the Kafka Streams API to store and distribute, in real-time, published content to the various applications and systems that make it available to the readers.
-                </p>
-            </div>
-        </div>
-        <div class="customer__grid">
-            <div class="customer__item  streams_logo_grid streams__zalando__grid">
-                <a href="https://www.confluent.io/blog/ranking-websites-real-time-apache-kafkas-streams-api/" target="_blank" class="grid__logo__link">
-                    <span class="grid__item__logo" style="background-image: url('/images/powered-by/zalando.jpg');"></span>
-                </a>
-                <p class="grid__item__customer__description extra__space">As the leading online fashion retailer in Europe, Zalando uses Kafka as an ESB (Enterprise Service Bus), which helps us in transitioning from a monolithic to a micro services architecture. Using Kafka for processing
-                    <a href="https://www.confluent.io/blog/ranking-websites-real-time-apache-kafkas-streams-api/" target='blank'> event streams</a> enables our technical team to do near-real time business intelligence.
-                </p>
-            </div>
-        </div>
-        <div class="customer__grid">
-            <div class="customer__item  streams_logo_grid streams__line__grid">
-                <a href="https://engineering.linecorp.com/en/blog/detail/80" target="_blank" class="grid__logo__link">
-                    <span class="grid__item__logo" style="background-image: url('/images/powered-by/line.svg');width:9rem"></span>
-                </a>
-                <p class="grid__item__customer__description extra__space"><a href="https://engineering.linecorp.com/en/blog/detail/80" target="_blank">LINE uses Apache Kafka</a> as a central datahub for our services to communicate to one another. Hundreds of billions of messages are produced daily and are used to execute various business logic, threat detection, search indexing and data analysis. LINE leverages Kafka Streams to reliably transform and filter topics enabling sub topics con [...]
-            </div>
-        </div>
-        <div class="customer__grid">
-            <div class="customer__item streams_logo_grid streams__ny__grid">
-                <a href="https://medium.com/@Pinterest_Engineering/using-kafka-streams-api-for-predictive-budgeting-9f58d206c996" target="_blank" class="grid__logo__link">
-                    <span class="grid__item__logo" style="background-image: url('/images/powered-by/pinterest.png');"></span>
-                </a>
-                <p class="grid__item__customer__description">
-                    <a href="https://medium.com/@Pinterest_Engineering/using-kafka-streams-api-for-predictive-budgeting-9f58d206c996" target="_blank">Pinterest uses Apache Kafka and the Kafka Streams API</a> at large scale to power the real-time, predictive budgeting system of their advertising infrastructure. With Kafka Streams, spend predictions are more accurate than ever.
-                </p>
-            </div>
-        </div>
-        <div class="customer__grid">
-            <div class="customer__item  streams_logo_grid streams__rabobank__grid">
-                <a href="https://www.confluent.io/blog/real-time-financial-alerts-rabobank-apache-kafkas-streams-api/" target="_blank" class="grid__logo__link">
-                    <span class="grid__item__logo" style="background-image: url('/images/powered-by/rabobank.jpg');"></span>
-                </a>
-                <p class="grid__item__customer__description">Rabobank is one of the 3 largest banks in the Netherlands. Its digital nervous system, the Business Event Bus, is powered by Apache Kafka. It is used by an increasing amount of financial processes and services, one of which is Rabo Alerts. This service alerts customers in real-time upon financial events and is <a href="https://www.confluent.io/blog/real-time-financial-alerts-rabobank-apache-kafkas-streams-api/" target="_blank"> [...]
-            </div>
-        </div>
-        <div class="customer__grid">
-            <div class="customer__item streams_logo_grid streams__ny__grid">
-                <a href="https://speakerdeck.com/xenji/kafka-and-debezium-at-trivago-code-dot-talks-2017-edition" target="_blank" class="grid__logo__link">
-                    <span class="grid__item__logo" style="background-image: url('/images/powered-by/trivago.png');"></span>
-                </a>
-                <p class="grid__item__customer__description">
-                    Trivago is a global hotel search platform. We are focused on reshaping the way travelers search for and compare hotels, while enabling hotel advertisers to grow their businesses by providing access to a broad audience of travelers via our websites and apps. As of 2017, we offer access to approximately 1.8 million hotels and other accommodations in over 190 countries. We use Kafka, Kafka Connect, and Kafka Streams to <a href="https://speakerdeck.com/xenji/kafka-and-deb [...]
-                </p>
+            <div class="video__block">
+                <h3>TOUR OF THE STREAMS API</h3>
+                <div class="video__list">
+                   <p class="video__item video_list_1 active" onclick="$('.video__item').removeClass('active'); $(this).addClass('active');$('.yt_series').hide();$('.video_1').show();">
+                       <span class="number">1</span><span class="video__text">Intro to Streams</span>
+                   </p>
+                   <p class="video__item video_list_2" onclick="$('.video__item').removeClass('active'); $(this).addClass('active');$('.yt_series').hide();$('.video_2').show();">
+                       <span class="number">2</span><span class="video__text">Creating a Streams Application</span>
+                   </p>
+                   <p class="video__item video_list_3" onclick="$('.video__item').removeClass('active'); $(this).addClass('active');$('.yt_series').hide();$('.video_3').show();">
+                       <span class="number">3</span><span class="video__text">Transforming Data Pt. 1</span>
+                   </p>
+                   <p class="video__item video_list_4" onclick="$('.video__item').removeClass('active'); $(this).addClass('active');$('.yt_series').hide();$('.video_4').show();">
+                      <span class="number">4</span><span class="video__text">Transforming Data Pt. 11</span>
+                   </p>
+                </div>
             </div>
-        </div>
-
-    </div>
-    <h3 style="margin-top: 5.3rem;">Hello Kafka Streams</h3>
-    <p>The code example below implements a WordCount application that is elastic, highly scalable, fault-tolerant, stateful, and ready to run in production at large scale</p>
-
-    <div class="code-example">
-        <div class="btn-group">
-            <a class="selected b-java-8" data-section="java-8">Java 8+</a>
-            <a class="b-java-7" data-section="java-7">Java 7</a>
-            <a class="b-scala" data-section="scala">Scala</a>
-        </div>
-
-        <div class="code-example__snippet b-java-8 selected">
+       </div>
+       <hr class="separator"> 
+       <div class="use-item-section">
+           <div class="use__list__sec">
+               <h3>Why you'll love using Kafka Streams!</h3>
+               <ul class="use-feature-list">
+                  <li>Elastic, highly scalable, fault-tolerant</li>
+                  <li>Deploy to containers, VMs, bare metal, cloud</li>
+                  <li>Equally viable for small, medium, &amp; large use cases</li>
+                  <li>Fully integrated with Kafka security</li>
+                  <li>Write standard Java applications</li>
+                  <li>Exactly-once processing semantics</li>
+                  <li>No seperate processing cluster required</li>
+                  <li>Develop on Mac, Linux, Windows</li>
+                  
+               </ul>
+           </div>
+           <div class="first__app__cta">
+               <a href="/{{version}}/documentation/streams/tutorial" class="first__app__btn">Write your first app</a>
+           </div>
+       </div>
+       <hr class="separator"> 
+        <h3 class="stream__text">Streams API use cases</h3>
+         <div class="customers__grid">
+           <div class="customer__grid">
+             <div class="customer__item streams_logo_grid streams__ny__grid">
+               <a href="https://open.nytimes.com/publishing-with-apache-kafka-at-the-new-york-times-7f0e3b7d2077" target="_blank" class="grid__logo__link">
+                 <span class="grid__item__logo" style="background-image: url('/images/powered-by/NYT.jpg');"></span>
+               </a>
+               <p class="grid__item__customer__description extra__space">
+                 <a href="https://open.nytimes.com/publishing-with-apache-kafka-at-the-new-york-times-7f0e3b7d2077" target="_blank">The New York Times uses Apache Kafka </a>and the Kafka Streams API to store and distribute, in real-time, published content to the various applications and systems that make it available to the readers.
+               </p>
+             </div>
+           </div>
+           <div class="customer__grid">
+             <div class="customer__item  streams_logo_grid streams__zalando__grid">
+               <a href="https://www.confluent.io/blog/ranking-websites-real-time-apache-kafkas-streams-api/" target="_blank" class="grid__logo__link">
+                 <span class="grid__item__logo" style="background-image: url('/images/powered-by/zalando.jpg');"></span>
+               </a>
+               <p class="grid__item__customer__description extra__space">As the leading online fashion retailer in Europe, Zalando uses Kafka as an ESB (Enterprise Service Bus), which helps us in transitioning from a monolithic to a micro services architecture. Using Kafka for processing
+                 <a href="https://www.confluent.io/blog/ranking-websites-real-time-apache-kafkas-streams-api/" target='blank'> event streams</a> enables our technical team to do near-real time business intelligence.
+               </p>
+           </div>
+           </div>  
+           <div class="customer__grid">
+             <div class="customer__item  streams_logo_grid streams__line__grid">
+               <a href="https://engineering.linecorp.com/en/blog/detail/80" target="_blank" class="grid__logo__link">
+                 <span class="grid__item__logo" style="background-image: url('/images/powered-by/line.svg');width:9rem"></span>
+               </a>
+                 <p class="grid__item__customer__description extra__space"><a href="https://engineering.linecorp.com/en/blog/detail/80" target="_blank">LINE uses Apache Kafka</a> as a central datahub for our services to communicate to one another. Hundreds of billions of messages are produced daily and are used to execute various business logic, threat detection, search indexing and data analysis. LINE leverages Kafka Streams to reliably transform and filter topics enabling sub topics co [...]
+             </div>
+           </div>
+           <div class="customer__grid">
+             <div class="customer__item streams_logo_grid streams__ny__grid">
+               <a href="https://medium.com/@Pinterest_Engineering/using-kafka-streams-api-for-predictive-budgeting-9f58d206c996" target="_blank" class="grid__logo__link">
+                 <span class="grid__item__logo" style="background-image: url('/images/powered-by/pinterest.png');"></span>
+               </a>
+               <p class="grid__item__customer__description">
+                   <a href="https://medium.com/@Pinterest_Engineering/using-kafka-streams-api-for-predictive-budgeting-9f58d206c996" target="_blank">Pinterest uses Apache Kafka and the Kafka Streams API</a> at large scale to power the real-time, predictive budgeting system of their advertising infrastructure. With Kafka Streams, spend predictions are more accurate than ever.
+               </p>
+             </div>
+           </div> 
+           <div class="customer__grid">
+             <div class="customer__item  streams_logo_grid streams__rabobank__grid">
+               <a href="https://www.confluent.io/blog/real-time-financial-alerts-rabobank-apache-kafkas-streams-api/" target="_blank" class="grid__logo__link">
+                 <span class="grid__item__logo" style="background-image: url('/images/powered-by/rabobank.jpg');"></span>
+               </a>
+                 <p class="grid__item__customer__description">Rabobank is one of the 3 largest banks in the Netherlands. Its digital nervous system, the Business Event Bus, is powered by Apache Kafka. It is used by an increasing amount of financial processes and services, one of which is Rabo Alerts. This service alerts customers in real-time upon financial events and is <a href="https://www.confluent.io/blog/real-time-financial-alerts-rabobank-apache-kafkas-streams-api/" target="_blank" [...]
+             </div>
+           </div>        
+           <div class="customer__grid">
+             <div class="customer__item streams_logo_grid streams__ny__grid">
+               <a href="https://speakerdeck.com/xenji/kafka-and-debezium-at-trivago-code-dot-talks-2017-edition" target="_blank" class="grid__logo__link">
+                 <span class="grid__item__logo" style="background-image: url('/images/powered-by/trivago.png');"></span>
+               </a>
+               <p class="grid__item__customer__description">
+                   Trivago is a global hotel search platform. We are focused on reshaping the way travelers search for and compare hotels, while enabling hotel advertisers to grow their businesses by providing access to a broad audience of travelers via our websites and apps. As of 2017, we offer access to approximately 1.8 million hotels and other accommodations in over 190 countries. We use Kafka, Kafka Connect, and Kafka Streams to <a href="https://speakerdeck.com/xenji/kafka-and-debe [...]
+               </p>
+             </div>
+           </div>  
+         
+       </div>
+       <h3 style="margin-top: 5.3rem;">Hello Kafka Streams</h3>
+       <p>The code example below implements a WordCount application that is elastic, highly scalable, fault-tolerant, stateful, and ready to run in production at large scale</p>
+       
+       <div class="code-example">
+           <div class="btn-group">
+               <a class="selected b-java-8" data-section="java-8">Java 8+</a>
+               <a class="b-java-7" data-section="java-7">Java 7</a>
+               <a class="b-scala" data-section="scala">Scala</a>
+           </div>
+       
+           <div class="code-example__snippet b-java-8 selected">
                <pre class="brush: java;">
                    import org.apache.kafka.common.serialization.Serdes;
                    import org.apache.kafka.streams.KafkaStreams;
@@ -158,19 +160,19 @@
                    import org.apache.kafka.streams.kstream.Materialized;
                    import org.apache.kafka.streams.kstream.Produced;
                    import org.apache.kafka.streams.state.KeyValueStore;
-
+       
                    import java.util.Arrays;
                    import java.util.Properties;
-
+       
                    public class WordCountApplication {
-
+       
                        public static void main(final String[] args) throws Exception {
                            Properties config = new Properties();
                            config.put(StreamsConfig.APPLICATION_ID_CONFIG, "wordcount-application");
                            config.put(StreamsConfig.BOOTSTRAP_SERVERS_CONFIG, "kafka-broker1:9092");
                            config.put(StreamsConfig.DEFAULT_KEY_SERDE_CLASS_CONFIG, Serdes.String().getClass());
                            config.put(StreamsConfig.DEFAULT_VALUE_SERDE_CLASS_CONFIG, Serdes.String().getClass());
-
+       
                            StreamsBuilder builder = new StreamsBuilder();
                            KStream&lt;String, String&gt; textLines = builder.stream("TextLinesTopic");
                            KTable&lt;String, Long&gt; wordCounts = textLines
@@ -178,16 +180,16 @@
                                .groupBy((key, word) -> word)
                                .count(Materialized.&lt;String, Long, KeyValueStore&lt;Bytes, byte[]&gt;&gt;as("counts-store"));
                            wordCounts.toStream().to("WordsWithCountsTopic", Produced.with(Serdes.String(), Serdes.Long()));
-
+       
                            KafkaStreams streams = new KafkaStreams(builder.build(), config);
                            streams.start();
                        }
-
+       
                    }
                </pre>
-        </div>
-
-        <div class="code-example__snippet b-java-7">
+           </div>
+       
+           <div class="code-example__snippet b-java-7">
                <pre class="brush: java;">
                    import org.apache.kafka.common.serialization.Serdes;
                    import org.apache.kafka.streams.KafkaStreams;
@@ -202,16 +204,16 @@
 
                    import java.util.Arrays;
                    import java.util.Properties;
-
+       
                    public class WordCountApplication {
-
+       
                        public static void main(final String[] args) throws Exception {
                            Properties config = new Properties();
                            config.put(StreamsConfig.APPLICATION_ID_CONFIG, "wordcount-application");
                            config.put(StreamsConfig.BOOTSTRAP_SERVERS_CONFIG, "kafka-broker1:9092");
                            config.put(StreamsConfig.DEFAULT_KEY_SERDE_CLASS_CONFIG, Serdes.String().getClass());
                            config.put(StreamsConfig.DEFAULT_VALUE_SERDE_CLASS_CONFIG, Serdes.String().getClass());
-
+       
                            StreamsBuilder builder = new StreamsBuilder();
                            KStream&lt;String, String&gt; textLines = builder.stream("TextLinesTopic");
                            KTable&lt;String, Long&gt; wordCounts = textLines
@@ -231,30 +233,30 @@
 
 
                            wordCounts.toStream().to("WordsWithCountsTopic", Produced.with(Serdes.String(), Serdes.Long()));
-
+       
                            KafkaStreams streams = new KafkaStreams(builder.build(), config);
                            streams.start();
                        }
-
+       
                    }
                </pre>
-        </div>
-
-        <div class="code-example__snippet b-scala">
+           </div>
+       
+           <div class="code-example__snippet b-scala">
                <pre class="brush: scala;">
                    import java.lang.Long
                    import java.util.Properties
                    import java.util.concurrent.TimeUnit
-
+       
                    import org.apache.kafka.common.serialization._
                    import org.apache.kafka.streams._
                    import org.apache.kafka.streams.kstream.{KeyValueMapper, Materialized, Produced, ValueMapper}
                    import org.apache.kafka.streams.state.KeyValueStore;
-
+       
                    import scala.collection.JavaConverters.asJavaIterableConverter
-
+       
                    object WordCountApplication {
-
+       
                        def main(args: Array[String]) {
                            val config: Properties = {
                                val p = new Properties()
@@ -264,7 +266,7 @@
                                p.put(StreamsConfig.DEFAULT_VALUE_SERDE_CLASS_CONFIG, Serdes.String().getClass)
                                p
                            }
-
+       
                            val builder: StreamsBuilder = new StreamsBuilder()
                            val textLines: KStream[String, String] = builder.stream("TextLinesTopic")
                            val wordCounts: KTable[String, Long] = textLines
@@ -272,38 +274,38 @@
                                .groupBy((_, word) => word)
                                .count(Materialized.as("counts-store").asInstanceOf[Materialized[String, Long, KeyValueStore[Bytes, Array[Byte]]]])
                            wordCounts.toStream().to("WordsWithCountsTopic", Produced.with(Serdes.String(), Serdes.Long()))
-
+       
                            val streams: KafkaStreams = new KafkaStreams(builder.build(), config)
                            streams.start()
-
+       
                            Runtime.getRuntime.addShutdownHook(new Thread(() => {
                                streams.close(10, TimeUnit.SECONDS)
                            }))
                        }
-
+       
                    }
                </pre>
-        </div>
-    </div>
-
-    <div class="pagination">
-        <a href="#" class="pagination__btn pagination__btn__prev pagination__btn--disabled">Previous</a>
-        <a href="/{{version}}/documentation/streams/quickstart" class="pagination__btn pagination__btn__next">Next</a>
-    </div>
-
+           </div>
+       </div>
+       
+       <div class="pagination">
+           <a href="/{{version}}/documentation" class="pagination__btn pagination__btn__prev">Previous</a>
+           <a href="/{{version}}/documentation/streams/quickstart" class="pagination__btn pagination__btn__next">Next</a>
+       </div>
+     
 </script>
 <!--#include virtual="../../includes/_header.htm" -->
 <!--#include virtual="../../includes/_top.htm" -->
 <div class="content documentation documentation--current">
-    <!--#include virtual="../../includes/_nav.htm" -->
-    <div class="right">
-        <!--#include virtual="../../includes/_docs_banner.htm" -->
-        <ul class="breadcrumbs">
-            <li><a href="/documentation">Documentation</a>
-            </li>
-        </ul>
-        <div class="p-streams"></div>
-    </div>
+  <!--#include virtual="../../includes/_nav.htm" -->
+  <div class="right">
+    <!--#include virtual="../../includes/_docs_banner.htm" -->
+    <ul class="breadcrumbs">
+      <li><a href="/documentation">Documentation</a>
+      </li>
+    </ul>
+    <div class="p-streams"></div>
+  </div>
 </div>
 <!--#include virtual="../../includes/_footer.htm" -->
 <script>
diff --git a/10/streams/quickstart.html b/10/streams/quickstart.html
index 4993003..b73b3f9 100644
--- a/10/streams/quickstart.html
+++ b/10/streams/quickstart.html
@@ -18,18 +18,20 @@
 
 <script id="content-template" type="text/x-handlebars-template">
 
-<h1>Run Streams Demo Application</h1>
-<div class="sub-nav-sticky">
+  <h1>Run Streams Demo Application</h1>
+    <div class="sub-nav-sticky">
         <div class="sticky-top">
             <div style="height:35px">
                 <a href="/{{version}}/documentation/streams/">Introduction</a>
-                <a href="/{{version}}/documentation/streams/developer-guide">Developer Guide</a>
-                <a href="/{{version}}/documentation/streams/core-concepts">Concepts</a>
-                <a class="active-menu-item"  href="/{{version}}/documentation/streams/quickstart">Run Demo App</a>
+                <a class="active-menu-item" href="/{{version}}/documentation/streams/quickstart">Run Demo App</a>
                 <a href="/{{version}}/documentation/streams/tutorial">Tutorial: Write App</a>
+                <a href="/{{version}}/documentation/streams/core-concepts">Concepts</a>
+                <a href="/{{version}}/documentation/streams/architecture">Architecture</a>
+                <a href="/{{version}}/documentation/streams/developer-guide/">Developer Guide</a>
+                <a href="/{{version}}/documentation/streams/upgrade-guide">Upgrade</a>
             </div>
         </div>
-</div>  
+    </div>
 <p>
   This tutorial assumes you are starting fresh and have no existing Kafka or ZooKeeper data. However, if you have already started Kafka and
   ZooKeeper, feel free to skip the first two steps.
@@ -354,7 +356,7 @@ Looking beyond the scope of this concrete example, what Kafka Streams is doing h
         <!--#include virtual="../../includes/_docs_banner.htm" -->
         <ul class="breadcrumbs">
             <li><a href="/documentation">Documentation</a></li>
-            <li><a href="/documentation/streams">Kafka Streams</a></li>
+            <li><a href="/documentation/streams">Streams</a></li>
         </ul>
         <div class="p-content"></div>
     </div>
@@ -362,12 +364,12 @@ Looking beyond the scope of this concrete example, what Kafka Streams is doing h
 <!--#include virtual="../../includes/_footer.htm" -->
 <script>
 $(function() {
-           // Show selected style on nav item
-          $('.b-nav__streams').addClass('selected');
+  // Show selected style on nav item
+  $('.b-nav__streams').addClass('selected');
 
-   
-          //sticky secondary nav
-          var $navbar = $(".sub-nav-sticky"),
+
+     //sticky secondary nav
+    var $navbar = $(".sub-nav-sticky"),
                y_pos = $navbar.offset().top,
                height = $navbar.height();
        
@@ -380,7 +382,8 @@ $(function() {
                    $navbar.removeClass("navbar-fixed")
                }
            });
-           // Display docs subnav items
-          $('.b-nav__docs').parent().toggleClass('nav__item__with__subs--expanded');
+
+  // Display docs subnav items
+  $('.b-nav__docs').parent().toggleClass('nav__item__with__subs--expanded');
 });
 </script>
diff --git a/10/streams/tutorial.html b/10/streams/tutorial.html
index bdf3ada..0bc7314 100644
--- a/10/streams/tutorial.html
+++ b/10/streams/tutorial.html
@@ -22,10 +22,12 @@
         <div class="sticky-top">
             <div style="height:35px">
                 <a href="/{{version}}/documentation/streams/">Introduction</a>
-                <a href="/{{version}}/documentation/streams/developer-guide">Developer Guide</a>
-                <a href="/{{version}}/documentation/streams/core-concepts">Concepts</a>
                 <a href="/{{version}}/documentation/streams/quickstart">Run Demo App</a>
                 <a class="active-menu-item" href="/{{version}}/documentation/streams/tutorial">Tutorial: Write App</a>
+                <a href="/{{version}}/documentation/streams/core-concepts">Concepts</a>
+                <a href="/{{version}}/documentation/streams/architecture">Architecture</a>
+                <a href="/{{version}}/documentation/streams/developer-guide/">Developer Guide</a>
+                <a href="/{{version}}/documentation/streams/upgrade-guide">Upgrade</a>
             </div>
         </div>
     </div>
@@ -617,7 +619,7 @@
 
     <div class="pagination">
         <a href="/{{version}}/documentation/streams/quickstart" class="pagination__btn pagination__btn__prev">Previous</a>
-        <a href="/{{version}}/documentation/streams/developer-guide" class="pagination__btn pagination__btn__next">Next</a>
+        <a href="/{{version}}/documentation/streams/core-concepts" class="pagination__btn pagination__btn__next">Next</a>
     </div>
 </script>
 
@@ -631,7 +633,7 @@
         <!--#include virtual="../../includes/_docs_banner.htm" -->
         <ul class="breadcrumbs">
             <li><a href="/documentation">Documentation</a></li>
-            <li><a href="/documentation/streams">Kafka Streams</a></li>
+            <li><a href="/documentation/streams">Streams</a></li>
         </ul>
         <div class="p-content"></div>
     </div>
@@ -639,10 +641,10 @@
 <!--#include virtual="../../includes/_footer.htm" -->
 <script>
 $(function() {
-          // Show selected style on nav item
-          $('.b-nav__streams').addClass('selected');
-  
-          //sticky secondary nav
+  // Show selected style on nav item
+  $('.b-nav__streams').addClass('selected');
+
+     //sticky secondary nav
           var $navbar = $(".sub-nav-sticky"),
                y_pos = $navbar.offset().top,
                height = $navbar.height();
@@ -656,7 +658,8 @@ $(function() {
                    $navbar.removeClass("navbar-fixed")
                }
            });
-           // Display docs subnav items
-           $('.b-nav__docs').parent().toggleClass('nav__item__with__subs--expanded');
+
+  // Display docs subnav items
+  $('.b-nav__docs').parent().toggleClass('nav__item__with__subs--expanded');
 });
 </script>
diff --git a/10/streams/upgrade-guide.html b/10/streams/upgrade-guide.html
index d1726a7..87d34f1 100644
--- a/10/streams/upgrade-guide.html
+++ b/10/streams/upgrade-guide.html
@@ -19,6 +19,19 @@
 
 <script id="content-template" type="text/x-handlebars-template">
     <h1>Upgrade Guide &amp; API Changes</h1>
+    <div class="sub-nav-sticky">
+        <div class="sticky-top">
+            <div style="height:35px">
+                <a href="/{{version}}/documentation/streams/">Introduction</a>
+                <a href="/{{version}}/documentation/streams/quickstart">Run Demo App</a>
+                <a href="/{{version}}/documentation/streams/tutorial">Tutorial: Write App</a>
+                <a href="/{{version}}/documentation/streams/core-concepts">Concepts</a>
+                <a href="/{{version}}/documentation/streams/architecture">Architecture</a>
+                <a href="/{{version}}/documentation/streams/developer-guide/">Developer Guide</a>
+                <a class="active-menu-item" href="/{{version}}/documentation/streams/upgrade-guide">Upgrade</a>
+            </div>
+        </div>
+    </div>
 
     <p>
         If you want to upgrade from 0.11.0.x to 1.0.0 you don't need to do any code changes as the public API is fully backward compatible.
@@ -360,7 +373,7 @@
     </ul>
 
     <div class="pagination">
-        <a href="/{{version}}/documentation/streams/architecture" class="pagination__btn pagination__btn__prev">Previous</a>
+        <a href="/{{version}}/documentation/streams/developer-guide/app-reset-tool" class="pagination__btn pagination__btn__prev">Previous</a>
         <a href="#" class="pagination__btn pagination__btn__next pagination__btn--disabled">Next</a>
     </div>
 </script>
@@ -373,7 +386,7 @@
         <!--#include virtual="../../includes/_docs_banner.htm" -->
         <ul class="breadcrumbs">
             <li><a href="/documentation">Documentation</a></li>
-            <li><a href="/documentation/streams">Kafka Streams</a></li>
+            <li><a href="/documentation/streams">Kafka Streams API</a></li>
         </ul>
         <div class="p-content"></div>
     </div>

-- 
To stop receiving notification emails like this one, please contact
['"commits@kafka.apache.org" <commits@kafka.apache.org>'].

Mime
View raw message