You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@zeppelin.apache.org by mi...@apache.org on 2017/09/21 20:34:02 UTC

svn commit: r1809223 [9/30] - in /zeppelin/site: ./ contribution/ contribution/zeppelinweb/ docs/0.7.3/ docs/0.7.3/assets/ docs/0.7.3/assets/themes/ docs/0.7.3/assets/themes/zeppelin/ docs/0.7.3/assets/themes/zeppelin/bootstrap/ docs/0.7.3/assets/theme...

Added: zeppelin/site/docs/0.7.3/displaysystem/front-end-angular.html
URL: http://svn.apache.org/viewvc/zeppelin/site/docs/0.7.3/displaysystem/front-end-angular.html?rev=1809223&view=auto
==============================================================================
--- zeppelin/site/docs/0.7.3/displaysystem/front-end-angular.html (added)
+++ zeppelin/site/docs/0.7.3/displaysystem/front-end-angular.html Thu Sep 21 20:33:57 2017
@@ -0,0 +1,377 @@
+
+<!DOCTYPE html>
+<html lang="en">
+  <head>
+    <meta charset="utf-8">
+    <title>Apache Zeppelin 0.7.3 Documentation: Front-end Angular API in Apache Zeppelin</title>
+    <meta name="description" content="In addition to the back-end API to handle Angular objects binding, Apache Zeppelin exposes a simple AngularJS z object on the front-end side to expose the same capabilities.">
+    <meta name="author" content="The Apache Software Foundation">
+
+    <!-- Enable responsive viewport -->
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+
+    <!-- Le HTML5 shim, for IE6-8 support of HTML elements -->
+    <!--[if lt IE 9]>
+    <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
+    <![endif]-->
+
+    <link href="//maxcdn.bootstrapcdn.com/font-awesome/4.2.0/css/font-awesome.min.css" rel="stylesheet">
+
+    <!-- Le styles -->
+    <link href="/docs/0.7.3/assets/themes/zeppelin/bootstrap/css/bootstrap.css" rel="stylesheet">
+    <link href="/docs/0.7.3/assets/themes/zeppelin/css/style.css?body=1" rel="stylesheet" type="text/css">
+    <link href="/docs/0.7.3/assets/themes/zeppelin/css/syntax.css" rel="stylesheet"  type="text/css" media="screen" /> 
+    <!-- Le fav and touch icons -->
+    <!-- Update these with your own images
+    <link rel="shortcut icon" href="images/favicon.ico">
+    <link rel="apple-touch-icon" href="images/apple-touch-icon.png">
+    <link rel="apple-touch-icon" sizes="72x72" href="images/apple-touch-icon-72x72.png">
+    <link rel="apple-touch-icon" sizes="114x114" href="images/apple-touch-icon-114x114.png">
+    -->
+
+    <!-- Js -->
+    <script src="https://code.jquery.com/jquery-1.10.2.min.js"></script>
+    <script src="/docs/0.7.3/assets/themes/zeppelin/bootstrap/js/bootstrap.min.js"></script>
+    <script src="/docs/0.7.3/assets/themes/zeppelin/js/docs.js"></script>
+    <script src="/docs/0.7.3/assets/themes/zeppelin/js/anchor.min.js"></script>
+    <script src="/docs/0.7.3/assets/themes/zeppelin/js/toc.js"></script>
+    <script src="/docs/0.7.3/assets/themes/zeppelin/js/lunr.min.js"></script>
+    <script src="/docs/0.7.3/assets/themes/zeppelin/js/search.js"></script>    
+
+    <!-- atom & rss feed -->
+    <link href="/docs/0.7.3/atom.xml" type="application/atom+xml" rel="alternate" title="Sitewide ATOM Feed">
+    <link href="/docs/0.7.3/rss.xml" type="application/rss+xml" rel="alternate" title="Sitewide RSS Feed">
+  </head>
+
+  <body>
+    
+        <div id="menu" class="navbar navbar-inverse navbar-fixed-top" role="navigation">
+      <div class="container">
+        <div class="navbar-header">
+          <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
+            <span class="sr-only">Toggle navigation</span>
+            <span class="icon-bar"></span>
+            <span class="icon-bar"></span>
+            <span class="icon-bar"></span>
+          </button>
+          <div class="navbar-brand">
+            <a class="navbar-brand-main" href="http://zeppelin.apache.org">
+              <img src="/assets/themes/zeppelin/img/zeppelin_logo.png" width="50" alt="I'm zeppelin">
+              <span style="vertical-align:middle">Zeppelin</span>
+            </a>
+            <a class="navbar-brand-version" href="/docs/0.7.3">
+              <span><small>0.7.3</small></span>
+            </a>
+          </div>
+        </div>
+        <nav class="navbar-collapse collapse" role="navigation">
+          <ul class="nav navbar-nav">
+            <li>
+              <a href="#" data-toggle="dropdown" class="dropdown-toggle">Quick Start <b class="caret"></b></a>
+              <ul class="dropdown-menu">
+                <li><a href="/docs/0.7.3/index.html">What is Apache Zeppelin ?</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span><b>Getting Started</b><span></li>
+                <li><a href="/docs/0.7.3/install/install.html">Install</a></li>
+                <li><a href="/docs/0.7.3/install/configuration.html">Configuration</a></li>
+                <li><a href="/docs/0.7.3/quickstart/explorezeppelinui.html">Explore Zeppelin UI</a></li>
+                <li><a href="/docs/0.7.3/quickstart/tutorial.html">Tutorial</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span><b>Basic Feature Guide</b><span></li>
+                <li><a href="/docs/0.7.3/manual/dynamicform.html">Dynamic Form</a></li>
+                <li><a href="/docs/0.7.3/manual/publish.html">Publish your Paragraph</a></li>
+                <li><a href="/docs/0.7.3/manual/notebookashomepage.html">Customize Zeppelin Homepage</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span><b>More</b><span></li>
+                <li><a href="/docs/0.7.3/install/upgrade.html">Upgrade Zeppelin Version</a></li>
+                <li><a href="/docs/0.7.3/install/build.html">Build from source</a></li>
+                <li><a href="/docs/0.7.3/quickstart/install_with_flink_and_spark_cluster.html">Install Zeppelin with Flink and Spark Clusters Tutorial</a></li>
+              </ul>
+            </li>
+            <li>
+              <a href="#" data-toggle="dropdown" class="dropdown-toggle">Interpreter <b class="caret"></b></a>
+              <ul class="dropdown-menu scrollable-menu">
+                <li><a href="/docs/0.7.3/manual/interpreters.html">Overview</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span><b>Usage</b><span></li>
+                <li><a href="/docs/0.7.3/manual/interpreterinstallation.html">Interpreter Installation</a></li>
+                <!--<li><a href="/docs/0.7.3/manual/dynamicinterpreterload.html">Dynamic Interpreter Loading</a></li>-->
+                <li><a href="/docs/0.7.3/manual/dependencymanagement.html">Interpreter Dependency Management</a></li>
+                <li><a href="/docs/0.7.3/manual/userimpersonation.html">Interpreter User Impersonation</a></li>
+                <li><a href="/docs/0.7.3/manual/interpreterexechooks.html">Interpreter Execution Hooks (Experimental)</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span><b>Available Interpreters</b><span></li>
+                <li><a href="/docs/0.7.3/interpreter/alluxio.html">Alluxio</a></li>
+                <li><a href="/docs/0.7.3/interpreter/beam.html">Beam</a></li>
+                <li><a href="/docs/0.7.3/interpreter/bigquery.html">BigQuery</a></li>
+                <li><a href="/docs/0.7.3/interpreter/cassandra.html">Cassandra</a></li>
+                <li><a href="/docs/0.7.3/interpreter/elasticsearch.html">Elasticsearch</a></li>
+                <li><a href="/docs/0.7.3/interpreter/flink.html">Flink</a></li>
+                <li><a href="/docs/0.7.3/interpreter/geode.html">Geode</a></li>
+                <li><a href="/docs/0.7.3/interpreter/hbase.html">HBase</a></li>
+                <li><a href="/docs/0.7.3/interpreter/hdfs.html">HDFS</a></li>
+                <li><a href="/docs/0.7.3/interpreter/hive.html">Hive</a></li>
+                <li><a href="/docs/0.7.3/interpreter/ignite.html">Ignite</a></li>
+                <li><a href="/docs/0.7.3/interpreter/jdbc.html">JDBC</a></li>
+                <li><a href="/docs/0.7.3/interpreter/kylin.html">Kylin</a></li>
+                <li><a href="/docs/0.7.3/interpreter/lens.html">Lens</a></li>
+                <li><a href="/docs/0.7.3/interpreter/livy.html">Livy</a></li>
+                <li><a href="/docs/0.7.3/interpreter/markdown.html">Markdown</a></li>
+                <li><a href="/docs/0.7.3/interpreter/pig.html">Pig</a></li>
+                <li><a href="/docs/0.7.3/interpreter/python.html">Python</a></li>
+                <li><a href="/docs/0.7.3/interpreter/postgresql.html">Postgresql, HAWQ</a></li>
+                <li><a href="/docs/0.7.3/interpreter/r.html">R</a></li>
+                <li><a href="/docs/0.7.3/interpreter/scalding.html">Scalding</a></li>
+                <li><a href="/docs/0.7.3/interpreter/scio.html">Scio</a></li>
+                <li><a href="/docs/0.7.3/interpreter/shell.html">Shell</a></li>
+                <li><a href="/docs/0.7.3/interpreter/spark.html">Spark</a></li>
+              </ul>
+            </li>
+            <li>
+              <a href="#" data-toggle="dropdown" class="dropdown-toggle">Display System <b class="caret"></b></a>
+              <ul class="dropdown-menu">
+                <li class="title"><span><b>Basic Display System</b><span></li>
+                <li><a href="/docs/0.7.3/displaysystem/basicdisplaysystem.html#text">Text</a></li>
+                <li><a href="/docs/0.7.3/displaysystem/basicdisplaysystem.html#html">Html</a></li>
+                <li><a href="/docs/0.7.3/displaysystem/basicdisplaysystem.html#table">Table</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span><b>Angular API</b><span></li>
+                <li><a href="/docs/0.7.3/displaysystem/back-end-angular.html">Angular (backend API)</a></li>
+                <li><a href="/docs/0.7.3/displaysystem/front-end-angular.html">Angular (frontend API)</a></li>
+              </ul>
+            </li>
+            <li>
+              <a href="#" data-toggle="dropdown" class="dropdown-toggle">More<b class="caret"></b></a>
+              <ul class="dropdown-menu scrollable-menu" style="right: 0; left: auto;">
+                <li class="title"><span><b>Notebook Storage</b><span></li>
+                <li><a href="/docs/0.7.3/storage/storage.html#notebook-storage-in-local-git-repository">Git Storage</a></li>
+                <li><a href="/docs/0.7.3/storage/storage.html#notebook-storage-in-s3">S3 Storage</a></li>
+                <li><a href="/docs/0.7.3/storage/storage.html#notebook-storage-in-azure">Azure Storage</a></li>
+                <li><a href="/docs/0.7.3/storage/storage.html#storage-in-zeppelinhub">ZeppelinHub Storage</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span><b>REST API</b><span></li>
+                <li><a href="/docs/0.7.3/rest-api/rest-interpreter.html">Interpreter API</a></li>
+                <li><a href="/docs/0.7.3/rest-api/rest-notebook.html">Notebook API</a></li>
+                <li><a href="/docs/0.7.3/rest-api/rest-notebookRepo.html">Notebook Repository API</a></li>
+                <li><a href="/docs/0.7.3/rest-api/rest-configuration.html">Configuration API</a></li>
+                <li><a href="/docs/0.7.3/rest-api/rest-credential.html">Credential API</a></li>
+                <li><a href="/docs/0.7.3/rest-api/rest-helium.html">Helium API</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span><b>Security</b><span></li>
+                <li><a href="/docs/0.7.3/security/shiroauthentication.html">Shiro Authentication</a></li>                
+                <li><a href="/docs/0.7.3/security/notebook_authorization.html">Notebook Authorization</a></li>
+                <li><a href="/docs/0.7.3/security/datasource_authorization.html">Data Source Authorization</a></li>
+                <li><a href="/docs/0.7.3/security/http_security_headers.html">HTTP Security Headers</a></li>
+                <li><a href="/docs/0.7.3/security/helium_authorization.html">Helium Authorization</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span><b>Advanced</b><span></li>
+                <li><a href="/docs/0.7.3/install/virtual_machine.html">Zeppelin on Vagrant VM</a></li>
+                <li><a href="/docs/0.7.3/install/spark_cluster_mode.html#spark-standalone-mode">Zeppelin on Spark Cluster Mode (Standalone)</a></li>
+                <li><a href="/docs/0.7.3/install/spark_cluster_mode.html#spark-on-yarn-mode">Zeppelin on Spark Cluster Mode (YARN)</a></li>
+                <li><a href="/docs/0.7.3/install/spark_cluster_mode.html#spark-on-mesos-mode">Zeppelin on Spark Cluster Mode (Mesos)</a></li>
+                <li><a href="/docs/0.7.3/install/cdh.html">Zeppelin on CDH</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span><b>Contibute</b><span></li>
+                <li><a href="/docs/0.7.3/development/writingzeppelininterpreter.html">Writing Zeppelin Interpreter</a></li>
+                <li><a href="/docs/0.7.3/development/writingzeppelinvisualization.html">Writing Zeppelin Visualization (Experimental)</a></li>
+                <li><a href="/docs/0.7.3/development/writingzeppelinapplication.html">Writing Zeppelin Application (Experimental)</a></li>
+                <li><a href="/docs/0.7.3/development/howtocontribute.html">How to contribute (code)</a></li>
+                <li><a href="/docs/0.7.3/development/howtocontributewebsite.html">How to contribute (website)</a></li>
+              </ul>
+            </li>
+            <li>
+              <a href="/docs/0.7.3/search.html" class="nav-search-link">
+                <span class="fa fa-search nav-search-icon"></span>
+              </a>
+            </li>
+          </ul>
+        </nav><!--/.navbar-collapse -->
+      </div>
+    </div>
+
+
+
+    <div class="content">
+      
+<!--<div class="hero-unit Front-end Angular API in Apache Zeppelin">
+  <h1></h1>
+</div>
+-->
+
+<div class="row">
+  <div class="col-md-12">
+    <!--
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+<h1>Front-end Angular API in Apache Zeppelin</h1>
+
+<div id="toc"></div>
+
+<h2>Basic Usage</h2>
+
+<p>In addition to the <a href="./back-end-angular.html">back-end API</a> to handle Angular objects binding, Apache Zeppelin also exposes a simple AngularJS <code><strong>z</strong></code> object on the front-end side to expose the same capabilities.
+This <code><strong>z</strong></code> object is accessible in the Angular isolated scope for each paragraph.</p>
+
+<h3>Bind / Unbind Variables</h3>
+
+<p>Through the <strong><code>z</code></strong>, you can bind / unbind variables to <strong>AngularJS view</strong>.
+Bind a value to an angular object and a <strong>mandatory</strong> target paragraph:</p>
+<div class="highlight"><pre><code class="html language-html" data-lang="html">%angular
+
+<span class="nt">&lt;form</span> <span class="na">class=</span><span class="s">&quot;form-inline&quot;</span><span class="nt">&gt;</span>
+  <span class="nt">&lt;div</span> <span class="na">class=</span><span class="s">&quot;form-group&quot;</span><span class="nt">&gt;</span>
+    <span class="nt">&lt;label</span> <span class="na">for=</span><span class="s">&quot;superheroId&quot;</span><span class="nt">&gt;</span>Super Hero: <span class="nt">&lt;/label&gt;</span>
+    <span class="nt">&lt;input</span> <span class="na">type=</span><span class="s">&quot;text&quot;</span> <span class="na">class=</span><span class="s">&quot;form-control&quot;</span> <span class="na">id=</span><span class="s">&quot;superheroId&quot;</span> <span class="na">placeholder=</span><span class="s">&quot;Superhero name ...&quot;</span> <span class="na">ng-model=</span><span class="s">&quot;superhero&quot;</span><span class="nt">&gt;&lt;/input&gt;</span>
+  <span class="nt">&lt;/div&gt;</span>
+  <span class="nt">&lt;button</span> <span class="na">type=</span><span class="s">&quot;submit&quot;</span> <span class="na">class=</span><span class="s">&quot;btn btn-primary&quot;</span> <span class="na">ng-click=</span><span class="s">&quot;z.angularBind(&#39;superhero&#39;,superhero,&#39;20160222-232336_1472609686&#39;)&quot;</span><span class="nt">&gt;</span> Bind<span class="nt">&lt;/button&gt;</span>
+<span class="nt">&lt;/form&gt;</span>
+</code></pre></div>
+<p><img src="../assets/themes/zeppelin/img/screenshots/z_angularBind.gif" /></p>
+
+<hr/>
+
+<p>Unbind/remove a value from angular object and a <strong>mandatory</strong> target paragraph:</p>
+<div class="highlight"><pre><code class="html language-html" data-lang="html">%angular
+
+<span class="nt">&lt;form</span> <span class="na">class=</span><span class="s">&quot;form-inline&quot;</span><span class="nt">&gt;</span>
+  <span class="nt">&lt;button</span> <span class="na">type=</span><span class="s">&quot;submit&quot;</span> <span class="na">class=</span><span class="s">&quot;btn btn-primary&quot;</span> <span class="na">ng-click=</span><span class="s">&quot;z.angularUnbind(&#39;superhero&#39;,&#39;20160222-232336_1472609686&#39;)&quot;</span><span class="nt">&gt;</span> UnBind<span class="nt">&lt;/button&gt;</span>
+<span class="nt">&lt;/form&gt;</span>
+</code></pre></div>
+<p><img src="../assets/themes/zeppelin/img/screenshots/z_angularUnbind.gif" /></p>
+
+<p>The signature for the <strong><code>z.angularBind() / z.angularUnbind()</code></strong> functions are:</p>
+<div class="highlight"><pre><code class="javascript language-javascript" data-lang="javascript"><span class="c1">// Bind</span>
+<span class="nx">z</span><span class="p">.</span><span class="nx">angularBind</span><span class="p">(</span><span class="nx">angularObjectName</span><span class="p">,</span> <span class="nx">angularObjectValue</span><span class="p">,</span> <span class="nx">paragraphId</span><span class="p">);</span>
+
+<span class="c1">// Unbind</span>
+<span class="nx">z</span><span class="p">.</span><span class="nx">angularUnbind</span><span class="p">(</span><span class="nx">angularObjectName</span><span class="p">,</span> <span class="nx">angularObjectValue</span><span class="p">,</span> <span class="nx">paragraphId</span><span class="p">);</span>
+</code></pre></div>
+<p>All the parameters are mandatory.</p>
+
+<p><br /></p>
+
+<h3>Run Paragraph</h3>
+
+<p>You can also trigger paragraph execution by calling <strong><code>z.runParagraph()</code></strong> function passing the appropriate paragraphId: </p>
+<div class="highlight"><pre><code class="html language-html" data-lang="html">%angular
+
+<span class="nt">&lt;form</span> <span class="na">class=</span><span class="s">&quot;form-inline&quot;</span><span class="nt">&gt;</span>
+  <span class="nt">&lt;div</span> <span class="na">class=</span><span class="s">&quot;form-group&quot;</span><span class="nt">&gt;</span>
+    <span class="nt">&lt;label</span> <span class="na">for=</span><span class="s">&quot;paragraphId&quot;</span><span class="nt">&gt;</span>Paragraph Id: <span class="nt">&lt;/label&gt;</span>
+    <span class="nt">&lt;input</span> <span class="na">type=</span><span class="s">&quot;text&quot;</span> <span class="na">class=</span><span class="s">&quot;form-control&quot;</span> <span class="na">id=</span><span class="s">&quot;paragraphId&quot;</span> <span class="na">placeholder=</span><span class="s">&quot;Paragraph Id ...&quot;</span> <span class="na">ng-model=</span><span class="s">&quot;paragraph&quot;</span><span class="nt">&gt;&lt;/input&gt;</span>
+  <span class="nt">&lt;/div&gt;</span>
+  <span class="nt">&lt;button</span> <span class="na">type=</span><span class="s">&quot;submit&quot;</span> <span class="na">class=</span><span class="s">&quot;btn btn-primary&quot;</span> <span class="na">ng-click=</span><span class="s">&quot;z.runParagraph(paragraph)&quot;</span><span class="nt">&gt;</span> Run Paragraph<span class="nt">&lt;/button&gt;</span>
+<span class="nt">&lt;/form&gt;</span>
+</code></pre></div>
+<p><img src="../assets/themes/zeppelin/img/screenshots/z_runParagraph.gif" /></p>
+
+<p><br /></p>
+
+<h2>Overriding dynamic form with Angular Object</h2>
+
+<p>The front-end Angular Interaction API has been designed to offer richer form capabilities and variable binding. With the existing <strong>Dynamic Form</strong> system you can already create input text, select and checkbox forms but the choice is rather limited and the look &amp; feel cannot be changed.</p>
+
+<p>The idea is to create a custom form using plain HTML/AngularJS code and bind actions on this form to push/remove Angular variables to targeted paragraphs using this new API. </p>
+
+<p>Consequently if you use the <strong>Dynamic Form</strong> syntax in a paragraph and there is a bound Angular object having the same name as the <code>${formName}</code>, the Angular object will have higher priority and the <strong>Dynamic Form</strong> will not be displayed. Example: </p>
+
+<p><img src="../assets/themes/zeppelin/img/screenshots/z_angularJs_overriding_dynamic_form.gif" /></p>
+
+<p><br /></p>
+
+<h2>Feature matrix comparison</h2>
+
+<p>How does the front-end AngularJS API compares to the <a href="./back-end-angular.html">back-end API</a> ? Below is a comparison matrix for both APIs:</p>
+
+<table class="table-configuration">
+    <thead>
+        <tr>
+            <th>Actions</th>
+            <th>Front-end API</th>
+            <th>Back-end API</th>
+        </tr>
+    </thead>
+        <tr>
+            <td>Initiate binding</td>
+            <td>z.angularbind(var, initialValue, paragraphId)</td>
+            <td>z.angularBind(var, initialValue)</td>
+        </tr>
+        <tr>
+            <td>Update value</td>
+            <td>same to ordinary angularjs scope variable, or z.angularbind(var, newValue, paragraphId)</td>
+            <td>z.angularBind(var, newValue)</td>
+        </tr>
+        <tr>
+            <td>Watching value</td>
+            <td>same to ordinary angularjs scope variable</td>
+            <td>z.angularWatch(var, (oldVal, newVal) => ...)</td>
+        </tr>
+        <tr>
+            <td>Destroy binding</td>
+            <td>z.angularUnbind(var, paragraphId)</td>
+            <td>z.angularUnbind(var)</td>
+        </tr>
+        <tr>
+            <td>Executing Paragraph</td>
+            <td>z.runParagraph(paragraphId)</td>
+            <td>z.run(paragraphId)</td>
+        </tr>
+        <tr>
+            <td>Executing Paragraph (Specific paragraphs in other notes) (</td>
+            <td></td>
+            <td>z.run(noteid, paragraphId)</td>
+        </tr>
+        <tr>
+            <td>Executing note</td>
+            <td></td>
+            <td>z.runNote(noteId)</td>
+        </tr> 
+    <tbody>
+    <tbody>    
+</table>
+
+<p>Both APIs are pretty similar, except for value watching where it is done naturally by AngularJS internals on the front-end and by user custom watcher functions in the back-end.</p>
+
+<p>There is also a slight difference in term of scope. Front-end API limits the Angular object binding to a paragraph scope whereas back-end API allows you to bind an Angular object at the global or note scope. This restriction has been designed purposely to avoid Angular object leaks and scope pollution.</p>
+
+  </div>
+</div>
+
+
+      <hr>
+      <footer>
+        <!-- <p>&copy; 2017 The Apache Software Foundation</p>-->
+      </footer>
+    </div>
+
+    
+
+
+  <script type="text/javascript">
+  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+  ga('create', 'UA-45176241-5', 'zeppelin.apache.org');
+  ga('require', 'linkid', 'linkid.js');
+  ga('send', 'pageview');
+
+</script>
+
+
+
+  </body>
+</html>
+

Added: zeppelin/site/docs/0.7.3/index.html
URL: http://svn.apache.org/viewvc/zeppelin/site/docs/0.7.3/index.html?rev=1809223&view=auto
==============================================================================
--- zeppelin/site/docs/0.7.3/index.html (added)
+++ zeppelin/site/docs/0.7.3/index.html Thu Sep 21 20:33:57 2017
@@ -0,0 +1,472 @@
+
+<!DOCTYPE html>
+<html lang="en">
+  <head>
+    <meta charset="utf-8">
+    <title>Apache Zeppelin 0.7.3 Documentation: </title>
+    
+    <meta name="author" content="The Apache Software Foundation">
+
+    <!-- Enable responsive viewport -->
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+
+    <!-- Le HTML5 shim, for IE6-8 support of HTML elements -->
+    <!--[if lt IE 9]>
+    <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
+    <![endif]-->
+
+    <link href="//maxcdn.bootstrapcdn.com/font-awesome/4.2.0/css/font-awesome.min.css" rel="stylesheet">
+
+    <!-- Le styles -->
+    <link href="/docs/0.7.3/assets/themes/zeppelin/bootstrap/css/bootstrap.css" rel="stylesheet">
+    <link href="/docs/0.7.3/assets/themes/zeppelin/css/style.css?body=1" rel="stylesheet" type="text/css">
+    <link href="/docs/0.7.3/assets/themes/zeppelin/css/syntax.css" rel="stylesheet"  type="text/css" media="screen" /> 
+    <!-- Le fav and touch icons -->
+    <!-- Update these with your own images
+    <link rel="shortcut icon" href="images/favicon.ico">
+    <link rel="apple-touch-icon" href="images/apple-touch-icon.png">
+    <link rel="apple-touch-icon" sizes="72x72" href="images/apple-touch-icon-72x72.png">
+    <link rel="apple-touch-icon" sizes="114x114" href="images/apple-touch-icon-114x114.png">
+    -->
+
+    <!-- Js -->
+    <script src="https://code.jquery.com/jquery-1.10.2.min.js"></script>
+    <script src="/docs/0.7.3/assets/themes/zeppelin/bootstrap/js/bootstrap.min.js"></script>
+    <script src="/docs/0.7.3/assets/themes/zeppelin/js/docs.js"></script>
+    <script src="/docs/0.7.3/assets/themes/zeppelin/js/anchor.min.js"></script>
+    <script src="/docs/0.7.3/assets/themes/zeppelin/js/toc.js"></script>
+    <script src="/docs/0.7.3/assets/themes/zeppelin/js/lunr.min.js"></script>
+    <script src="/docs/0.7.3/assets/themes/zeppelin/js/search.js"></script>    
+
+    <!-- atom & rss feed -->
+    <link href="/docs/0.7.3/atom.xml" type="application/atom+xml" rel="alternate" title="Sitewide ATOM Feed">
+    <link href="/docs/0.7.3/rss.xml" type="application/rss+xml" rel="alternate" title="Sitewide RSS Feed">
+  </head>
+
+  <body>
+    
+        <div id="menu" class="navbar navbar-inverse navbar-fixed-top" role="navigation">
+      <div class="container">
+        <div class="navbar-header">
+          <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
+            <span class="sr-only">Toggle navigation</span>
+            <span class="icon-bar"></span>
+            <span class="icon-bar"></span>
+            <span class="icon-bar"></span>
+          </button>
+          <div class="navbar-brand">
+            <a class="navbar-brand-main" href="http://zeppelin.apache.org">
+              <img src="/assets/themes/zeppelin/img/zeppelin_logo.png" width="50" alt="I'm zeppelin">
+              <span style="vertical-align:middle">Zeppelin</span>
+            </a>
+            <a class="navbar-brand-version" href="/docs/0.7.3">
+              <span><small>0.7.3</small></span>
+            </a>
+          </div>
+        </div>
+        <nav class="navbar-collapse collapse" role="navigation">
+          <ul class="nav navbar-nav">
+            <li>
+              <a href="#" data-toggle="dropdown" class="dropdown-toggle">Quick Start <b class="caret"></b></a>
+              <ul class="dropdown-menu">
+                <li><a href="/docs/0.7.3/index.html">What is Apache Zeppelin ?</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span><b>Getting Started</b><span></li>
+                <li><a href="/docs/0.7.3/install/install.html">Install</a></li>
+                <li><a href="/docs/0.7.3/install/configuration.html">Configuration</a></li>
+                <li><a href="/docs/0.7.3/quickstart/explorezeppelinui.html">Explore Zeppelin UI</a></li>
+                <li><a href="/docs/0.7.3/quickstart/tutorial.html">Tutorial</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span><b>Basic Feature Guide</b><span></li>
+                <li><a href="/docs/0.7.3/manual/dynamicform.html">Dynamic Form</a></li>
+                <li><a href="/docs/0.7.3/manual/publish.html">Publish your Paragraph</a></li>
+                <li><a href="/docs/0.7.3/manual/notebookashomepage.html">Customize Zeppelin Homepage</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span><b>More</b><span></li>
+                <li><a href="/docs/0.7.3/install/upgrade.html">Upgrade Zeppelin Version</a></li>
+                <li><a href="/docs/0.7.3/install/build.html">Build from source</a></li>
+                <li><a href="/docs/0.7.3/quickstart/install_with_flink_and_spark_cluster.html">Install Zeppelin with Flink and Spark Clusters Tutorial</a></li>
+              </ul>
+            </li>
+            <li>
+              <a href="#" data-toggle="dropdown" class="dropdown-toggle">Interpreter <b class="caret"></b></a>
+              <ul class="dropdown-menu scrollable-menu">
+                <li><a href="/docs/0.7.3/manual/interpreters.html">Overview</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span><b>Usage</b><span></li>
+                <li><a href="/docs/0.7.3/manual/interpreterinstallation.html">Interpreter Installation</a></li>
+                <!--<li><a href="/docs/0.7.3/manual/dynamicinterpreterload.html">Dynamic Interpreter Loading</a></li>-->
+                <li><a href="/docs/0.7.3/manual/dependencymanagement.html">Interpreter Dependency Management</a></li>
+                <li><a href="/docs/0.7.3/manual/userimpersonation.html">Interpreter User Impersonation</a></li>
+                <li><a href="/docs/0.7.3/manual/interpreterexechooks.html">Interpreter Execution Hooks (Experimental)</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span><b>Available Interpreters</b><span></li>
+                <li><a href="/docs/0.7.3/interpreter/alluxio.html">Alluxio</a></li>
+                <li><a href="/docs/0.7.3/interpreter/beam.html">Beam</a></li>
+                <li><a href="/docs/0.7.3/interpreter/bigquery.html">BigQuery</a></li>
+                <li><a href="/docs/0.7.3/interpreter/cassandra.html">Cassandra</a></li>
+                <li><a href="/docs/0.7.3/interpreter/elasticsearch.html">Elasticsearch</a></li>
+                <li><a href="/docs/0.7.3/interpreter/flink.html">Flink</a></li>
+                <li><a href="/docs/0.7.3/interpreter/geode.html">Geode</a></li>
+                <li><a href="/docs/0.7.3/interpreter/hbase.html">HBase</a></li>
+                <li><a href="/docs/0.7.3/interpreter/hdfs.html">HDFS</a></li>
+                <li><a href="/docs/0.7.3/interpreter/hive.html">Hive</a></li>
+                <li><a href="/docs/0.7.3/interpreter/ignite.html">Ignite</a></li>
+                <li><a href="/docs/0.7.3/interpreter/jdbc.html">JDBC</a></li>
+                <li><a href="/docs/0.7.3/interpreter/kylin.html">Kylin</a></li>
+                <li><a href="/docs/0.7.3/interpreter/lens.html">Lens</a></li>
+                <li><a href="/docs/0.7.3/interpreter/livy.html">Livy</a></li>
+                <li><a href="/docs/0.7.3/interpreter/markdown.html">Markdown</a></li>
+                <li><a href="/docs/0.7.3/interpreter/pig.html">Pig</a></li>
+                <li><a href="/docs/0.7.3/interpreter/python.html">Python</a></li>
+                <li><a href="/docs/0.7.3/interpreter/postgresql.html">Postgresql, HAWQ</a></li>
+                <li><a href="/docs/0.7.3/interpreter/r.html">R</a></li>
+                <li><a href="/docs/0.7.3/interpreter/scalding.html">Scalding</a></li>
+                <li><a href="/docs/0.7.3/interpreter/scio.html">Scio</a></li>
+                <li><a href="/docs/0.7.3/interpreter/shell.html">Shell</a></li>
+                <li><a href="/docs/0.7.3/interpreter/spark.html">Spark</a></li>
+              </ul>
+            </li>
+            <li>
+              <a href="#" data-toggle="dropdown" class="dropdown-toggle">Display System <b class="caret"></b></a>
+              <ul class="dropdown-menu">
+                <li class="title"><span><b>Basic Display System</b><span></li>
+                <li><a href="/docs/0.7.3/displaysystem/basicdisplaysystem.html#text">Text</a></li>
+                <li><a href="/docs/0.7.3/displaysystem/basicdisplaysystem.html#html">Html</a></li>
+                <li><a href="/docs/0.7.3/displaysystem/basicdisplaysystem.html#table">Table</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span><b>Angular API</b><span></li>
+                <li><a href="/docs/0.7.3/displaysystem/back-end-angular.html">Angular (backend API)</a></li>
+                <li><a href="/docs/0.7.3/displaysystem/front-end-angular.html">Angular (frontend API)</a></li>
+              </ul>
+            </li>
+            <li>
+              <a href="#" data-toggle="dropdown" class="dropdown-toggle">More<b class="caret"></b></a>
+              <ul class="dropdown-menu scrollable-menu" style="right: 0; left: auto;">
+                <li class="title"><span><b>Notebook Storage</b><span></li>
+                <li><a href="/docs/0.7.3/storage/storage.html#notebook-storage-in-local-git-repository">Git Storage</a></li>
+                <li><a href="/docs/0.7.3/storage/storage.html#notebook-storage-in-s3">S3 Storage</a></li>
+                <li><a href="/docs/0.7.3/storage/storage.html#notebook-storage-in-azure">Azure Storage</a></li>
+                <li><a href="/docs/0.7.3/storage/storage.html#storage-in-zeppelinhub">ZeppelinHub Storage</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span><b>REST API</b><span></li>
+                <li><a href="/docs/0.7.3/rest-api/rest-interpreter.html">Interpreter API</a></li>
+                <li><a href="/docs/0.7.3/rest-api/rest-notebook.html">Notebook API</a></li>
+                <li><a href="/docs/0.7.3/rest-api/rest-notebookRepo.html">Notebook Repository API</a></li>
+                <li><a href="/docs/0.7.3/rest-api/rest-configuration.html">Configuration API</a></li>
+                <li><a href="/docs/0.7.3/rest-api/rest-credential.html">Credential API</a></li>
+                <li><a href="/docs/0.7.3/rest-api/rest-helium.html">Helium API</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span><b>Security</b><span></li>
+                <li><a href="/docs/0.7.3/security/shiroauthentication.html">Shiro Authentication</a></li>                
+                <li><a href="/docs/0.7.3/security/notebook_authorization.html">Notebook Authorization</a></li>
+                <li><a href="/docs/0.7.3/security/datasource_authorization.html">Data Source Authorization</a></li>
+                <li><a href="/docs/0.7.3/security/http_security_headers.html">HTTP Security Headers</a></li>
+                <li><a href="/docs/0.7.3/security/helium_authorization.html">Helium Authorization</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span><b>Advanced</b><span></li>
+                <li><a href="/docs/0.7.3/install/virtual_machine.html">Zeppelin on Vagrant VM</a></li>
+                <li><a href="/docs/0.7.3/install/spark_cluster_mode.html#spark-standalone-mode">Zeppelin on Spark Cluster Mode (Standalone)</a></li>
+                <li><a href="/docs/0.7.3/install/spark_cluster_mode.html#spark-on-yarn-mode">Zeppelin on Spark Cluster Mode (YARN)</a></li>
+                <li><a href="/docs/0.7.3/install/spark_cluster_mode.html#spark-on-mesos-mode">Zeppelin on Spark Cluster Mode (Mesos)</a></li>
+                <li><a href="/docs/0.7.3/install/cdh.html">Zeppelin on CDH</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span><b>Contibute</b><span></li>
+                <li><a href="/docs/0.7.3/development/writingzeppelininterpreter.html">Writing Zeppelin Interpreter</a></li>
+                <li><a href="/docs/0.7.3/development/writingzeppelinvisualization.html">Writing Zeppelin Visualization (Experimental)</a></li>
+                <li><a href="/docs/0.7.3/development/writingzeppelinapplication.html">Writing Zeppelin Application (Experimental)</a></li>
+                <li><a href="/docs/0.7.3/development/howtocontribute.html">How to contribute (code)</a></li>
+                <li><a href="/docs/0.7.3/development/howtocontributewebsite.html">How to contribute (website)</a></li>
+              </ul>
+            </li>
+            <li>
+              <a href="/docs/0.7.3/search.html" class="nav-search-link">
+                <span class="fa fa-search nav-search-icon"></span>
+              </a>
+            </li>
+          </ul>
+        </nav><!--/.navbar-collapse -->
+      </div>
+    </div>
+
+
+
+    <div class="content">
+      
+<!--<div class="hero-unit ">
+  <h1></h1>
+</div>
+-->
+
+<div class="row">
+  <div class="col-md-12">
+    <!--
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+<p><br />
+<div class="row">
+  <div class="col-md-6" style="padding-right:0">
+    <h1 style="color:#4c555a">Multi-purpose Notebook</h1>
+    <p class="index-header">
+      The Notebook is the place for all your needs
+    </p>
+    <ul style="list-style-type: none;padding-left:10px;" >
+      <li style="font-size:18px; margin: 5px;"><span class="glyphicon glyphicon-import" style="margin-right:10px"></span> Data Ingestion</li>
+      <li style="font-size:18px; margin: 5px;"><span class="glyphicon glyphicon-eye-open" style="margin-right:10px"></span> Data Discovery</li>
+      <li style="font-size:18px; margin: 5px;"><span class="glyphicon glyphicon-wrench" style="margin-right:10px"></span> Data Analytics</li>
+      <li style="font-size:18px; margin: 5px;"><span class="glyphicon glyphicon-dashboard" style="margin-right:10px"></span> Data Visualization &amp; Collaboration</li>
+    </ul>
+  </div>
+  <div class="col-md-6" style="padding:0">
+    <img class="img-responsive" style="border: 1px solid #ecf0f1;" src="./assets/themes/zeppelin/img/notebook.png" />
+  </div>
+</div></p>
+
+<p><br /></p>
+
+<h2>Multiple Language Backend</h2>
+
+<p><a href="./manual/interpreters.html">Apache Zeppelin interpreter</a> concept allows any language/data-processing-backend to be plugged into Zeppelin.
+Currently Apache Zeppelin supports many interpreters such as Apache Spark, Python, JDBC, Markdown and Shell.</p>
+
+<p><img class="img-responsive" width="500px" style="margin:0 auto; padding: 26px;" src="./assets/themes/zeppelin/img/available_interpreters.png" /></p>
+
+<p>Adding new language-backend is really simple. Learn <a href="./development/writingzeppelininterpreter.html#make-your-own-interpreter">how to create your own interpreter</a>.</p>
+
+<h4>Apache Spark integration</h4>
+
+<p>Especially, Apache Zeppelin provides built-in <a href="http://spark.apache.org/">Apache Spark</a> integration. You don&#39;t need to build a separate module, plugin or library for it.</p>
+
+<p><img class="img-responsive" src="./assets/themes/zeppelin/img/spark_logo.png" width="140px" /></p>
+
+<p>Apache Zeppelin with Spark integration provides</p>
+
+<ul>
+<li>Automatic SparkContext and SQLContext injection</li>
+<li>Runtime jar dependency loading from local filesystem or maven repository. Learn more about <a href="./interpreter/spark.html#dependencyloading">dependency loader</a>.</li>
+<li>Canceling job and displaying its progress</li>
+</ul>
+
+<p>For the further information about Apache Spark in Apache Zeppelin, please see <a href="./interpreter/spark.html">Spark interpreter for Apache Zeppelin</a>.</p>
+
+<p><br /></p>
+
+<h2>Data visualization</h2>
+
+<p>Some basic charts are already included in Apache Zeppelin. Visualizations are not limited to Spark SQL query, any output from any language backend can be recognized and visualized.</p>
+
+<div class="row">
+  <div class="col-md-6">
+    <img class="img-responsive" src="./assets/themes/zeppelin/img/graph1.png" />
+  </div>
+  <div class="col-md-6">
+    <img class="img-responsive" src="./assets/themes/zeppelin/img/graph2.png" />
+  </div>
+</div>
+
+<h3>Pivot chart</h3>
+
+<p>Apache Zeppelin aggregates values and displays them in pivot chart with simple drag and drop. You can easily create chart with multiple aggregated values including sum, count, average, min, max.</p>
+
+<div class="row">
+  <div class="col-md-12">
+    <img class="img-responsive" style="margin: 16px auto;" src="./assets/themes/zeppelin/img/screenshots/pivot.png" width="480px" />
+  </div>
+</div>
+
+<p>Learn more about <a href="#display-system">display systems</a> in Apache Zeppelin.</p>
+
+<p><br /></p>
+
+<h2>Dynamic forms</h2>
+
+<p>Apache Zeppelin can dynamically create some input forms in your notebook.
+<div class="row">
+  <div class="col-md-12">
+    <img class="img-responsive" style="margin: 16px auto;" src="./assets/themes/zeppelin/img/screenshots/dynamicform.png" />
+  </div>
+</div>
+Learn more about <a href="./manual/dynamicform.html">Dynamic Forms</a>.</p>
+
+<p><br /></p>
+
+<h2>Collaborate by sharing your Notebook &amp; Paragraph</h2>
+
+<p>Your notebook URL can be shared among collaborators. Then Apache Zeppelin will broadcast any changes in realtime, just like the collaboration in Google docs.</p>
+
+<div class="row">
+  <div class="col-md-12">
+    <img class="img-responsive" style="margin: 20px auto" src="./assets/themes/zeppelin/img/screenshots/publish.png" width="650px"/>
+  </div>
+</div>
+
+<p>Apache Zeppelin provides an URL to display the result only, that page does not include any menus and buttons inside of notebooks.
+You can easily embed it as an iframe inside of your website in this way.
+If you want to learn more about this feature, please visit <a href="./manual/publish.html">this page</a>.</p>
+
+<p><br /></p>
+
+<h2>100% Opensource</h2>
+
+<p><img class="img-responsive" style="margin:0 auto; padding: 15px;" src="./assets/themes/zeppelin/img/asf_logo.png" width="250px"/></p>
+
+<p>Apache Zeppelin is Apache2 Licensed software. Please check out the <a href="http://git.apache.org/zeppelin.git">source repository</a> and <a href="https://zeppelin.apache.org/contribution/contributions.html">how to contribute</a>.
+Apache Zeppelin has a very active development community.
+Join to our <a href="https://zeppelin.apache.org/community.html">Mailing list</a> and report issues on <a href="https://issues.apache.org/jira/browse/ZEPPELIN">Jira Issue tracker</a>.</p>
+
+<h2>What is the next ?</h2>
+
+<h4>Quick Start</h4>
+
+<ul>
+<li>Getting Started
+
+<ul>
+<li><a href="./install/install.html">Quick Start</a> for basic instructions on installing Apache Zeppelin</li>
+<li><a href="./install/configuration.html">Configuration</a> lists for Apache Zeppelin</li>
+<li><a href="./quickstart/explorezeppelinui.html">Explore Apache Zeppelin UI</a>: basic components of Apache Zeppelin home</li>
+<li><a href="./quickstart/tutorial.html">Tutorial</a>: a short walk-through tutorial that uses Apache Spark backend</li>
+</ul></li>
+<li>Basic Feature Guide
+
+<ul>
+<li><a href="./manual/dynamicform.html">Dynamic Form</a>: a step by step guide for creating dynamic forms</li>
+<li><a href="./manual/publish.html">Publish your Paragraph</a> results into your external website</li>
+<li><a href="./manual/notebookashomepage.html">Customize Zeppelin Homepage</a> with one of your notebooks</li>
+</ul></li>
+<li>More
+
+<ul>
+<li><a href="./install/upgrade.html">Upgrade Apache Zeppelin Version</a>: a manual procedure of upgrading Apache Zeppelin version</li>
+<li><a href="./install/build.html">Build</a>: Build from source</li>
+</ul></li>
+</ul>
+
+<h4>Interpreter</h4>
+
+<ul>
+<li><a href="./manual/interpreters.html">Interpreters in Apache Zeppelin</a>: what is interpreter group? how can you set interpreters in Apache Zeppelin?</li>
+<li>Usage
+
+<ul>
+<li><a href="./manual/interpreterinstallation.html">Interpreter Installation</a>: Install not only community managed interpreters but also 3rd party interpreters</li>
+<li><a href="./manual/dependencymanagement.html">Interpreter Dependency Management</a> when you include external libraries to interpreter</li>
+<li><a href="./manual/userimpersonation.html">Interpreter User Impersonation</a> when you want to run interpreter as end user</li>
+<li><a href="./manual/interpreterexechooks.html">Interpreter Execution Hooks</a> to specify additional code to be executed by an interpreter at pre and post-paragraph code execution</li>
+</ul></li>
+<li>Available Interpreters: currently, about 20 interpreters are available in Apache Zeppelin.</li>
+</ul>
+
+<h4>Display System</h4>
+
+<ul>
+<li>Basic Display System: <a href="./displaysystem/basicdisplaysystem.html#text">Text</a>, <a href="./displaysystem/basicdisplaysystem.html#html">HTML</a>, <a href="./displaysystem/basicdisplaysystem.html#table">Table</a> is available</li>
+<li>Angular API: a description about avilable backend and frontend AngularJS API with examples
+
+<ul>
+<li><a href="./displaysystem/back-end-angular.html">Angular (backend API)</a></li>
+<li><a href="./displaysystem/front-end-angular.html">Angular (frontend API)</a></li>
+</ul></li>
+</ul>
+
+<h4>More</h4>
+
+<ul>
+<li>Notebook Storage: a guide about saving notebooks to external storage
+
+<ul>
+<li><a href="./storage/storage.html#notebook-storage-in-local-git-repository">Git Storage</a></li>
+<li><a href="./storage/storage.html#notebook-storage-in-s3">S3 Storage</a></li>
+<li><a href="./storage/storage.html#notebook-storage-in-azure">Azure Storage</a></li>
+<li><a href="./storage/storage.html#storage-in-zeppelinhub">ZeppelinHub Storage</a></li>
+</ul></li>
+<li>REST API: available REST API list in Apache Zeppelin
+
+<ul>
+<li><a href="./rest-api/rest-interpreter.html">Interpreter API</a></li>
+<li><a href="./rest-api/rest-notebook.html">Notebook API</a></li>
+<li><a href="./rest-api/rest-notebookRepo.html">Notebook Repository API</a></li>
+<li><a href="./rest-api/rest-configuration.html">Configuration API</a></li>
+<li><a href="./rest-api/rest-credential.html">Credential API</a></li>
+<li><a href="./rest-api/rest-helium.html">Helium API</a></li>
+</ul></li>
+<li>Security: available security support in Apache Zeppelin
+
+<ul>
+<li><a href="./security/authentication.html">Authentication for NGINX</a></li>
+<li><a href="./security/shiroauthentication.html">Shiro Authentication</a></li>
+<li><a href="./security/notebook_authorization.html">Notebook Authorization</a></li>
+<li><a href="./security/datasource_authorization.html">Data Source Authorization</a></li>
+<li><a href="./security/http_security_headers.html">HTTP Security Headers</a></li>
+<li><a href="./security/helium_authorization.html">Helium Authorization</a></li>
+</ul></li>
+<li>Advanced
+
+<ul>
+<li><a href="./install/virtual_machine.html">Apache Zeppelin on Vagrant VM</a></li>
+<li><a href="./install/spark_cluster_mode.html#spark-standalone-mode">Zeppelin on Spark Cluster Mode (Standalone via Docker)</a></li>
+<li><a href="./install/spark_cluster_mode.html#spark-on-yarn-mode">Zeppelin on Spark Cluster Mode (YARN via Docker)</a></li>
+<li><a href="./install/spark_cluster_mode.html#spark-on-mesos-mode">Zeppelin on Spark Cluster Mode (Mesos via Docker)</a></li>
+<li><a href="./install/cdh.html">Zeppelin on CDH (via Docker)</a></li>
+</ul></li>
+<li>Contribute
+
+<ul>
+<li><a href="./development/writingzeppelininterpreter.html">Writing Zeppelin Interpreter</a></li>
+<li><a href="./development/writingzeppelinapplication.html">Writing Zeppelin Application (Experimental)</a></li>
+<li><a href="./development/writingzeppelinspell.html">Writing Zeppelin Spell (Experimental)</a></li>
+<li><a href="./development/writingzeppelinvisualization.html">Writing Zeppelin Visualization (Experimental)</a></li>
+<li><a href="./development/howtocontribute.html">How to contribute (code)</a></li>
+<li><a href="./development/howtocontributewebsite.html">How to contribute (documentation website)</a></li>
+</ul></li>
+</ul>
+
+<h4>External Resources</h4>
+
+<ul>
+<li><a href="https://zeppelin.apache.org/community.html">Mailing List</a></li>
+<li><a href="https://cwiki.apache.org/confluence/display/ZEPPELIN/Zeppelin+Home">Apache Zeppelin Wiki</a></li>
+<li><a href="http://stackoverflow.com/questions/tagged/apache-zeppelin">StackOverflow tag <code>apache-zeppelin</code></a></li>
+</ul>
+
+  </div>
+</div>
+
+
+      <hr>
+      <footer>
+        <!-- <p>&copy; 2017 The Apache Software Foundation</p>-->
+      </footer>
+    </div>
+
+    
+
+
+  <script type="text/javascript">
+  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+  ga('create', 'UA-45176241-5', 'zeppelin.apache.org');
+  ga('require', 'linkid', 'linkid.js');
+  ga('send', 'pageview');
+
+</script>
+
+
+
+  </body>
+</html>
+

Added: zeppelin/site/docs/0.7.3/install/build.html
URL: http://svn.apache.org/viewvc/zeppelin/site/docs/0.7.3/install/build.html?rev=1809223&view=auto
==============================================================================
--- zeppelin/site/docs/0.7.3/install/build.html (added)
+++ zeppelin/site/docs/0.7.3/install/build.html Thu Sep 21 20:33:57 2017
@@ -0,0 +1,509 @@
+
+<!DOCTYPE html>
+<html lang="en">
+  <head>
+    <meta charset="utf-8">
+    <title>Apache Zeppelin 0.7.3 Documentation: Build from Source</title>
+    <meta name="description" content="How to build Zeppelin from source">
+    <meta name="author" content="The Apache Software Foundation">
+
+    <!-- Enable responsive viewport -->
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+
+    <!-- Le HTML5 shim, for IE6-8 support of HTML elements -->
+    <!--[if lt IE 9]>
+    <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
+    <![endif]-->
+
+    <link href="//maxcdn.bootstrapcdn.com/font-awesome/4.2.0/css/font-awesome.min.css" rel="stylesheet">
+
+    <!-- Le styles -->
+    <link href="/docs/0.7.3/assets/themes/zeppelin/bootstrap/css/bootstrap.css" rel="stylesheet">
+    <link href="/docs/0.7.3/assets/themes/zeppelin/css/style.css?body=1" rel="stylesheet" type="text/css">
+    <link href="/docs/0.7.3/assets/themes/zeppelin/css/syntax.css" rel="stylesheet"  type="text/css" media="screen" /> 
+    <!-- Le fav and touch icons -->
+    <!-- Update these with your own images
+    <link rel="shortcut icon" href="images/favicon.ico">
+    <link rel="apple-touch-icon" href="images/apple-touch-icon.png">
+    <link rel="apple-touch-icon" sizes="72x72" href="images/apple-touch-icon-72x72.png">
+    <link rel="apple-touch-icon" sizes="114x114" href="images/apple-touch-icon-114x114.png">
+    -->
+
+    <!-- Js -->
+    <script src="https://code.jquery.com/jquery-1.10.2.min.js"></script>
+    <script src="/docs/0.7.3/assets/themes/zeppelin/bootstrap/js/bootstrap.min.js"></script>
+    <script src="/docs/0.7.3/assets/themes/zeppelin/js/docs.js"></script>
+    <script src="/docs/0.7.3/assets/themes/zeppelin/js/anchor.min.js"></script>
+    <script src="/docs/0.7.3/assets/themes/zeppelin/js/toc.js"></script>
+    <script src="/docs/0.7.3/assets/themes/zeppelin/js/lunr.min.js"></script>
+    <script src="/docs/0.7.3/assets/themes/zeppelin/js/search.js"></script>    
+
+    <!-- atom & rss feed -->
+    <link href="/docs/0.7.3/atom.xml" type="application/atom+xml" rel="alternate" title="Sitewide ATOM Feed">
+    <link href="/docs/0.7.3/rss.xml" type="application/rss+xml" rel="alternate" title="Sitewide RSS Feed">
+  </head>
+
+  <body>
+    
+        <div id="menu" class="navbar navbar-inverse navbar-fixed-top" role="navigation">
+      <div class="container">
+        <div class="navbar-header">
+          <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
+            <span class="sr-only">Toggle navigation</span>
+            <span class="icon-bar"></span>
+            <span class="icon-bar"></span>
+            <span class="icon-bar"></span>
+          </button>
+          <div class="navbar-brand">
+            <a class="navbar-brand-main" href="http://zeppelin.apache.org">
+              <img src="/assets/themes/zeppelin/img/zeppelin_logo.png" width="50" alt="I'm zeppelin">
+              <span style="vertical-align:middle">Zeppelin</span>
+            </a>
+            <a class="navbar-brand-version" href="/docs/0.7.3">
+              <span><small>0.7.3</small></span>
+            </a>
+          </div>
+        </div>
+        <nav class="navbar-collapse collapse" role="navigation">
+          <ul class="nav navbar-nav">
+            <li>
+              <a href="#" data-toggle="dropdown" class="dropdown-toggle">Quick Start <b class="caret"></b></a>
+              <ul class="dropdown-menu">
+                <li><a href="/docs/0.7.3/index.html">What is Apache Zeppelin ?</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span><b>Getting Started</b><span></li>
+                <li><a href="/docs/0.7.3/install/install.html">Install</a></li>
+                <li><a href="/docs/0.7.3/install/configuration.html">Configuration</a></li>
+                <li><a href="/docs/0.7.3/quickstart/explorezeppelinui.html">Explore Zeppelin UI</a></li>
+                <li><a href="/docs/0.7.3/quickstart/tutorial.html">Tutorial</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span><b>Basic Feature Guide</b><span></li>
+                <li><a href="/docs/0.7.3/manual/dynamicform.html">Dynamic Form</a></li>
+                <li><a href="/docs/0.7.3/manual/publish.html">Publish your Paragraph</a></li>
+                <li><a href="/docs/0.7.3/manual/notebookashomepage.html">Customize Zeppelin Homepage</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span><b>More</b><span></li>
+                <li><a href="/docs/0.7.3/install/upgrade.html">Upgrade Zeppelin Version</a></li>
+                <li><a href="/docs/0.7.3/install/build.html">Build from source</a></li>
+                <li><a href="/docs/0.7.3/quickstart/install_with_flink_and_spark_cluster.html">Install Zeppelin with Flink and Spark Clusters Tutorial</a></li>
+              </ul>
+            </li>
+            <li>
+              <a href="#" data-toggle="dropdown" class="dropdown-toggle">Interpreter <b class="caret"></b></a>
+              <ul class="dropdown-menu scrollable-menu">
+                <li><a href="/docs/0.7.3/manual/interpreters.html">Overview</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span><b>Usage</b><span></li>
+                <li><a href="/docs/0.7.3/manual/interpreterinstallation.html">Interpreter Installation</a></li>
+                <!--<li><a href="/docs/0.7.3/manual/dynamicinterpreterload.html">Dynamic Interpreter Loading</a></li>-->
+                <li><a href="/docs/0.7.3/manual/dependencymanagement.html">Interpreter Dependency Management</a></li>
+                <li><a href="/docs/0.7.3/manual/userimpersonation.html">Interpreter User Impersonation</a></li>
+                <li><a href="/docs/0.7.3/manual/interpreterexechooks.html">Interpreter Execution Hooks (Experimental)</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span><b>Available Interpreters</b><span></li>
+                <li><a href="/docs/0.7.3/interpreter/alluxio.html">Alluxio</a></li>
+                <li><a href="/docs/0.7.3/interpreter/beam.html">Beam</a></li>
+                <li><a href="/docs/0.7.3/interpreter/bigquery.html">BigQuery</a></li>
+                <li><a href="/docs/0.7.3/interpreter/cassandra.html">Cassandra</a></li>
+                <li><a href="/docs/0.7.3/interpreter/elasticsearch.html">Elasticsearch</a></li>
+                <li><a href="/docs/0.7.3/interpreter/flink.html">Flink</a></li>
+                <li><a href="/docs/0.7.3/interpreter/geode.html">Geode</a></li>
+                <li><a href="/docs/0.7.3/interpreter/hbase.html">HBase</a></li>
+                <li><a href="/docs/0.7.3/interpreter/hdfs.html">HDFS</a></li>
+                <li><a href="/docs/0.7.3/interpreter/hive.html">Hive</a></li>
+                <li><a href="/docs/0.7.3/interpreter/ignite.html">Ignite</a></li>
+                <li><a href="/docs/0.7.3/interpreter/jdbc.html">JDBC</a></li>
+                <li><a href="/docs/0.7.3/interpreter/kylin.html">Kylin</a></li>
+                <li><a href="/docs/0.7.3/interpreter/lens.html">Lens</a></li>
+                <li><a href="/docs/0.7.3/interpreter/livy.html">Livy</a></li>
+                <li><a href="/docs/0.7.3/interpreter/markdown.html">Markdown</a></li>
+                <li><a href="/docs/0.7.3/interpreter/pig.html">Pig</a></li>
+                <li><a href="/docs/0.7.3/interpreter/python.html">Python</a></li>
+                <li><a href="/docs/0.7.3/interpreter/postgresql.html">Postgresql, HAWQ</a></li>
+                <li><a href="/docs/0.7.3/interpreter/r.html">R</a></li>
+                <li><a href="/docs/0.7.3/interpreter/scalding.html">Scalding</a></li>
+                <li><a href="/docs/0.7.3/interpreter/scio.html">Scio</a></li>
+                <li><a href="/docs/0.7.3/interpreter/shell.html">Shell</a></li>
+                <li><a href="/docs/0.7.3/interpreter/spark.html">Spark</a></li>
+              </ul>
+            </li>
+            <li>
+              <a href="#" data-toggle="dropdown" class="dropdown-toggle">Display System <b class="caret"></b></a>
+              <ul class="dropdown-menu">
+                <li class="title"><span><b>Basic Display System</b><span></li>
+                <li><a href="/docs/0.7.3/displaysystem/basicdisplaysystem.html#text">Text</a></li>
+                <li><a href="/docs/0.7.3/displaysystem/basicdisplaysystem.html#html">Html</a></li>
+                <li><a href="/docs/0.7.3/displaysystem/basicdisplaysystem.html#table">Table</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span><b>Angular API</b><span></li>
+                <li><a href="/docs/0.7.3/displaysystem/back-end-angular.html">Angular (backend API)</a></li>
+                <li><a href="/docs/0.7.3/displaysystem/front-end-angular.html">Angular (frontend API)</a></li>
+              </ul>
+            </li>
+            <li>
+              <a href="#" data-toggle="dropdown" class="dropdown-toggle">More<b class="caret"></b></a>
+              <ul class="dropdown-menu scrollable-menu" style="right: 0; left: auto;">
+                <li class="title"><span><b>Notebook Storage</b><span></li>
+                <li><a href="/docs/0.7.3/storage/storage.html#notebook-storage-in-local-git-repository">Git Storage</a></li>
+                <li><a href="/docs/0.7.3/storage/storage.html#notebook-storage-in-s3">S3 Storage</a></li>
+                <li><a href="/docs/0.7.3/storage/storage.html#notebook-storage-in-azure">Azure Storage</a></li>
+                <li><a href="/docs/0.7.3/storage/storage.html#storage-in-zeppelinhub">ZeppelinHub Storage</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span><b>REST API</b><span></li>
+                <li><a href="/docs/0.7.3/rest-api/rest-interpreter.html">Interpreter API</a></li>
+                <li><a href="/docs/0.7.3/rest-api/rest-notebook.html">Notebook API</a></li>
+                <li><a href="/docs/0.7.3/rest-api/rest-notebookRepo.html">Notebook Repository API</a></li>
+                <li><a href="/docs/0.7.3/rest-api/rest-configuration.html">Configuration API</a></li>
+                <li><a href="/docs/0.7.3/rest-api/rest-credential.html">Credential API</a></li>
+                <li><a href="/docs/0.7.3/rest-api/rest-helium.html">Helium API</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span><b>Security</b><span></li>
+                <li><a href="/docs/0.7.3/security/shiroauthentication.html">Shiro Authentication</a></li>                
+                <li><a href="/docs/0.7.3/security/notebook_authorization.html">Notebook Authorization</a></li>
+                <li><a href="/docs/0.7.3/security/datasource_authorization.html">Data Source Authorization</a></li>
+                <li><a href="/docs/0.7.3/security/http_security_headers.html">HTTP Security Headers</a></li>
+                <li><a href="/docs/0.7.3/security/helium_authorization.html">Helium Authorization</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span><b>Advanced</b><span></li>
+                <li><a href="/docs/0.7.3/install/virtual_machine.html">Zeppelin on Vagrant VM</a></li>
+                <li><a href="/docs/0.7.3/install/spark_cluster_mode.html#spark-standalone-mode">Zeppelin on Spark Cluster Mode (Standalone)</a></li>
+                <li><a href="/docs/0.7.3/install/spark_cluster_mode.html#spark-on-yarn-mode">Zeppelin on Spark Cluster Mode (YARN)</a></li>
+                <li><a href="/docs/0.7.3/install/spark_cluster_mode.html#spark-on-mesos-mode">Zeppelin on Spark Cluster Mode (Mesos)</a></li>
+                <li><a href="/docs/0.7.3/install/cdh.html">Zeppelin on CDH</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span><b>Contibute</b><span></li>
+                <li><a href="/docs/0.7.3/development/writingzeppelininterpreter.html">Writing Zeppelin Interpreter</a></li>
+                <li><a href="/docs/0.7.3/development/writingzeppelinvisualization.html">Writing Zeppelin Visualization (Experimental)</a></li>
+                <li><a href="/docs/0.7.3/development/writingzeppelinapplication.html">Writing Zeppelin Application (Experimental)</a></li>
+                <li><a href="/docs/0.7.3/development/howtocontribute.html">How to contribute (code)</a></li>
+                <li><a href="/docs/0.7.3/development/howtocontributewebsite.html">How to contribute (website)</a></li>
+              </ul>
+            </li>
+            <li>
+              <a href="/docs/0.7.3/search.html" class="nav-search-link">
+                <span class="fa fa-search nav-search-icon"></span>
+              </a>
+            </li>
+          </ul>
+        </nav><!--/.navbar-collapse -->
+      </div>
+    </div>
+
+
+
+    <div class="content">
+      
+<!--<div class="hero-unit Build from Source">
+  <h1></h1>
+</div>
+-->
+
+<div class="row">
+  <div class="col-md-12">
+    <!--
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+<h2>Building from Source</h2>
+
+<div id="toc"></div>
+
+<p>If you want to build from source, you must first install the following dependencies:</p>
+
+<table class="table-configuration">
+  <tr>
+    <th>Name</th>
+    <th>Value</th>
+  </tr>
+  <tr>
+    <td>Git</td>
+    <td>(Any Version)</td>
+  </tr>
+  <tr>
+    <td>Maven</td>
+    <td>3.1.x or higher</td>
+  </tr>
+  <tr>
+    <td>JDK</td>
+    <td>1.7</td>
+  </tr>
+</table>
+
+<p>If you haven&#39;t installed Git and Maven yet, check the <a href="#build-requirements">Build requirements</a> section and follow the step by step instructions from there.</p>
+
+<h4>1. Clone the Apache Zeppelin repository</h4>
+<div class="highlight"><pre><code class="text language-text" data-lang="text">git clone https://github.com/apache/zeppelin.git
+</code></pre></div>
+<h4>2. Build source</h4>
+
+<p>You can build Zeppelin with following maven command:</p>
+<div class="highlight"><pre><code class="text language-text" data-lang="text">mvn clean package -DskipTests [Options]
+</code></pre></div>
+<p>If you&#39;re unsure about the options, use the same commands that creates official binary package.</p>
+<div class="highlight"><pre><code class="bash language-bash" data-lang="bash"><span class="c"># update all pom.xml to use scala 2.11</span>
+./dev/change_scala_version.sh 2.11
+<span class="c"># build zeppelin with all interpreters and include latest version of Apache spark support for local mode.</span>
+mvn clean package -DskipTests -Pspark-2.0 -Phadoop-2.4 -Pyarn -Ppyspark -Psparkr -Pr -Pscala-2.11
+</code></pre></div>
+<h4>3. Done</h4>
+
+<p>You can directly start Zeppelin by running after successful build:</p>
+<div class="highlight"><pre><code class="bash language-bash" data-lang="bash">./bin/zeppelin-daemon.sh start
+</code></pre></div>
+<p>Check <a href="#build-profiles">build-profiles</a> section for further build options.
+If you are behind proxy, follow instructions in <a href="#proxy-setting-optional">Proxy setting</a> section.</p>
+
+<p>If you&#39;re interested in contribution, please check <a href="../development/howtocontribute.html">Contributing to Apache Zeppelin (Code)</a> and <a href="../../development/contributewebsite.html">Contributing to Apache Zeppelin (Website)</a>.</p>
+
+<h3>Build profiles</h3>
+
+<h4>Spark Interpreter</h4>
+
+<p>To build with a specific Spark version, Hadoop version or specific features, define one or more of the following profiles and options:</p>
+
+<h5><code>-Pspark-[version]</code></h5>
+
+<p>Set spark major version</p>
+
+<p>Available profiles are</p>
+<div class="highlight"><pre><code class="text language-text" data-lang="text">-Pspark-2.1
+-Pspark-2.0
+-Pspark-1.6
+-Pspark-1.5
+-Pspark-1.4
+-Pcassandra-spark-1.5
+-Pcassandra-spark-1.4
+-Pcassandra-spark-1.3
+-Pcassandra-spark-1.2
+-Pcassandra-spark-1.1
+</code></pre></div>
+<p>minor version can be adjusted by <code>-Dspark.version=x.x.x</code></p>
+
+<h5><code>-Phadoop-[version]</code></h5>
+
+<p>set hadoop major version</p>
+
+<p>Available profiles are</p>
+<div class="highlight"><pre><code class="text language-text" data-lang="text">-Phadoop-0.23
+-Phadoop-1
+-Phadoop-2.2
+-Phadoop-2.3
+-Phadoop-2.4
+-Phadoop-2.6
+-Phadoop-2.7
+</code></pre></div>
+<p>minor version can be adjusted by <code>-Dhadoop.version=x.x.x</code></p>
+
+<h5><code>-Pscala-[version] (optional)</code></h5>
+
+<p>set scala version (default 2.10)
+Available profiles are</p>
+<div class="highlight"><pre><code class="text language-text" data-lang="text">-Pscala-2.10
+-Pscala-2.11
+</code></pre></div>
+<h5><code>-Pyarn</code> (optional)</h5>
+
+<p>enable YARN support for local mode</p>
+
+<blockquote>
+<p>YARN for local mode is not supported for Spark v1.5.0 or higher. Set <code>SPARK_HOME</code> instead.</p>
+</blockquote>
+
+<h5><code>-Ppyspark</code> (optional)</h5>
+
+<p>enable <a href="http://spark.apache.org/docs/latest/api/python/">PySpark</a> support for local mode.</p>
+
+<h5><code>-Pr</code> (optional)</h5>
+
+<p>enable <a href="https://www.r-project.org/">R</a> support with <a href="https://spark.apache.org/docs/latest/sparkr.html">SparkR</a> integration.</p>
+
+<h5><code>-Psparkr</code> (optional)</h5>
+
+<p>another <a href="https://www.r-project.org/">R</a> support with <a href="https://spark.apache.org/docs/latest/sparkr.html">SparkR</a> integration as well as local mode support.</p>
+
+<h5><code>-Pvendor-repo</code> (optional)</h5>
+
+<p>enable 3rd party vendor repository (cloudera)</p>
+
+<h5><code>-Pmapr[version]</code> (optional)</h5>
+
+<p>For the MapR Hadoop Distribution, these profiles will handle the Hadoop version. As MapR allows different versions of Spark to be installed, you should specify which version of Spark is installed on the cluster by adding a Spark profile (<code>-Pspark-1.6</code>, <code>-Pspark-2.0</code>, etc.) as needed.
+The correct Maven artifacts can be found for every version of MapR at http://doc.mapr.com</p>
+
+<p>Available profiles are</p>
+<div class="highlight"><pre><code class="text language-text" data-lang="text">-Pmapr3
+-Pmapr40
+-Pmapr41
+-Pmapr50
+-Pmapr51
+</code></pre></div>
+<h4>-Pexamples (optional)</h4>
+
+<p>Bulid examples under zeppelin-examples directory</p>
+
+<h3>Build command examples</h3>
+
+<p>Here are some examples with several options:</p>
+<div class="highlight"><pre><code class="bash language-bash" data-lang="bash"><span class="c"># build with spark-2.1, scala-2.11</span>
+./dev/change_scala_version.sh 2.11
+mvn clean package -Pspark-2.1 -Phadoop-2.4 -Pyarn -Ppyspark -Psparkr -Pscala-2.11 -DskipTests
+
+<span class="c"># build with spark-2.0, scala-2.11</span>
+./dev/change_scala_version.sh 2.11
+mvn clean package -Pspark-2.0 -Phadoop-2.4 -Pyarn -Ppyspark -Psparkr -Pscala-2.11 -DskipTests
+
+<span class="c"># build with spark-1.6, scala-2.10</span>
+mvn clean package -Pspark-1.6 -Phadoop-2.4 -Pyarn -Ppyspark -Psparkr -DskipTests
+
+<span class="c"># spark-cassandra integration</span>
+mvn clean package -Pcassandra-spark-1.5 -Dhadoop.version<span class="o">=</span>2.6.0 -Phadoop-2.6 -DskipTests -DskipTests
+
+<span class="c"># with CDH</span>
+mvn clean package -Pspark-1.5 -Dhadoop.version<span class="o">=</span>2.6.0-cdh5.5.0 -Phadoop-2.6 -Pvendor-repo -DskipTests
+
+<span class="c"># with MapR</span>
+mvn clean package -Pspark-1.5 -Pmapr50 -DskipTests
+</code></pre></div>
+<p>Ignite Interpreter</p>
+<div class="highlight"><pre><code class="bash language-bash" data-lang="bash">mvn clean package -Dignite.version<span class="o">=</span>1.9.0 -DskipTests
+</code></pre></div>
+<p>Scalding Interpreter</p>
+<div class="highlight"><pre><code class="bash language-bash" data-lang="bash">mvn clean package -Pscalding -DskipTests
+</code></pre></div>
+<h2>Build requirements</h2>
+
+<h3>Install requirements</h3>
+
+<p>If you don&#39;t have requirements prepared, install it.
+(The installation method may vary according to your environment, example is for Ubuntu.)</p>
+<div class="highlight"><pre><code class="text language-text" data-lang="text">sudo apt-get update
+sudo apt-get install git
+sudo apt-get install openjdk-7-jdk
+sudo apt-get install npm
+sudo apt-get install libfontconfig
+</code></pre></div>
+<h3>Install maven</h3>
+<div class="highlight"><pre><code class="text language-text" data-lang="text">wget http://www.eu.apache.org/dist/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz
+sudo tar -zxf apache-maven-3.3.9-bin.tar.gz -C /usr/local/
+sudo ln -s /usr/local/apache-maven-3.3.9/bin/mvn /usr/local/bin/mvn
+</code></pre></div>
+<p><em>Notes:</em>
+ - Ensure node is installed by running <code>node --version</code><br>
+ - Ensure maven is running version 3.1.x or higher with <code>mvn -version</code>
+ - Configure maven to use more memory than usual by <code>export MAVEN_OPTS=&quot;-Xmx2g -XX:MaxPermSize=1024m&quot;</code></p>
+
+<h2>Proxy setting (optional)</h2>
+
+<p>If you&#39;re behind the proxy, you&#39;ll need to configure maven and npm to pass through it.</p>
+
+<p>First of all, configure maven in your <code>~/.m2/settings.xml</code>.</p>
+<div class="highlight"><pre><code class="text language-text" data-lang="text">&lt;settings&gt;
+  &lt;proxies&gt;
+    &lt;proxy&gt;
+      &lt;id&gt;proxy-http&lt;/id&gt;
+      &lt;active&gt;true&lt;/active&gt;
+      &lt;protocol&gt;http&lt;/protocol&gt;
+      &lt;host&gt;localhost&lt;/host&gt;
+      &lt;port&gt;3128&lt;/port&gt;
+      &lt;!-- &lt;username&gt;usr&lt;/username&gt;
+      &lt;password&gt;pwd&lt;/password&gt; --&gt;
+      &lt;nonProxyHosts&gt;localhost|127.0.0.1&lt;/nonProxyHosts&gt;
+    &lt;/proxy&gt;
+    &lt;proxy&gt;
+      &lt;id&gt;proxy-https&lt;/id&gt;
+      &lt;active&gt;true&lt;/active&gt;
+      &lt;protocol&gt;https&lt;/protocol&gt;
+      &lt;host&gt;localhost&lt;/host&gt;
+      &lt;port&gt;3128&lt;/port&gt;
+      &lt;!-- &lt;username&gt;usr&lt;/username&gt;
+      &lt;password&gt;pwd&lt;/password&gt; --&gt;
+      &lt;nonProxyHosts&gt;localhost|127.0.0.1&lt;/nonProxyHosts&gt;
+    &lt;/proxy&gt;
+  &lt;/proxies&gt;
+&lt;/settings&gt;
+</code></pre></div>
+<p>Then, next commands will configure npm.</p>
+<div class="highlight"><pre><code class="text language-text" data-lang="text">npm config set proxy http://localhost:3128
+npm config set https-proxy http://localhost:3128
+npm config set registry &quot;http://registry.npmjs.org/&quot;
+npm config set strict-ssl false
+</code></pre></div>
+<p>Configure git as well</p>
+<div class="highlight"><pre><code class="text language-text" data-lang="text">git config --global http.proxy http://localhost:3128
+git config --global https.proxy http://localhost:3128
+git config --global url.&quot;http://&quot;.insteadOf git://
+</code></pre></div>
+<p>To clean up, set <code>active false</code> in Maven <code>settings.xml</code> and run these commands.</p>
+<div class="highlight"><pre><code class="bash language-bash" data-lang="bash">npm config rm proxy
+npm config rm https-proxy
+git config --global --unset http.proxy
+git config --global --unset https.proxy
+git config --global --unset url.<span class="s2">&quot;http://&quot;</span>.insteadOf
+</code></pre></div>
+<p><em>Notes:</em>
+ - If you are behind NTLM proxy you can use <a href="http://cntlm.sourceforge.net/">Cntlm Authentication Proxy</a>.
+ - Replace <code>localhost:3128</code> with the standard pattern <code>http://user:pwd@host:port</code>.</p>
+
+<h2>Package</h2>
+
+<p>To package the final distribution including the compressed archive, run:</p>
+<div class="highlight"><pre><code class="sh language-sh" data-lang="sh">mvn clean package -Pbuild-distr
+</code></pre></div>
+<p>To build a distribution with specific profiles, run:</p>
+<div class="highlight"><pre><code class="sh language-sh" data-lang="sh">mvn clean package -Pbuild-distr -Pspark-1.5 -Phadoop-2.4 -Pyarn -Ppyspark
+</code></pre></div>
+<p>The profiles <code>-Pspark-1.5 -Phadoop-2.4 -Pyarn -Ppyspark</code> can be adjusted if you wish to build to a specific spark versions, or omit support such as <code>yarn</code>.  </p>
+
+<p>The archive is generated under <em><code>zeppelin-distribution/target</code></em> directory</p>
+
+<h2>Run end-to-end tests</h2>
+
+<p>Zeppelin comes with a set of end-to-end acceptance tests driving headless selenium browser</p>
+<div class="highlight"><pre><code class="sh language-sh" data-lang="sh"><span class="c"># assumes zeppelin-server running on localhost:8080 (use -Durl=.. to override)</span>
+mvn verify
+
+<span class="c"># or take care of starting/stoping zeppelin-server from packaged zeppelin-distribuion/target</span>
+mvn verify -P using-packaged-distr
+</code></pre></div>
+<p><a href="https://github.com/igrigorik/ga-beacon"><img src="https://ga-beacon.appspot.com/UA-45176241-4/apache/zeppelin/README.md?pixel" alt="Analytics"></a></p>
+
+  </div>
+</div>
+
+
+      <hr>
+      <footer>
+        <!-- <p>&copy; 2017 The Apache Software Foundation</p>-->
+      </footer>
+    </div>
+
+    
+
+
+  <script type="text/javascript">
+  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+  ga('create', 'UA-45176241-5', 'zeppelin.apache.org');
+  ga('require', 'linkid', 'linkid.js');
+  ga('send', 'pageview');
+
+</script>
+
+
+
+  </body>
+</html>
+