You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@edgent.apache.org by ca...@apache.org on 2016/12/22 05:36:45 UTC

[2/2] incubator-edgent-website git commit: from 793007ab0115b1fb4ce738af5575e12c78c345d9

from 793007ab0115b1fb4ce738af5575e12c78c345d9


Project: http://git-wip-us.apache.org/repos/asf/incubator-edgent-website/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-edgent-website/commit/b95141ed
Tree: http://git-wip-us.apache.org/repos/asf/incubator-edgent-website/tree/b95141ed
Diff: http://git-wip-us.apache.org/repos/asf/incubator-edgent-website/diff/b95141ed

Branch: refs/heads/asf-site
Commit: b95141edaf3d799b9fa5bc9e9404abf6b685b5b5
Parents: 4797e2d
Author: Cazen Lee <ca...@apache.org>
Authored: Thu Dec 22 14:36:00 2016 +0900
Committer: Cazen Lee <ca...@apache.org>
Committed: Thu Dec 22 14:36:00 2016 +0900

----------------------------------------------------------------------
 content/404.html                                |  12 +-
 content/algolia_search.json                     |  17 +-
 content/docs/committers.html                    |  12 +-
 content/docs/common-edgent-operations.html      |  12 +-
 content/docs/community.html                     |  12 +-
 content/docs/console.html                       |  12 +-
 content/docs/downloads.html                     | 751 +++++++++++++++++++
 content/docs/edgent-getting-started.html        |  16 +-
 content/docs/edgent_index.html                  |  12 +-
 content/docs/faq.html                           |  14 +-
 content/docs/home.html                          |  12 +-
 content/docs/overview.html                      |  12 +-
 content/docs/quickstart.html                    |  12 +-
 content/docs/samples.html                       |  12 +-
 content/docs/search.html                        |  12 +-
 content/docs/streaming-concepts.html            |  12 +-
 content/docs/tag_collaboration.html             |  14 +-
 content/docs/tag_content_types.html             |  14 +-
 content/docs/tag_formatting.html                |  14 +-
 content/docs/tag_getting_started.html           |  14 +-
 content/docs/tag_mobile.html                    |  14 +-
 content/docs/tag_navigation.html                |  14 +-
 content/docs/tag_publishing.html                |  14 +-
 content/docs/tag_single_sourcing.html           |  14 +-
 content/docs/tag_special_layouts.html           |  14 +-
 content/index.html                              |   8 +-
 content/prince-file-list.txt                    |   5 +
 .../recipe_adaptable_deadtime_filter.html       |  12 +-
 .../recipes/recipe_adaptable_filter_range.html  |  12 +-
 .../recipe_adaptable_polling_source.html        |  12 +-
 ...pe_combining_streams_processing_results.html |  12 +-
 .../recipes/recipe_concurrent_analytics.html    |  12 +-
 ...ipe_different_processing_against_stream.html |  12 +-
 .../recipe_dynamic_analytic_control.html        |  12 +-
 .../recipes/recipe_external_filter_range.html   |  12 +-
 content/recipes/recipe_hello_edgent.html        |  12 +-
 content/recipes/recipe_parallel_analytics.html  |  12 +-
 content/recipes/recipe_source_function.html     |  12 +-
 content/recipes/recipe_value_out_of_range.html  |  12 +-
 content/search.json                             |  11 +
 content/title-checker.html                      | 147 ++++
 content/titlepage.html                          |  14 +-
 content/tocpage.html                            |  18 +-
 content/urls_mydoc.txt                          |   7 +
 44 files changed, 1375 insertions(+), 47 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-edgent-website/blob/b95141ed/content/404.html
----------------------------------------------------------------------
diff --git a/content/404.html b/content/404.html
index 38d07ad..c093f6b 100644
--- a/content/404.html
+++ b/content/404.html
@@ -320,6 +320,16 @@ window.location.href = uri;
                     
                     
                     
+                    <li><a href="../docs/downloads.html">Downloads</a></li>
+                    
+
+                    
+
+                    
+                    
+                    
+                    
+                    
                     <li><a href="../docs/edgent-getting-started.html">Getting started guide</a></li>
                     
 
@@ -664,7 +674,7 @@ $('#toc').on('click', 'a', function() {
         <div class="col-lg-12 footer">
 
              Site last
-            generated: Dec 17, 2016 <br/>
+            generated: Dec 22, 2016 <br/>
 
         </div>
     </div>

http://git-wip-us.apache.org/repos/asf/incubator-edgent-website/blob/b95141ed/content/algolia_search.json
----------------------------------------------------------------------
diff --git a/content/algolia_search.json b/content/algolia_search.json
index 143c072..67bb9b2 100644
--- a/content/algolia_search.json
+++ b/content/algolia_search.json
@@ -60,12 +60,25 @@
 
 
 {
+"title": "Downloads",
+"tags": "",
+"keywords": "",
+"url": "../docs/downloads",
+"summary": "",
+"body": "## Download now.Official Apache Edgent releases are available for download from the ASF distribution site. A release consists of a source code bundle and a convenience binary bundle. The Edgent ASF distribution site is [here]({{ site.data.downloads.edgent_dist_main_location }}). Information about verifying the integrity of the release bundles can also be found there.The Edgent source is also available from the Edgent ASF [git repository]({{ site.data.project.source_repository }}).If you just want to use Edgent, it is easiest to download and unpack a binary bundle. The bundle includes the release's javadoc. The javadoc is also accessible online. For more information, please refer to the [Getting started guide](edgent-getting-started)A source bundle contains a README describing how to build the sources.If you want access the latest unreleased Edgent source or to contribute to Edgent runtime development, using the [GitHub]({{  site.data.project.source_repository_mirror }}) rep
 ository is recommended. You can also select a particular release version by release tag (e.g., 1.0.0-incubating). See README.md and DEVELOPMENT.md in the repository for more information.See [here](community.html) for more information about contributing to Edgent development.## Apache Edgent (incubating) release history| Version           | Date           | Source | Release Notes | Docs | GPG | MD5 | SHA   ||:-----------------:|:--------------:|:------:|:-------------:|:----:|:---:|:---:|:-----:|| 1.0.0-incubating  | 2016-12-15     | [Download]({{ site.data.downloads.edgent_1-0-0_src_location }}) | [1.0.0 Release]({{ site.data.downloads.edgent_1-0-0_release_note }}) | [JavaDoc]({{ site.data.downloads.edgent_1-0-0_doc_location }}) | [ASC]({{ site.data.downloads.edgent_1-0-0_asc_location  }}) | [MD5]({{  site.data.downloads.edgent_1-0-0_md5_location }}) | [SHA]({{  site.data.downloads.edgent_1-0-0_sha_location }}) |Download the [KEYS file]({{ site.data.downloads.edgent_keys_file_locati
 on }}) to verify the Edgent artifact"
+
+},
+
+
+
+
+{
 "title": "Getting started with Apache Edgent",
 "tags": "",
 "keywords": "",
 "url": "../docs/edgent-getting-started",
 "summary": "",
-"body": "## What is Apache Edgent?Edgent is an open source programming model and runtime for edge devices that enables you to analyze streaming data on your edge devices. When you analyze on the edge, you can:* Reduce the amount of data that you transmit to your analytics server* Reduce the amount of data that you storeFor more information, see the [Edgent overview](home).### Apache Edgent and streaming analyticsThe fundamental building block of an Edgent application is a **stream**: a continuous sequence of tuples (messages, events, sensor readings, and so on).The Edgent API provides the ability to process or analyze each tuple as it appears on a stream, resulting in a derived stream.Source streams are streams that originate data for analysis, such as readings from a device's temperature sensor.Streams are terminated using sink functions that can perform local device control or send information to centralized analytic systems through a message hub.Edgent's primary API is functional
  where streams are sourced, transformed, analyzed or sinked though functions, typically represented as lambda expressions, such as `reading -> reading  80` to filter temperature readings in Fahrenheit.### Downloading Apache EdgentTo use Edgent, access the source code and build it. You can read more about building Edgent [here]({{ site.data.project.source_repository_mirror }}/blob/master/DEVELOPMENT.md).After you build the Edgent package, you can set up your environment.### Setting up your environmentEnsure that you are running a supported environment. For more information, see the [Edgent overview](home). This guide assumes you're running Java 8.The Edgent Java 8 JAR files are located in the `edgent/java8/lib` directory.1. Create a new Java project in Eclipse, and specify Java 8 as the execution environment JRE:    2. Modify the Java build path to include all of the JAR files in the `edgent\\java8\\lib` directory:    Your environment is set up! You can start writing your first Edgen
 t application.## Creating a simple applicationIf you're new to Edgent or to writing streaming applications, the best way to get started is to write a simple program.Edgent is a framework that pushes data analytics and machine learning to *edge devices*. (Edge devices include things like routers, gateways, machines, equipment, sensors, appliances, or vehicles that are connected to a network.) Edgent enables you to process data locally&mdash;such as, in a car engine, on an Android phone, or Raspberry Pi&mdash;before you send data over a network.For example, if your device takes temperature readings from a sensor 1,000 times per second, it is more efficient to process the data locally and send only interesting or unexpected results over the network. To simulate this, let's define a (simulated) TempSensor class:```javaimport java.util.Random;import org.apache.edgent.function.Supplier;/** * Every time get() is called, TempSensor generates a temperature reading. */public class TempSensor 
 implements Supplier {    double currentTemp = 65.0;    Random rand;    TempSensor(){        rand = new Random();    }    @Override    public Double get() {        // Change the current temperature some random amount        double newTemp = rand.nextGaussian() + currentTemp;        currentTemp = newTemp;        return currentTemp;    }}```Every time you call `TempSensor.get()`, it returns a new temperature reading. The continuous temperature readings are a stream of data that an Edgent application can process.Our sample Edgent application processes this stream by filtering the data and printing the results. Let's define a TempSensorApplication class for the application:```javaimport java.util.concurrent.TimeUnit;import org.apache.edgent.providers.direct.DirectProvider;import org.apache.edgent.topology.TStream;import org.apache.edgent.topology.Topology;public class TempSensorApplication {    public static void main(String[] args) throws Exception {        TempSensor sensor = new TempS
 ensor();        DirectProvider dp = new DirectProvider();        Topology topology = dp.newTopology();        TStream tempReadings = topology.poll(sensor, 1, TimeUnit.MILLISECONDS);        TStream filteredReadings = tempReadings.filter(reading -> reading  80);        filteredReadings.print();        dp.submit(topology);    }}```To understand how the application processes the stream, let's review each line.### Specifying a providerYour first step when you write an Edgent application is to create a [`DirectProvider`]({{ site.docsurl }}/index.html?org/apache/{{ site.data.project.unix_name }}/providers/direct/DirectProvider.html):```javaDirectProvider dp = new DirectProvider();```A `Provider` is an object that contains information on how and where your Edgent application will run. A `DirectProvider` is a type of Provider that runs your application directly within the current virtual machine when its `submit()` method is called.### Creating a topologyAdditionally a Provider is used to cr
 eate a [`Topology`]({{ site.docsurl }}/index.html?org/apache/{{ site.data.project.unix_name }}/topology/Topology.html) instance:```javaTopology topology = dp.newTopology();```In Edgent, `Topology` is a container that describes the structure of your application:* Where the streams in the application come from* How the data in the stream is modifiedIn the TempSensor application above, we have exactly one data source: the `TempSensor` object. We define the source stream by calling `topology.poll()`, which takes both a `Supplier` function and a time parameter to indicate how frequently readings should be taken. In our case, we read from the sensor every millisecond:```javaTStream tempReadings = topology.poll(sensor, 1, TimeUnit.MILLISECONDS);```### Defining the `TStream` objectCalling `topology.poll()` to define a source stream creates a `TStream` instance, which represents the series of readings taken from the temperature sensor.A streaming application can run indefinitely, so the `TSt
 ream` might see an arbitrarily large number of readings pass through it. Because a `TStream` represents the flow of your data, it supports a number of operations which allow you to modify your data.### Filtering a `TStream`In our example, we want to filter the stream of temperature readings, and remove any \"uninteresting\" or expected readings&mdash;specifically readings which are above 50 degrees and below 80 degrees. To do this, we call the `TStream`'s `filter` method and pass in a function that returns *true* if the data is interesting and *false* if the data is uninteresting:```javaTStream filteredReadings = tempReadings.filter(reading -> reading  80);```As you can see, the function that is passed to `filter` operates on each tuple individually. Unlike data streaming frameworks like [Apache Spark](https://spark.apache.org/), which operate on a collection of data in batch mode, Edgent achieves low latency processing by manipulating each piece of data as soon as it becomes availa
 ble. Filtering a `TStream` produces another `TStream` that contains only the filtered tuples; for example, the `filteredReadings` stream.### Printing to outputWhen our application detects interesting data (data outside of the expected parameters), we want to print results. You can do this by calling the `TStream.print()` method, which prints using  `.toString()` on each tuple that passes through the stream:```javafilteredReadings.print();```Unlike `TStream.filter()`, `TStream.print()` does not produce another `TStream`. This is because `TStream.print()` is a **sink**, which represents the terminus of a stream.In addition to `TStream.print()` there are other sink operations that send tuples to an MQTT server, JDBC connection, file, or Kafka cluster. Additionally, you can define your own sink by invoking `TStream.sink()` and passing in your own function.### Submitting your applicationNow that your application has been completely declared, the final step is to run your application.`Dir
 ectProvider` contains a `submit()` method, which runs your application directly within the current virtual machine:```javadp.submit(topology);```After you run your program, you should see output containing only \"interesting\" data coming from your sensor:```49.90403231177259647.9783750403908446.5927233630903146.68154455165293447.400819234155236...```As you can see, all temperatures are outside the 50-80 degree range. In terms of a real-world application, this would prevent a device from sending superfluous data over a network, thereby reducing communication costs.## Further examplesThis example demonstrates a small piece of Edgent's functionality. Edgent supports more complicated topologies, such as topologies that require merging and splitting data streams, or perform operations which aggregate the last *N* seconds of data (for example, calculating a moving average).For more complex examples, see:* [Edgent sample programs](samples)* [Stream processing concepts](streaming-concepts)
 * [Common Edgent operations](common-edgent-operations)"
+"body": "## What is Apache Edgent?Edgent is an open source programming model and runtime for edge devices that enables you to analyze streaming data on your edge devices. When you analyze on the edge, you can:* Reduce the amount of data that you transmit to your analytics server* Reduce the amount of data that you storeFor more information, see the [Edgent overview](home).### Apache Edgent and streaming analyticsThe fundamental building block of an Edgent application is a **stream**: a continuous sequence of tuples (messages, events, sensor readings, and so on).The Edgent API provides the ability to process or analyze each tuple as it appears on a stream, resulting in a derived stream.Source streams are streams that originate data for analysis, such as readings from a device's temperature sensor.Streams are terminated using sink functions that can perform local device control or send information to centralized analytic systems through a message hub.Edgent's primary API is functional
  where streams are sourced, transformed, analyzed or sinked though functions, typically represented as lambda expressions, such as `reading -> reading  80` to filter temperature readings in Fahrenheit.### Downloading Apache EdgentTo use Edgent you need the Edgent jars. You can either download the Edgent source and build it or you can download a pre-built version of Edgent. See the [download page]({{ site.data.project.download }}).After you have the Edgent jars, you can set up your environment.### Setting up your environmentEnsure that you are running a supported environment. For more information, see the [Edgent overview](home). This guide assumes you're running Java 8.The Edgent Java 8 JAR files are located in the `edgent/java8/lib` directory.1. Create a new Java project in Eclipse, and specify Java 8 as the execution environment JRE:    2. Modify the Java build path to include all of the JAR files in the `edgent\\java8\\lib` directory:    Your environment is set up! You can start 
 writing your first Edgent application.## Creating a simple applicationIf you're new to Edgent or to writing streaming applications, the best way to get started is to write a simple program.Edgent is a framework that pushes data analytics and machine learning to *edge devices*. (Edge devices include things like routers, gateways, machines, equipment, sensors, appliances, or vehicles that are connected to a network.) Edgent enables you to process data locally&mdash;such as, in a car engine, on an Android phone, or Raspberry Pi&mdash;before you send data over a network.For example, if your device takes temperature readings from a sensor 1,000 times per second, it is more efficient to process the data locally and send only interesting or unexpected results over the network. To simulate this, let's define a (simulated) TempSensor class:```javaimport java.util.Random;import org.apache.edgent.function.Supplier;/** * Every time get() is called, TempSensor generates a temperature reading. */
 public class TempSensor implements Supplier {    double currentTemp = 65.0;    Random rand;    TempSensor(){        rand = new Random();    }    @Override    public Double get() {        // Change the current temperature some random amount        double newTemp = rand.nextGaussian() + currentTemp;        currentTemp = newTemp;        return currentTemp;    }}```Every time you call `TempSensor.get()`, it returns a new temperature reading. The continuous temperature readings are a stream of data that an Edgent application can process.Our sample Edgent application processes this stream by filtering the data and printing the results. Let's define a TempSensorApplication class for the application:```javaimport java.util.concurrent.TimeUnit;import org.apache.edgent.providers.direct.DirectProvider;import org.apache.edgent.topology.TStream;import org.apache.edgent.topology.Topology;public class TempSensorApplication {    public static void main(String[] args) throws Exception {        TempS
 ensor sensor = new TempSensor();        DirectProvider dp = new DirectProvider();        Topology topology = dp.newTopology();        TStream tempReadings = topology.poll(sensor, 1, TimeUnit.MILLISECONDS);        TStream filteredReadings = tempReadings.filter(reading -> reading  80);        filteredReadings.print();        dp.submit(topology);    }}```To understand how the application processes the stream, let's review each line.### Specifying a providerYour first step when you write an Edgent application is to create a [`DirectProvider`]({{ site.docsurl }}/index.html?org/apache/{{ site.data.project.unix_name }}/providers/direct/DirectProvider.html):```javaDirectProvider dp = new DirectProvider();```A `Provider` is an object that contains information on how and where your Edgent application will run. A `DirectProvider` is a type of Provider that runs your application directly within the current virtual machine when its `submit()` method is called.### Creating a topologyAdditionally 
 a Provider is used to create a [`Topology`]({{ site.docsurl }}/index.html?org/apache/{{ site.data.project.unix_name }}/topology/Topology.html) instance:```javaTopology topology = dp.newTopology();```In Edgent, `Topology` is a container that describes the structure of your application:* Where the streams in the application come from* How the data in the stream is modifiedIn the TempSensor application above, we have exactly one data source: the `TempSensor` object. We define the source stream by calling `topology.poll()`, which takes both a `Supplier` function and a time parameter to indicate how frequently readings should be taken. In our case, we read from the sensor every millisecond:```javaTStream tempReadings = topology.poll(sensor, 1, TimeUnit.MILLISECONDS);```### Defining the `TStream` objectCalling `topology.poll()` to define a source stream creates a `TStream` instance, which represents the series of readings taken from the temperature sensor.A streaming application can run i
 ndefinitely, so the `TStream` might see an arbitrarily large number of readings pass through it. Because a `TStream` represents the flow of your data, it supports a number of operations which allow you to modify your data.### Filtering a `TStream`In our example, we want to filter the stream of temperature readings, and remove any \"uninteresting\" or expected readings&mdash;specifically readings which are above 50 degrees and below 80 degrees. To do this, we call the `TStream`'s `filter` method and pass in a function that returns *true* if the data is interesting and *false* if the data is uninteresting:```javaTStream filteredReadings = tempReadings.filter(reading -> reading  80);```As you can see, the function that is passed to `filter` operates on each tuple individually. Unlike data streaming frameworks like [Apache Spark](https://spark.apache.org/), which operate on a collection of data in batch mode, Edgent achieves low latency processing by manipulating each piece of data as s
 oon as it becomes available. Filtering a `TStream` produces another `TStream` that contains only the filtered tuples; for example, the `filteredReadings` stream.### Printing to outputWhen our application detects interesting data (data outside of the expected parameters), we want to print results. You can do this by calling the `TStream.print()` method, which prints using  `.toString()` on each tuple that passes through the stream:```javafilteredReadings.print();```Unlike `TStream.filter()`, `TStream.print()` does not produce another `TStream`. This is because `TStream.print()` is a **sink**, which represents the terminus of a stream.In addition to `TStream.print()` there are other sink operations that send tuples to an MQTT server, JDBC connection, file, or Kafka cluster. Additionally, you can define your own sink by invoking `TStream.sink()` and passing in your own function.### Submitting your applicationNow that your application has been completely declared, the final step is to r
 un your application.`DirectProvider` contains a `submit()` method, which runs your application directly within the current virtual machine:```javadp.submit(topology);```After you run your program, you should see output containing only \"interesting\" data coming from your sensor:```49.90403231177259647.9783750403908446.5927233630903146.68154455165293447.400819234155236...```As you can see, all temperatures are outside the 50-80 degree range. In terms of a real-world application, this would prevent a device from sending superfluous data over a network, thereby reducing communication costs.## Further examplesThis example demonstrates a small piece of Edgent's functionality. Edgent supports more complicated topologies, such as topologies that require merging and splitting data streams, or perform operations which aggregate the last *N* seconds of data (for example, calculating a moving average).For more complex examples, see:* [Edgent sample programs](samples)* [Stream processing conce
 pts](streaming-concepts)* [Common Edgent operations](common-edgent-operations)"
 
 },
 
@@ -91,7 +104,7 @@
 "keywords": "",
 "url": "../docs/faq",
 "summary": "",
-"body": "## What is Apache Edgent?Edgent provides APIs and a lightweight runtime to analyze streaming data at the edge.## What do you mean by the edge?The edge includes devices, gateways, equipment, vehicles, systems, appliances and sensors of all kinds as part of the Internet of Things.## How is Apache Edgent used?Edgent can be used at the edge of the Internet of Things, for example, to analyze data on devices, engines, connected cars, etc. Edgent could be on the device itself, or a gateway device collecting data from local devices. You can write an edge application on Edgent and connect it to a Cloud service, such as the IBM Watson IoT Platform. It can also be used for enterprise data collection and analysis; for example log collectors, application data, and data center analytics.## How are applications developed?Applications are developed using a functional flow API to define operations on data streams that are executed as a graph of \"oplets\" in a lightweight embeddable runtime
 . The SDK provides capabilities like windowing, aggregation and connectors with an extensible model for the community to expand its capabilities.## What APIs does Apache Edgent support?Currently, Edgent supports APIs for Java and Android. Support for additional languages, such as Python, is likely as more developers get involved. Please consider joining the Edgent open source development community to accelerate the contributions of additional APIs.## What type of analytics can be done with Apache Edgent?Edgent provides windowing, aggregation and simple filtering. It uses Apache Common Math to provide simple analytics aimed at device sensors. Edgent is also extensible, so you can call existing libraries from within your Edgent application. In the future, Edgent will include more analytics, either exposing more functionality from Apache Common Math, other libraries or hand-coded analytics.## What connectors does Apache Edgent support?Edgent supports connectors for MQTT, HTTP, JDBC, Fi
 le, Apache Kafka and IBM Watson IoT Platform. Edgent is extensible; you can add the connector of your choice.## What centralized streaming analytic systems does Apache Edgent support?Edgent supports open source technology (such as Apache Spark, Apache Storm, Flink and samza), IBM Streams (on-premises or IBM Streaming Analytics on Bluemix), or any custom application of your choice.## Why do I need Apache Edgent on the edge, rather than my streaming analytic system?Edgent is designed for the edge, rather than a more centralized system. It has a small footprint, suitable for running on devices. Edgent provides simple analytics, allowing a device to analyze data locally and to only send to the centralized system if there is a need, reducing communication costs.## Why do I need Apache Edgent, rather than coding the complete application myself?Edgent is a tool for edge analytics that allows you to be more productive. Edgent provides a consistent data model (streams and windows) and provid
 es useful functionality, such as aggregations, joins, etc. Using Edgent lets you to take advantage of this functionality, allowing you to focus on your application needs.## Where can I download Apache Edgent to try it out?You can download the source from Apache and build it yourself [here]({{ site.data.project.source_repository_mirror }}). You can also find already pre-built Apache releases of Edgent for download [here]({{ site.data.project.apache_release_location }}) (But this location is temporarily unavailable until we get the first release out).## How do I get started?Getting started is simple. Once you have downloaded Edgent, everything you need to know to get up and running, you will find [here](edgent-getting-started). We suggest you also run the [Edgent sample programs](samples) to familiarize yourselves with the code base.## How can I get involved?We would love to have your help! Visit [Get Involved](community) to learn more about how to get involved.## How can I contribute
  code?Just submit a [pull request]({{ site.data.project.source_repository_mirror }}/pulls) and wait for a committer to review. For more information, visit our [committer page](committers) and read [DEVELOPMENT.md]({{ site.data.project.source_repository_mirror }}/blob/master/DEVELOPMENT.md) at the top of the code tree.## Can I become a committer?Read about Edgent committers and how to become a committer [here](committers).## Where can I get the code?The source code is available [here]({{ site.data.project.source_repository_mirror }}).## Can I take a copy of the code and fork it for my own use?Yes. Edgent is available under the Apache 2.0 license which allows you to fork the code. We hope you will contribute your changes back to the Edgent community.## How do I suggest new features?Click [Issues](https://issues.apache.org/jira/browse/{{ site.data.project.jira }}) to submit requests for new features. You may browse or query the Issues database to see what other members of the Edgent co
 mmunity have already requested.## How do I submit bug reports?Click [Issues](https://issues.apache.org/jira/browse/{{ site.data.project.jira }}) to submit a bug report.## How do I ask questions about Apache Edgent?Use the [dev list](mailto:{{ site.data.project.dev_list }}) to submit questions to the Edgent community.## Why is Apache Edgent open source?With the growth of the Internet of Things there is a need to execute analytics at the edge. Edgent was developed to address requirements for analytics at the edge for IoT use cases that were not addressed by central analytic solutions. These capabilities will be useful to many organizations and that the diverse nature of edge devices and use cases is best addressed by an open community. Our goal is to develop a vibrant community of developers and users to expand the capabilities and real-world use of Edgent by companies and individuals to enable edge analytics and further innovation for the IoT space.## I see references to \"Quarks.\" 
 How does it relate to Apache Edgent?Up until July 2016, Edgent was known as Quarks. Quarks was renamed due to the name not being unique enough. The suitable name search for Edgent is currently in progress at The Apache Software Foundation."
+"body": "## What is Apache Edgent?Edgent provides APIs and a lightweight runtime to analyze streaming data at the edge.## What do you mean by the edge?The edge includes devices, gateways, equipment, vehicles, systems, appliances and sensors of all kinds as part of the Internet of Things.## How is Apache Edgent used?Edgent can be used at the edge of the Internet of Things, for example, to analyze data on devices, engines, connected cars, etc. Edgent could be on the device itself, or a gateway device collecting data from local devices. You can write an edge application on Edgent and connect it to a Cloud service, such as the IBM Watson IoT Platform. It can also be used for enterprise data collection and analysis; for example log collectors, application data, and data center analytics.## How are applications developed?Applications are developed using a functional flow API to define operations on data streams that are executed as a graph of \"oplets\" in a lightweight embeddable runtime
 . The SDK provides capabilities like windowing, aggregation and connectors with an extensible model for the community to expand its capabilities.## What APIs does Apache Edgent support?Currently, Edgent supports APIs for Java and Android. Support for additional languages, such as Python, is likely as more developers get involved. Please consider joining the Edgent open source development community to accelerate the contributions of additional APIs.## What type of analytics can be done with Apache Edgent?Edgent provides windowing, aggregation and simple filtering. It uses Apache Common Math to provide simple analytics aimed at device sensors. Edgent is also extensible, so you can call existing libraries from within your Edgent application. In the future, Edgent will include more analytics, either exposing more functionality from Apache Common Math, other libraries or hand-coded analytics.## What connectors does Apache Edgent support?Edgent supports connectors for MQTT, HTTP, JDBC, Fi
 le, Apache Kafka and IBM Watson IoT Platform. Edgent is extensible; you can add the connector of your choice.## What centralized streaming analytic systems does Apache Edgent support?Edgent supports open source technology (such as Apache Spark, Apache Storm, Flink and samza), IBM Streams (on-premises or IBM Streaming Analytics on Bluemix), or any custom application of your choice.## Why do I need Apache Edgent on the edge, rather than my streaming analytic system?Edgent is designed for the edge, rather than a more centralized system. It has a small footprint, suitable for running on devices. Edgent provides simple analytics, allowing a device to analyze data locally and to only send to the centralized system if there is a need, reducing communication costs.## Why do I need Apache Edgent, rather than coding the complete application myself?Edgent is a tool for edge analytics that allows you to be more productive. Edgent provides a consistent data model (streams and windows) and provid
 es useful functionality, such as aggregations, joins, etc. Using Edgent lets you to take advantage of this functionality, allowing you to focus on your application needs.## Where can I download Apache Edgent to try it out?You can download Apache Edgent from [here]({{ site.data.project.download }}).## How do I get started?Getting started is simple. Once you have downloaded Edgent, everything you need to know to get up and running, you will find [here](edgent-getting-started). We suggest you also run the [Edgent sample programs](samples) to familiarize yourselves with the code base.## How can I get involved?We would love to have your help! Visit [Get Involved](community) to learn more about how to get involved.## How can I contribute code?Just submit a [pull request]({{ site.data.project.source_repository_mirror }}/pulls) and wait for a committer to review. For more information, visit our [committer page](committers) and read [DEVELOPMENT.md]({{ site.data.project.source_repository_mir
 ror }}/blob/master/DEVELOPMENT.md) at the top of the code tree.## Can I become a committer?Read about Edgent committers and how to become a committer [here](committers).## Where can I get the code?The source code is available [here]({{ site.data.project.source_repository_mirror }}).## Can I take a copy of the code and fork it for my own use?Yes. Edgent is available under the Apache 2.0 license which allows you to fork the code. We hope you will contribute your changes back to the Edgent community.## How do I suggest new features?Click [Issues](https://issues.apache.org/jira/browse/{{ site.data.project.jira }}) to submit requests for new features. You may browse or query the Issues database to see what other members of the Edgent community have already requested.## How do I submit bug reports?Click [Issues](https://issues.apache.org/jira/browse/{{ site.data.project.jira }}) to submit a bug report.## How do I ask questions about Apache Edgent?Use the [dev list](mailto:{{ site.data.pro
 ject.dev_list }}) to submit questions to the Edgent community.## Why is Apache Edgent open source?With the growth of the Internet of Things there is a need to execute analytics at the edge. Edgent was developed to address requirements for analytics at the edge for IoT use cases that were not addressed by central analytic solutions. These capabilities will be useful to many organizations and that the diverse nature of edge devices and use cases is best addressed by an open community. Our goal is to develop a vibrant community of developers and users to expand the capabilities and real-world use of Edgent by companies and individuals to enable edge analytics and further innovation for the IoT space.## I see references to \"Quarks.\" How does it relate to Apache Edgent?Up until July 2016, Edgent was known as Quarks. Quarks was renamed due to the name not being unique enough. The suitable name search for Edgent is currently in progress at The Apache Software Foundation."
 
 },
 

http://git-wip-us.apache.org/repos/asf/incubator-edgent-website/blob/b95141ed/content/docs/committers.html
----------------------------------------------------------------------
diff --git a/content/docs/committers.html b/content/docs/committers.html
index c555c6f..531a568 100644
--- a/content/docs/committers.html
+++ b/content/docs/committers.html
@@ -320,6 +320,16 @@ window.location.href = uri;
                     
                     
                     
+                    <li><a href="../docs/downloads.html">Downloads</a></li>
+                    
+
+                    
+
+                    
+                    
+                    
+                    
+                    
                     <li><a href="../docs/edgent-getting-started.html">Getting started guide</a></li>
                     
 
@@ -676,7 +686,7 @@ $('#toc').on('click', 'a', function() {
         <div class="col-lg-12 footer">
 
              Site last
-            generated: Dec 17, 2016 <br/>
+            generated: Dec 22, 2016 <br/>
 
         </div>
     </div>

http://git-wip-us.apache.org/repos/asf/incubator-edgent-website/blob/b95141ed/content/docs/common-edgent-operations.html
----------------------------------------------------------------------
diff --git a/content/docs/common-edgent-operations.html b/content/docs/common-edgent-operations.html
index 9ed8d78..67006d2 100644
--- a/content/docs/common-edgent-operations.html
+++ b/content/docs/common-edgent-operations.html
@@ -320,6 +320,16 @@ window.location.href = uri;
                     
                     
                     
+                    <li><a href="../docs/downloads.html">Downloads</a></li>
+                    
+
+                    
+
+                    
+                    
+                    
+                    
+                    
                     <li><a href="../docs/edgent-getting-started.html">Getting started guide</a></li>
                     
 
@@ -709,7 +719,7 @@ $('#toc').on('click', 'a', function() {
         <div class="col-lg-12 footer">
 
              Site last
-            generated: Dec 17, 2016 <br/>
+            generated: Dec 22, 2016 <br/>
 
         </div>
     </div>

http://git-wip-us.apache.org/repos/asf/incubator-edgent-website/blob/b95141ed/content/docs/community.html
----------------------------------------------------------------------
diff --git a/content/docs/community.html b/content/docs/community.html
index 3a67eed..25c5e79 100644
--- a/content/docs/community.html
+++ b/content/docs/community.html
@@ -320,6 +320,16 @@ window.location.href = uri;
                     
                     
                     
+                    <li><a href="../docs/downloads.html">Downloads</a></li>
+                    
+
+                    
+
+                    
+                    
+                    
+                    
+                    
                     <li><a href="../docs/edgent-getting-started.html">Getting started guide</a></li>
                     
 
@@ -730,7 +740,7 @@ $('#toc').on('click', 'a', function() {
         <div class="col-lg-12 footer">
 
              Site last
-            generated: Dec 17, 2016 <br/>
+            generated: Dec 22, 2016 <br/>
 
         </div>
     </div>

http://git-wip-us.apache.org/repos/asf/incubator-edgent-website/blob/b95141ed/content/docs/console.html
----------------------------------------------------------------------
diff --git a/content/docs/console.html b/content/docs/console.html
index 5a59abe..96db156 100644
--- a/content/docs/console.html
+++ b/content/docs/console.html
@@ -320,6 +320,16 @@ window.location.href = uri;
                     
                     
                     
+                    <li><a href="../docs/downloads.html">Downloads</a></li>
+                    
+
+                    
+
+                    
+                    
+                    
+                    
+                    
                     <li><a href="../docs/edgent-getting-started.html">Getting started guide</a></li>
                     
 
@@ -1135,7 +1145,7 @@ Metrics.rateMeter(individualAlerts3.get(0));
         <div class="col-lg-12 footer">
 
              Site last
-            generated: Dec 17, 2016 <br/>
+            generated: Dec 22, 2016 <br/>
 
         </div>
     </div>

http://git-wip-us.apache.org/repos/asf/incubator-edgent-website/blob/b95141ed/content/docs/downloads.html
----------------------------------------------------------------------
diff --git a/content/docs/downloads.html b/content/docs/downloads.html
new file mode 100644
index 0000000..f30a3cf
--- /dev/null
+++ b/content/docs/downloads.html
@@ -0,0 +1,751 @@
+<!DOCTYPE html>
+  <head>
+
+ <meta charset="utf-8">
+<meta http-equiv="X-UA-Compatible" content="IE=edge">
+<meta name="viewport" content="width=device-width, initial-scale=1">
+<meta name="description" content="">
+<meta name="keywords" content=" ">
+<title>Downloads  | Apache Edgent Documentation</title>
+<link rel="stylesheet" type="text/css" href="../css/syntax.css">
+<link rel="stylesheet" type="text/css" href="../css/font-awesome.min.css">
+<!--<link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css">-->
+<link rel="stylesheet" type="text/css" href="../css/modern-business.css">
+<link rel="stylesheet" type="text/css" href="../css/lavish-bootstrap.css">
+<link rel="stylesheet" type="text/css" href="../css/customstyles.css">
+<link rel="stylesheet" type="text/css" href="../css/theme-blue.css">
+<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.4/jquery.min.js"></script>
+<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-cookie/1.4.1/jquery.cookie.min.js"></script>
+<script src="../js/jquery.navgoco.min.js"></script>
+<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"></script>
+<script src="https://cdnjs.cloudflare.com/ajax/libs/anchor-js/2.0.0/anchor.min.js"></script>
+<script src="../js/toc.js"></script>
+<script src="../js/customscripts.js"></script>
+<link rel="shortcut icon" href="../common_images/favicon.ico" type="image/x-icon">
+<!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->
+<!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
+<!--[if lt IE 9]>
+<script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
+<script src="https://oss.maxcdn.com/libs/respond.js/1.4.2/respond.min.js"></script>
+<![endif]-->
+
+
+
+
+
+
+
+ 
+
+<script>
+  $(function () {
+      $('[data-toggle="tooltip"]').tooltip()
+  })
+</script>
+
+
+
+  </head>
+
+<body>
+
+   <!-- Navigation -->
+<nav class="navbar navbar-inverse navbar-fixed-top" role="navigation">
+    <div class="container topnavlinks">
+        <div class="navbar-header">
+            <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
+                <span class="sr-only">Toggle navigation</span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+            </button>
+
+            <a class="fa fa-home fa-lg navbar-brand" href="../docs/home.html">&nbsp;<span class="projectTitle"> Apache Edgent Documentation</span></a>
+
+        </div>
+        <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
+            <ul class="nav navbar-nav navbar-right">
+                <!-- entries without drop-downs appear here -->
+                <!-- conditional logic to control which topnav appears for the audience defined in the configuration file.-->
+                
+
+
+
+
+
+
+
+
+                <li class="dropdown">
+                    
+                    
+                    
+                    <a href="#" class="dropdown-toggle" data-toggle="dropdown">GitHub Repos<b class="caret"></b></a>
+                    <ul class="dropdown-menu">
+                        
+                        
+                        
+                        <li><a href="https://github.com/apache/incubator-edgent" target="_blank">Source code</a></li>
+                        
+                        
+                        
+                        
+                        
+                        <li><a href="https://github.com/apache/incubator-edgent-website" target="_blank">Website/Documentation</a></li>
+                        
+                        
+                        
+                        
+
+                    </ul>
+                </li>
+                
+                
+
+
+                <li class="dropdown">
+                    
+                    
+                    
+                    <a href="#" class="dropdown-toggle" data-toggle="dropdown">Javadoc<b class="caret"></b></a>
+                    <ul class="dropdown-menu">
+                        
+                        
+                        
+                        <li><a href="http://edgent.incubator.apache.org/javadoc/latest/index.html" target="_blank">lastest</a></li>
+                        
+                        
+                        
+                        
+                        
+                        <li><a href="http://edgent.incubator.apache.org/javadoc/r1.0.0/index.html" target="_blank">1.0.0</a></li>
+                        
+                        
+                        
+                        
+                        
+                        <li><a href="http://edgent.incubator.apache.org/javadoc/r0.4.0/index.html" target="_blank">0.4.0</a></li>
+                        
+                        
+                        
+                        
+
+                    </ul>
+                </li>
+                
+                
+
+
+                <!-- entries with drop-downs appear here -->
+                <!-- conditional logic to control which topnav appears for the audience defined in the configuration file.-->
+
+                <li class="dropdown">
+                    
+                    
+                    
+                    <a href="#" class="dropdown-toggle" data-toggle="dropdown">Edgent Resources<b class="caret"></b></a>
+                    <ul class="dropdown-menu">
+                        
+                        
+                        
+                        <li><a href="https://github.com/apache/incubator-edgent/releases" target="_blank">Download</a></li>
+                        
+                        
+                        
+                        
+                        
+                        <li><a href="samples">Samples</a></li>
+                        
+                        
+                        
+                        
+                        
+                        <li><a href="faq">FAQ</a></li>
+                        
+                        
+                        
+                        
+
+                    </ul>
+                </li>
+                
+                
+
+
+                <!-- special insertion -->
+
+               
+                <!-- Send feedback function -->
+<script>
+function SendLinkByMail(href) {
+var subject= "Apache Edgent Documentation feedback";
+var body = "I have some feedback about the Downloads page: ";
+body += window.location.href;
+body += "";
+var uri = "mailto:?subject=";
+uri += encodeURIComponent(subject);
+uri += "&body=";
+uri += encodeURIComponent(body);
+window.location.href = uri;
+}
+</script>
+
+<li><a href="mailto:dev@edgent.incubator.apache.org" target="_blank"><i class="fa fa-envelope-o"></i> Feedback</a></li>
+
+
+                <!--uncomment this block if you want simple search instead of algolia-->
+                <li>
+                     <!--start search-->
+                    <div id="search-demo-container">
+                        <input type="text" id="search-input" placeholder="search...">
+                        <ul id="results-container"></ul>
+                    </div>
+                    <script src="../js/jekyll-search.js" type="text/javascript"></script>
+                    <script type="text/javascript">
+                        SimpleJekyllSearch.init({
+                            searchInput: document.getElementById('search-input'),
+                            resultsContainer: document.getElementById('results-container'),
+                            dataSource: '../search.json',
+                            searchResultTemplate: '<li><a href="{url}" title="Downloads">{title}</a></li>',
+                        noResultsText: 'No results found.',
+                                limit: 10,
+                                fuzzy: true,
+                        })
+                    </script>
+                     <!--end search-->
+                </li>
+
+            
+        </div>
+        <!-- /.container -->
+</nav>
+
+
+
+    <!-- Page Content -->
+    <div class="container">
+        <div class="col-lg-12">&nbsp;</div>
+
+
+<!-- Content Row -->
+<div class="row">
+    <!-- Sidebar Column -->
+    <div class="col-md-3">
+
+        <script>
+
+            $(document).ready(function() {
+                // Initialize navgoco with default options
+                $("#mysidebar").navgoco({
+                    caretHtml: '',
+                    accordion: true,
+                    openClass: 'active', // open
+                    save: true,
+                    cookie: {
+                        name: 'navgoco',
+                        expires: false,
+                        path: '/'
+                    },
+                    slide: {
+                        duration: 400,
+                        easing: 'swing'
+                    }
+                });
+
+                $("#collapseAll").click(function(e) {
+                    e.preventDefault();
+                    $("#mysidebar").navgoco('toggle', false);
+                });
+
+                $("#expandAll").click(function(e) {
+                    e.preventDefault();
+                    $("#mysidebar").navgoco('toggle', true);
+                });
+
+            });
+
+        </script>
+
+
+        
+
+
+
+
+
+
+
+
+
+        <ul id="mysidebar" class="nav">
+
+            <span class="siteTagline">Edgent</span>
+            <span class="versionTagline">Version 1.0.0</span>
+
+            
+            
+            
+                
+            
+            <li><a href="#">Overview</a>
+                <ul>
+                    
+                    
+                    
+                    
+                    <li><a href="../docs/edgent_index.html">Introduction</a></li>
+                    
+
+                    
+
+                    
+                    
+                    
+                    
+                    
+                    <li><a href="../docs/faq.html">FAQ</a></li>
+                    
+
+                    
+
+                    
+                    
+                </ul>
+                
+                
+            
+            <li><a href="#">Get Started</a>
+                <ul>
+                    
+                    
+                    
+                    
+                    <li class="active"><a href="../docs/downloads.html">Downloads</a></li>
+                    
+
+                    
+
+                    
+                    
+                    
+                    
+                    
+                    <li><a href="../docs/edgent-getting-started.html">Getting started guide</a></li>
+                    
+
+                    
+
+                    
+                    
+                    
+                    
+                    
+                    <li><a href="../docs/streaming-concepts.html">Streaming concepts</a></li>
+                    
+
+                    
+
+                    
+                    
+                    
+                    
+                    
+                    <li><a href="../docs/common-edgent-operations.html">Common operations</a></li>
+                    
+
+                    
+
+                    
+                    
+                </ul>
+                
+                
+            
+            <li><a href="#">Edgent Cookbook</a>
+                <ul>
+                    
+                    
+                    
+                    
+                    <li><a href="../recipes/recipe_hello_edgent.html">Hello Edgent!</a></li>
+                    
+
+                    
+
+                    
+                    
+                    
+                    
+                    
+                    <li><a href="../recipes/recipe_source_function.html">Writing a source function</a></li>
+                    
+
+                    
+
+                    
+                    
+                    
+                    
+                    
+                    <li><a href="../recipes/recipe_value_out_of_range.html">Detecting a sensor value out of expected range</a></li>
+                    
+
+                    
+
+                    
+                    
+                    
+                    
+                    
+                    <li><a href="../recipes/recipe_different_processing_against_stream.html">Applying different processing against a single stream</a></li>
+                    
+
+                    
+
+                    
+                    
+                    
+                    
+                    
+                    <li><a href="../recipes/recipe_combining_streams_processing_results.html">Splitting a stream to apply different processing and combining the results into a single stream</a></li>
+                    
+
+                    
+
+                    
+                    
+                    
+                    
+                    
+                    <li><a href="../recipes/recipe_external_filter_range.html">Using an external configuration file for filter ranges</a></li>
+                    
+
+                    
+
+                    
+                    
+                    
+                    
+                    
+                    <li><a href="../recipes/recipe_adaptable_filter_range.html">Changing a filter's range</a></li>
+                    
+
+                    
+
+                    
+                    
+                    
+                    
+                    
+                    <li><a href="../recipes/recipe_adaptable_polling_source.html">Changing a polled source stream's period</a></li>
+                    
+
+                    
+
+                    
+                    
+                    
+                    
+                    
+                    <li><a href="../recipes/recipe_adaptable_deadtime_filter.html">Using an adaptable deadtime filter</a></li>
+                    
+
+                    
+
+                    
+                    
+                    
+                    
+                    
+                    <li><a href="../recipes/recipe_dynamic_analytic_control.html">Dynamically enabling analytic flows</a></li>
+                    
+
+                    
+
+                    
+                    
+                    
+                    
+                    
+                    <li><a href="../recipes/recipe_parallel_analytics.html">How can I run analytics on several tuples in parallel?</a></li>
+                    
+
+                    
+
+                    
+                    
+                    
+                    
+                    
+                    <li><a href="../recipes/recipe_concurrent_analytics.html">How can I run several analytics on a tuple concurrently?</a></li>
+                    
+
+                    
+
+                    
+                    
+                </ul>
+                
+                
+            
+            <li><a href="#">Sample Programs</a>
+                <ul>
+                    
+                    
+                    
+                    
+                    <li><a href="../docs/samples.html">Samples</a></li>
+                    
+
+                    
+
+                    
+                    
+                    
+                    
+                    
+                    <li><a href="../docs/quickstart.html">Quickstart IBM Watson IoT Platform</a></li>
+                    
+
+                    
+
+                    
+                    
+                </ul>
+                
+                
+            
+            <li><a href="#">Using the Console</a>
+                <ul>
+                    
+                    
+                    
+                    
+                    <li><a href="../docs/console.html">Using the console</a></li>
+                    
+
+                    
+
+                    
+                    
+                </ul>
+                
+                
+            
+            <li><a href="#">Get Involved</a>
+                <ul>
+                    
+                    
+                    
+                    
+                    <li><a href="../docs/community.html">How to participate</a></li>
+                    
+
+                    
+
+                    
+                    
+                    
+                    
+                    
+                    <li><a href="../docs/committers.html">Committers</a></li>
+                    
+
+                    
+
+                    
+                    
+                </ul>
+                
+                
+                
+
+
+                <!-- if you aren't using the accordion, uncomment this block:
+
+                     <p class="external">
+                         <a href="#" id="collapseAll">Collapse All</a> | <a href="#" id="expandAll">Expand All</a>
+                     </p>
+                 -->
+				 <br/>
+			</li>
+		</ul>
+		<div class="row">
+		<div class="col-md-12">
+			
+<!-- this handles the automatic toc. use ## for subheads to auto-generate the on-page minitoc. if you use html tags, you must supply an ID for the heading element in order for it to appear in the minitoc. -->
+<script>
+$( document ).ready(function() {
+  // Handler for .ready() called.
+
+$('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3,h4' });
+
+/* this offset helps account for the space taken up by the floating toolbar. */
+$('#toc').on('click', 'a', function() {
+  var target = $(this.getAttribute('href'))
+    , scroll_target = target.offset().top
+
+  $(window).scrollTop(scroll_target - 10);
+  return false
+})
+  
+});
+</script>
+
+
+<div id="toc"></div>
+
+		</div>
+	</div>
+	</div>
+	
+    <!-- this highlights the active parent class in the navgoco sidebar. this is critical so that the parent expands when you're viewing a page. This must appear below the sidebar code above. Otherwise, if placed inside customscripts.js, the script runs before the sidebar code runs and the class never gets inserted.-->
+    <script>$("li.active").parents('li').toggleClass("active");</script>
+
+
+            <!-- Content Column -->
+            <div class="col-md-9">
+                
+                <div class="post-header">
+   <h1 class="post-title-main">Downloads</h1>
+</div>
+
+<div class="post-content">
+
+   
+
+<!-- this handles the automatic toc. use ## for subheads to auto-generate the on-page minitoc. if you use html tags, you must supply an ID for the heading element in order for it to appear in the minitoc. -->
+<script>
+$( document ).ready(function() {
+  // Handler for .ready() called.
+
+$('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3,h4' });
+
+/* this offset helps account for the space taken up by the floating toolbar. */
+$('#toc').on('click', 'a', function() {
+  var target = $(this.getAttribute('href'))
+    , scroll_target = target.offset().top
+
+  $(window).scrollTop(scroll_target - 10);
+  return false
+})
+  
+});
+</script>
+
+
+<div id="toc"></div>
+
+
+    
+
+    <a target="_blank" href="https://github.com/apache/incubator-edgent-website/blob/master/site/docs/downloads.md" class="btn btn-default githubEditButton" role="button"><i class="fa fa-github fa-lg"></i> Edit me</a>
+    
+  <h2 id="download-now">Download now.</h2>
+
+<p>Official Apache Edgent releases are available for download from the ASF distribution site. A release consists of a source code bundle and a convenience binary bundle. The Edgent ASF distribution site is <a href="http://www.apache.org/dyn/closer.cgi/incubator/edgent">here</a>. Information about verifying the integrity of the release bundles can also be found there.</p>
+
+<p>The Edgent source is also available from the Edgent ASF <a href="https://git-wip-us.apache.org/repos/asf/incubator-edgent.git">git repository</a>.</p>
+
+<p>If you just want to use Edgent, it is easiest to download and unpack a binary bundle. The bundle includes the release&#39;s javadoc. The javadoc is also accessible online. For more information, please refer to the <a href="edgent-getting-started">Getting started guide</a></p>
+
+<p>A source bundle contains a README describing how to build the sources.</p>
+
+<p>If you want access the latest unreleased Edgent source or to contribute to Edgent runtime development, using the <a href="https://github.com/apache/incubator-edgent">GitHub</a> repository is recommended. You can also select a particular release version by release tag (e.g., 1.0.0-incubating). See README.md and DEVELOPMENT.md in the repository for more information.</p>
+
+<p>See <a href="community.html">here</a> for more information about contributing to Edgent development.</p>
+
+<h2 id="apache-edgent-incubating-release-history">Apache Edgent (incubating) release history</h2>
+
+<table><thead>
+<tr>
+<th style="text-align: center">Version</th>
+<th style="text-align: center">Date</th>
+<th style="text-align: center">Source</th>
+<th style="text-align: center">Release Notes</th>
+<th style="text-align: center">Docs</th>
+<th style="text-align: center">GPG</th>
+<th style="text-align: center">MD5</th>
+<th style="text-align: center">SHA</th>
+</tr>
+</thead><tbody>
+<tr>
+<td style="text-align: center">1.0.0-incubating</td>
+<td style="text-align: center">2016-12-15</td>
+<td style="text-align: center"><a href="http://www.apache.org/dyn/closer.cgi/incubator/edgent/1.0.0-incubating">Download</a></td>
+<td style="text-align: center"><a href="https://github.com/apache/incubator-edgent/blob/1.0.0-incubating/RELEASE_NOTES">1.0.0 Release</a></td>
+<td style="text-align: center"><a href="http://edgent.incubator.apache.org/javadoc/r1.0.0/index.html">JavaDoc</a></td>
+<td style="text-align: center"><a href="https://www.apache.org/dist/incubator/edgent/1.0.0-incubating/apache-edgent-1.0.0-incubating-src.tgz.asc">ASC</a></td>
+<td style="text-align: center"><a href="https://www.apache.org/dist/incubator/edgent/1.0.0-incubating/apache-edgent-1.0.0-incubating-src.tgz.md5">MD5</a></td>
+<td style="text-align: center"><a href="https://www.apache.org/dist/incubator/edgent/1.0.0-incubating/apache-edgent-1.0.0-incubating-src.tgz.sha">SHA</a></td>
+</tr>
+</tbody></table>
+
+<p>Download the <a href="https://www.apache.org/dist/incubator/edgent/KEYS">KEYS file</a> to verify the Edgent artifact</p>
+
+
+<div class="tags">
+    
+</div>
+
+<!-- 
+
+    <div id="disqus_thread"></div>
+    <script type="text/javascript">
+        /* * * CONFIGURATION VARIABLES: EDIT BEFORE PASTING INTO YOUR WEBPAGE * * */
+        var disqus_shortname = 'idrbwjekyll'; // required: replace example with your forum shortname
+
+        /* * * DON'T EDIT BELOW THIS LINE * * */
+        (function() {
+            var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
+            dsq.src = '//' + disqus_shortname + '.disqus.com/embed.js';
+            (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
+        })();
+    </script>
+    <noscript>Please enable JavaScript to view the <a href="https://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>
+ -->
+
+</div>
+
+
+
+<footer>
+    <div class="row">
+        <div class="col-lg-12 footer">
+
+             Site last
+            generated: Dec 22, 2016 <br/>
+
+        </div>
+    </div>
+    <br/>
+    <div class="row">
+        <div class="col-md-12">
+            <p class="small">Apache Edgent is an effort undergoing Incubation at The Apache Software
+                Foundation (ASF), sponsored by the Incubator. Incubation is required of all newly accepted projects
+                until a further review indicates that the infrastructure, communications, and decision making process
+                have stabilized in a manner consistent with other successful ASF projects. While incubation status is
+                not necessarily a reflection of the completeness or stability of the code, it does indicate that the
+                project has yet to be fully endorsed by the ASF.</p>
+        </div>
+    </div>
+    <div class="row">
+        <div class="col-md-12">
+            <p class="small">Copyright � 2016 The Apache Software Foundation. Licensed under the Apache
+                License, Version 2.0.
+                Apache, the Apache Feather logo, and the Apache Incubator project logo are trademarks of The Apache
+                Software Foundation. All other marks mentioned may be trademarks or registered trademarks of their
+                respective owners.</p>
+        </div>
+    </div>
+</footer>
+
+            </div><!-- /.row -->
+
+    </div>    <!-- /.container -->
+
+</body>
+
+
+</html>
+

http://git-wip-us.apache.org/repos/asf/incubator-edgent-website/blob/b95141ed/content/docs/edgent-getting-started.html
----------------------------------------------------------------------
diff --git a/content/docs/edgent-getting-started.html b/content/docs/edgent-getting-started.html
index 134838f..68c8ac4 100644
--- a/content/docs/edgent-getting-started.html
+++ b/content/docs/edgent-getting-started.html
@@ -320,6 +320,16 @@ window.location.href = uri;
                     
                     
                     
+                    <li><a href="../docs/downloads.html">Downloads</a></li>
+                    
+
+                    
+
+                    
+                    
+                    
+                    
+                    
                     <li class="active"><a href="../docs/edgent-getting-started.html">Getting started guide</a></li>
                     
 
@@ -656,9 +666,9 @@ $('#toc').on('click', 'a', function() {
 
 <h3 id="downloading-apache-edgent">Downloading Apache Edgent</h3>
 
-<p>To use Edgent, access the source code and build it. You can read more about building Edgent <a href="https://github.com/apache/incubator-edgent/blob/master/DEVELOPMENT.md">here</a>.</p>
+<p>To use Edgent you need the Edgent jars. You can either download the Edgent source and build it or you can download a pre-built version of Edgent. See the <a href="downloads">download page</a>.</p>
 
-<p>After you build the Edgent package, you can set up your environment.</p>
+<p>After you have the Edgent jars, you can set up your environment.</p>
 
 <h3 id="setting-up-your-environment">Setting up your environment</h3>
 
@@ -836,7 +846,7 @@ $('#toc').on('click', 'a', function() {
         <div class="col-lg-12 footer">
 
              Site last
-            generated: Dec 17, 2016 <br/>
+            generated: Dec 22, 2016 <br/>
 
         </div>
     </div>

http://git-wip-us.apache.org/repos/asf/incubator-edgent-website/blob/b95141ed/content/docs/edgent_index.html
----------------------------------------------------------------------
diff --git a/content/docs/edgent_index.html b/content/docs/edgent_index.html
index 8930ede..0ea3aa3 100644
--- a/content/docs/edgent_index.html
+++ b/content/docs/edgent_index.html
@@ -320,6 +320,16 @@ window.location.href = uri;
                     
                     
                     
+                    <li><a href="../docs/downloads.html">Downloads</a></li>
+                    
+
+                    
+
+                    
+                    
+                    
+                    
+                    
                     <li><a href="../docs/edgent-getting-started.html">Getting started guide</a></li>
                     
 
@@ -689,7 +699,7 @@ $('#toc').on('click', 'a', function() {
         <div class="col-lg-12 footer">
 
              Site last
-            generated: Dec 17, 2016 <br/>
+            generated: Dec 22, 2016 <br/>
 
         </div>
     </div>

http://git-wip-us.apache.org/repos/asf/incubator-edgent-website/blob/b95141ed/content/docs/faq.html
----------------------------------------------------------------------
diff --git a/content/docs/faq.html b/content/docs/faq.html
index 149b362..23c9f6f 100644
--- a/content/docs/faq.html
+++ b/content/docs/faq.html
@@ -320,6 +320,16 @@ window.location.href = uri;
                     
                     
                     
+                    <li><a href="../docs/downloads.html">Downloads</a></li>
+                    
+
+                    
+
+                    
+                    
+                    
+                    
+                    
                     <li><a href="../docs/edgent-getting-started.html">Getting started guide</a></li>
                     
 
@@ -673,7 +683,7 @@ $('#toc').on('click', 'a', function() {
 
 <h2 id="where-can-i-download-apache-edgent-to-try-it-out">Where can I download Apache Edgent to try it out?</h2>
 
-<p>You can download the source from Apache and build it yourself <a href="https://github.com/apache/incubator-edgent">here</a>. You can also find already pre-built Apache releases of Edgent for download <a href="https://www.apache.org/dist/release/incubator/edgent">here</a> (But this location is temporarily unavailable until we get the first release out).</p>
+<p>You can download Apache Edgent from <a href="downloads">here</a>.</p>
 
 <h2 id="how-do-i-get-started">How do I get started?</h2>
 
@@ -750,7 +760,7 @@ $('#toc').on('click', 'a', function() {
         <div class="col-lg-12 footer">
 
              Site last
-            generated: Dec 17, 2016 <br/>
+            generated: Dec 22, 2016 <br/>
 
         </div>
     </div>

http://git-wip-us.apache.org/repos/asf/incubator-edgent-website/blob/b95141ed/content/docs/home.html
----------------------------------------------------------------------
diff --git a/content/docs/home.html b/content/docs/home.html
index 6083cca..3df43e4 100644
--- a/content/docs/home.html
+++ b/content/docs/home.html
@@ -320,6 +320,16 @@ window.location.href = uri;
                     
                     
                     
+                    <li><a href="../docs/downloads.html">Downloads</a></li>
+                    
+
+                    
+
+                    
+                    
+                    
+                    
+                    
                     <li><a href="../docs/edgent-getting-started.html">Getting started guide</a></li>
                     
 
@@ -751,7 +761,7 @@ $('#toc').on('click', 'a', function() {
         <div class="col-lg-12 footer">
 
              Site last
-            generated: Dec 17, 2016 <br/>
+            generated: Dec 22, 2016 <br/>
 
         </div>
     </div>

http://git-wip-us.apache.org/repos/asf/incubator-edgent-website/blob/b95141ed/content/docs/overview.html
----------------------------------------------------------------------
diff --git a/content/docs/overview.html b/content/docs/overview.html
index af1b52e..14d6ce8 100644
--- a/content/docs/overview.html
+++ b/content/docs/overview.html
@@ -320,6 +320,16 @@ window.location.href = uri;
                     
                     
                     
+                    <li><a href="../docs/downloads.html">Downloads</a></li>
+                    
+
+                    
+
+                    
+                    
+                    
+                    
+                    
                     <li><a href="../docs/edgent-getting-started.html">Getting started guide</a></li>
                     
 
@@ -736,7 +746,7 @@ medical device.</li>
         <div class="col-lg-12 footer">
 
              Site last
-            generated: Dec 17, 2016 <br/>
+            generated: Dec 22, 2016 <br/>
 
         </div>
     </div>

http://git-wip-us.apache.org/repos/asf/incubator-edgent-website/blob/b95141ed/content/docs/quickstart.html
----------------------------------------------------------------------
diff --git a/content/docs/quickstart.html b/content/docs/quickstart.html
index c459a0c..0d8811f 100644
--- a/content/docs/quickstart.html
+++ b/content/docs/quickstart.html
@@ -320,6 +320,16 @@ window.location.href = uri;
                     
                     
                     
+                    <li><a href="../docs/downloads.html">Downloads</a></li>
+                    
+
+                    
+
+                    
+                    
+                    
+                    
+                    
                     <li><a href="../docs/edgent-getting-started.html">Getting started guide</a></li>
                     
 
@@ -706,7 +716,7 @@ and Edgent provides a <a href="http://edgent.incubator.apache.org/javadoc/latest
         <div class="col-lg-12 footer">
 
              Site last
-            generated: Dec 17, 2016 <br/>
+            generated: Dec 22, 2016 <br/>
 
         </div>
     </div>

http://git-wip-us.apache.org/repos/asf/incubator-edgent-website/blob/b95141ed/content/docs/samples.html
----------------------------------------------------------------------
diff --git a/content/docs/samples.html b/content/docs/samples.html
index cd057fa..752efd5 100644
--- a/content/docs/samples.html
+++ b/content/docs/samples.html
@@ -320,6 +320,16 @@ window.location.href = uri;
                     
                     
                     
+                    <li><a href="../docs/downloads.html">Downloads</a></li>
+                    
+
+                    
+
+                    
+                    
+                    
+                    
+                    
                     <li><a href="../docs/edgent-getting-started.html">Getting started guide</a></li>
                     
 
@@ -727,7 +737,7 @@ $('#toc').on('click', 'a', function() {
         <div class="col-lg-12 footer">
 
              Site last
-            generated: Dec 17, 2016 <br/>
+            generated: Dec 22, 2016 <br/>
 
         </div>
     </div>

http://git-wip-us.apache.org/repos/asf/incubator-edgent-website/blob/b95141ed/content/docs/search.html
----------------------------------------------------------------------
diff --git a/content/docs/search.html b/content/docs/search.html
index f636964..5b7a52b 100644
--- a/content/docs/search.html
+++ b/content/docs/search.html
@@ -320,6 +320,16 @@ window.location.href = uri;
                     
                     
                     
+                    <li><a href="../docs/downloads.html">Downloads</a></li>
+                    
+
+                    
+
+                    
+                    
+                    
+                    
+                    
                     <li><a href="../docs/edgent-getting-started.html">Getting started guide</a></li>
                     
 
@@ -654,7 +664,7 @@ $('#toc').on('click', 'a', function() {
         <div class="col-lg-12 footer">
 
              Site last
-            generated: Dec 17, 2016 <br/>
+            generated: Dec 22, 2016 <br/>
 
         </div>
     </div>

http://git-wip-us.apache.org/repos/asf/incubator-edgent-website/blob/b95141ed/content/docs/streaming-concepts.html
----------------------------------------------------------------------
diff --git a/content/docs/streaming-concepts.html b/content/docs/streaming-concepts.html
index 0fda20f..c394bec 100644
--- a/content/docs/streaming-concepts.html
+++ b/content/docs/streaming-concepts.html
@@ -320,6 +320,16 @@ window.location.href = uri;
                     
                     
                     
+                    <li><a href="../docs/downloads.html">Downloads</a></li>
+                    
+
+                    
+
+                    
+                    
+                    
+                    
+                    
                     <li><a href="../docs/edgent-getting-started.html">Getting started guide</a></li>
                     
 
@@ -1415,7 +1425,7 @@ $('#toc').on('click', 'a', function() {
         <div class="col-lg-12 footer">
 
              Site last
-            generated: Dec 17, 2016 <br/>
+            generated: Dec 22, 2016 <br/>
 
         </div>
     </div>

http://git-wip-us.apache.org/repos/asf/incubator-edgent-website/blob/b95141ed/content/docs/tag_collaboration.html
----------------------------------------------------------------------
diff --git a/content/docs/tag_collaboration.html b/content/docs/tag_collaboration.html
index 95f279a..d2b1d15 100644
--- a/content/docs/tag_collaboration.html
+++ b/content/docs/tag_collaboration.html
@@ -320,6 +320,16 @@ window.location.href = uri;
                     
                     
                     
+                    <li><a href="../docs/downloads.html">Downloads</a></li>
+                    
+
+                    
+
+                    
+                    
+                    
+                    
+                    
                     <li><a href="../docs/edgent-getting-started.html">Getting started guide</a></li>
                     
 
@@ -655,6 +665,8 @@ $('#toc').on('click', 'a', function() {
     
    
     
+   
+    
         
      
    
@@ -757,7 +769,7 @@ $('#toc').on('click', 'a', function() {
         <div class="col-lg-12 footer">
 
              Site last
-            generated: Dec 17, 2016 <br/>
+            generated: Dec 22, 2016 <br/>
 
         </div>
     </div>

http://git-wip-us.apache.org/repos/asf/incubator-edgent-website/blob/b95141ed/content/docs/tag_content_types.html
----------------------------------------------------------------------
diff --git a/content/docs/tag_content_types.html b/content/docs/tag_content_types.html
index cc8ac87..8fb8f99 100644
--- a/content/docs/tag_content_types.html
+++ b/content/docs/tag_content_types.html
@@ -320,6 +320,16 @@ window.location.href = uri;
                     
                     
                     
+                    <li><a href="../docs/downloads.html">Downloads</a></li>
+                    
+
+                    
+
+                    
+                    
+                    
+                    
+                    
                     <li><a href="../docs/edgent-getting-started.html">Getting started guide</a></li>
                     
 
@@ -655,6 +665,8 @@ $('#toc').on('click', 'a', function() {
     
    
     
+   
+    
         
      
    
@@ -757,7 +769,7 @@ $('#toc').on('click', 'a', function() {
         <div class="col-lg-12 footer">
 
              Site last
-            generated: Dec 17, 2016 <br/>
+            generated: Dec 22, 2016 <br/>
 
         </div>
     </div>

http://git-wip-us.apache.org/repos/asf/incubator-edgent-website/blob/b95141ed/content/docs/tag_formatting.html
----------------------------------------------------------------------
diff --git a/content/docs/tag_formatting.html b/content/docs/tag_formatting.html
index b742444..b66d554 100644
--- a/content/docs/tag_formatting.html
+++ b/content/docs/tag_formatting.html
@@ -320,6 +320,16 @@ window.location.href = uri;
                     
                     
                     
+                    <li><a href="../docs/downloads.html">Downloads</a></li>
+                    
+
+                    
+
+                    
+                    
+                    
+                    
+                    
                     <li><a href="../docs/edgent-getting-started.html">Getting started guide</a></li>
                     
 
@@ -655,6 +665,8 @@ $('#toc').on('click', 'a', function() {
     
    
     
+   
+    
         
      
    
@@ -757,7 +769,7 @@ $('#toc').on('click', 'a', function() {
         <div class="col-lg-12 footer">
 
              Site last
-            generated: Dec 17, 2016 <br/>
+            generated: Dec 22, 2016 <br/>
 
         </div>
     </div>

http://git-wip-us.apache.org/repos/asf/incubator-edgent-website/blob/b95141ed/content/docs/tag_getting_started.html
----------------------------------------------------------------------
diff --git a/content/docs/tag_getting_started.html b/content/docs/tag_getting_started.html
index 643bb3b..4424f95 100644
--- a/content/docs/tag_getting_started.html
+++ b/content/docs/tag_getting_started.html
@@ -320,6 +320,16 @@ window.location.href = uri;
                     
                     
                     
+                    <li><a href="../docs/downloads.html">Downloads</a></li>
+                    
+
+                    
+
+                    
+                    
+                    
+                    
+                    
                     <li><a href="../docs/edgent-getting-started.html">Getting started guide</a></li>
                     
 
@@ -655,6 +665,8 @@ $('#toc').on('click', 'a', function() {
     
    
     
+   
+    
         
         
         <tr><td><a href="../docs/home">Introduction</a></td>
@@ -762,7 +774,7 @@ $('#toc').on('click', 'a', function() {
         <div class="col-lg-12 footer">
 
              Site last
-            generated: Dec 17, 2016 <br/>
+            generated: Dec 22, 2016 <br/>
 
         </div>
     </div>

http://git-wip-us.apache.org/repos/asf/incubator-edgent-website/blob/b95141ed/content/docs/tag_mobile.html
----------------------------------------------------------------------
diff --git a/content/docs/tag_mobile.html b/content/docs/tag_mobile.html
index 8517778..0471b7e 100644
--- a/content/docs/tag_mobile.html
+++ b/content/docs/tag_mobile.html
@@ -320,6 +320,16 @@ window.location.href = uri;
                     
                     
                     
+                    <li><a href="../docs/downloads.html">Downloads</a></li>
+                    
+
+                    
+
+                    
+                    
+                    
+                    
+                    
                     <li><a href="../docs/edgent-getting-started.html">Getting started guide</a></li>
                     
 
@@ -655,6 +665,8 @@ $('#toc').on('click', 'a', function() {
     
    
     
+   
+    
         
      
    
@@ -757,7 +769,7 @@ $('#toc').on('click', 'a', function() {
         <div class="col-lg-12 footer">
 
              Site last
-            generated: Dec 17, 2016 <br/>
+            generated: Dec 22, 2016 <br/>
 
         </div>
     </div>

http://git-wip-us.apache.org/repos/asf/incubator-edgent-website/blob/b95141ed/content/docs/tag_navigation.html
----------------------------------------------------------------------
diff --git a/content/docs/tag_navigation.html b/content/docs/tag_navigation.html
index c6a49a8..c00a510 100644
--- a/content/docs/tag_navigation.html
+++ b/content/docs/tag_navigation.html
@@ -320,6 +320,16 @@ window.location.href = uri;
                     
                     
                     
+                    <li><a href="../docs/downloads.html">Downloads</a></li>
+                    
+
+                    
+
+                    
+                    
+                    
+                    
+                    
                     <li><a href="../docs/edgent-getting-started.html">Getting started guide</a></li>
                     
 
@@ -655,6 +665,8 @@ $('#toc').on('click', 'a', function() {
     
    
     
+   
+    
         
      
    
@@ -757,7 +769,7 @@ $('#toc').on('click', 'a', function() {
         <div class="col-lg-12 footer">
 
              Site last
-            generated: Dec 17, 2016 <br/>
+            generated: Dec 22, 2016 <br/>
 
         </div>
     </div>

http://git-wip-us.apache.org/repos/asf/incubator-edgent-website/blob/b95141ed/content/docs/tag_publishing.html
----------------------------------------------------------------------
diff --git a/content/docs/tag_publishing.html b/content/docs/tag_publishing.html
index 7d9dc09..8d7d740 100644
--- a/content/docs/tag_publishing.html
+++ b/content/docs/tag_publishing.html
@@ -320,6 +320,16 @@ window.location.href = uri;
                     
                     
                     
+                    <li><a href="../docs/downloads.html">Downloads</a></li>
+                    
+
+                    
+
+                    
+                    
+                    
+                    
+                    
                     <li><a href="../docs/edgent-getting-started.html">Getting started guide</a></li>
                     
 
@@ -655,6 +665,8 @@ $('#toc').on('click', 'a', function() {
     
    
     
+   
+    
         
      
    
@@ -757,7 +769,7 @@ $('#toc').on('click', 'a', function() {
         <div class="col-lg-12 footer">
 
              Site last
-            generated: Dec 17, 2016 <br/>
+            generated: Dec 22, 2016 <br/>
 
         </div>
     </div>

http://git-wip-us.apache.org/repos/asf/incubator-edgent-website/blob/b95141ed/content/docs/tag_single_sourcing.html
----------------------------------------------------------------------
diff --git a/content/docs/tag_single_sourcing.html b/content/docs/tag_single_sourcing.html
index 22cf969..3572c8f 100644
--- a/content/docs/tag_single_sourcing.html
+++ b/content/docs/tag_single_sourcing.html
@@ -320,6 +320,16 @@ window.location.href = uri;
                     
                     
                     
+                    <li><a href="../docs/downloads.html">Downloads</a></li>
+                    
+
+                    
+
+                    
+                    
+                    
+                    
+                    
                     <li><a href="../docs/edgent-getting-started.html">Getting started guide</a></li>
                     
 
@@ -655,6 +665,8 @@ $('#toc').on('click', 'a', function() {
     
    
     
+   
+    
         
      
    
@@ -757,7 +769,7 @@ $('#toc').on('click', 'a', function() {
         <div class="col-lg-12 footer">
 
              Site last
-            generated: Dec 17, 2016 <br/>
+            generated: Dec 22, 2016 <br/>
 
         </div>
     </div>

http://git-wip-us.apache.org/repos/asf/incubator-edgent-website/blob/b95141ed/content/docs/tag_special_layouts.html
----------------------------------------------------------------------
diff --git a/content/docs/tag_special_layouts.html b/content/docs/tag_special_layouts.html
index 81e68dd..93c9450 100644
--- a/content/docs/tag_special_layouts.html
+++ b/content/docs/tag_special_layouts.html
@@ -320,6 +320,16 @@ window.location.href = uri;
                     
                     
                     
+                    <li><a href="../docs/downloads.html">Downloads</a></li>
+                    
+
+                    
+
+                    
+                    
+                    
+                    
+                    
                     <li><a href="../docs/edgent-getting-started.html">Getting started guide</a></li>
                     
 
@@ -655,6 +665,8 @@ $('#toc').on('click', 'a', function() {
     
    
     
+   
+    
         
      
    
@@ -757,7 +769,7 @@ $('#toc').on('click', 'a', function() {
         <div class="col-lg-12 footer">
 
              Site last
-            generated: Dec 17, 2016 <br/>
+            generated: Dec 22, 2016 <br/>
 
         </div>
     </div>