<!DOCTYPE html>
<!--

-->
 
<html>
    <link rel="shortcut icon" type="image/png" href="/favicon.png">
	<!--

-->
 <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="Apache Edgent is an open source community for accelerating analytics at the edge.">
    <meta name="author" content="">

    <title>Edgent</title>

    <!-- Bootstrap Core CSS -->
    <link href="css/bootstrap.min.css" rel="stylesheet">

    <!-- Custom CSS -->
    <link href="css/landing-page.css" rel="stylesheet">

    <!-- Custom Fonts -->
    <link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css" rel="stylesheet" type="text/css">
    <link href="http://fonts.googleapis.com/css?family=Lato:300,400,700,300italic,400italic,700italic" rel="stylesheet" type="text/css">
    <link rel="shortcut icon" type="image/png" href="favicon.png">
    <!-- 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]-->

</head>


	<body>
		<!--

-->


<section id="home">
<!-- Header -->
	<div class="intro-header">

		<div class="container">

			<div class="row">
				<div class="col-lg-4 vcenter">
					<div class="intro-message">
						<img class="logo-img" src="img/apache_logo.png" alt="">
                        <!-- <h1>Edgent</h1> -->
						<!-- <h3>A Community for <br>Accelerating Analytics at the Edge</h3> -->
						<!-- <hr class="intro-divider"> -->
					</div>
				</div>
                <div class="col-lg-6 vcenter">
                    <div class="intro-message">

                        <!-- <h1>Edgent</h1> -->
						<h2>A Community for <br>Accelerating Analytics at the Edge</h2>
						<!-- <hr class="intro-divider"> -->
					</div>
                </div>
			</div>
		</div>
		<!-- /.container -->

	</div>
	<!-- /.intro-header -->
</section>

<!-- Navigation -->
<div id="nav-bar">
    <nav id="nav-container" class="navbar navbar-inverse " role="navigation">
        <div class="container">
            <!-- Brand and toggle get grouped for better mobile display -->

            <div class="navbar-header page-scroll">
                <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="navbar-brand page-scroll" href="/#home">Home</a>
            </div>
            <!-- Collect the nav links, forms, and other content for toggling -->
            <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
                <ul class="nav navbar-nav">
                    <li class="dropdown"><a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">About Edgent</a>
                      <ul class="dropdown-menu">
                        <li><a href="/docs/overview">About Edgent</a></li>
                        <li><a href="https://github.com/apache/incubator-edgent/blob/master/LICENSE">License</a></li>
                      </ul>
                    </li>
                    <li class="dropdown"><a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Community</a>
                      <ul class="dropdown-menu">
                        <li><a href="docs/community">Get Involved</a></li>
                        <li><a href="https://issues.apache.org/jira/browse/EDGENT">Issue Tracker</a></li>
                        <li><a href="docs/downloads">Source Code</a></li>
                        <li><a href="docs/committers">Committers</a></li>
                        <li><a href="https://cwiki.apache.org/confluence/display/Edgent/Apache+Edgent+Wiki+Home">Wiki</a></li>
                      </ul>
                    </li>
                    <li class="dropdown"><a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Getting Started</a>
                      <ul class="dropdown-menu">
                        <li><a href="docs/edgent-getting-started">Getting Started Guide</a></li>
                        <li><a href="docs/downloads">Downloads</a></li>
                        <li><a href="docs/faq">FAQ</a></li>

                      </ul>
                    </li>
                    <li class="dropdown">
                      <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Documentation</a>
                      <ul class="dropdown-menu">
                        <li><a href="docs/home">Documentation Home</a></li>
                        <li><a href="/javadoc/latest/index.html">Javadoc</a></li>
                      </ul>
                    </li>
                    <li class="dropdown">
                      <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Apache</a>
                      <ul class="dropdown-menu">
                        <li><a href="http://www.apache.org/foundation/how-it-works.html">Apache Software Foundation</a></li>
                        <li><a href="http://www.apache.org/licenses/">Apache License</a></li>
                        <li><a href="http://www.apache.org/foundation/sponsorship.html">Sponsorship</a></li>
                        <li><a href="http://www.apache.org/foundation/thanks.html">Thanks</a></li>
                      </ul>
                    </li>
                </ul>
                <ul class="nav navbar-nav navbar-right">
                    <li>
                        <a href="/docs/downloads">Downloads</a>
                    </li>
                   <!-- <li>
                        <a class="page-scroll" href="#services">Services</a>
                    </li>
                    <li>
                        <a class="page-scroll" href="#contact">Contact</a>
                    </li> -->
                </ul>
            </div>
            <!-- /.navbar-collapse -->
        </div>
        <!-- /.container -->
    </nav>
</div>

		<!--

-->
 <section id="whyContribute">
    <div class="content-section-b">
        <div class="container">

            <div class="row">
                <div class="col-lg-12 col-sm-12">
                    <!-- <div class="clearfix"></div> -->
                    <h2 class="section-heading">Apache Edgent (incubating)</h2>
                    <div class="lead">Apache Edgent is a programming model and micro-kernel style runtime that can be embedded in gateways and small footprint edge devices enabling local, real-time, analytics on the continuous streams of data coming from equipment, vehicles, systems, appliances, devices and sensors of all kinds (for example, Raspberry Pis or smart phones). Working in conjunction with centralized analytic systems, Apache Edgent provides efficient and timely analytics across the whole IoT ecosystem: from the center to the edge.</div>
                </div>
            </div>
        </div>
    </div>
</section>

		<!--

-->
 <section id="services">
    <div class="content-section-b">

        <div class="container">

            <div class="row">

                <div class="col-lg-12 col-sm-12">
                    <a href="http://events.linuxfoundation.org/events/apachecon-north-america"><img src="https://apachecon.com/images/apache/apachecon_na_500x500.png" style="width: 400px; height: auto;"></a>

                    <h3><a href="https://apachecon2017.sched.com/event/9zp4/video-analytics-at-the-edge-fun-with-apache-edgent-opencv-and-a-raspberry-pi-william-marshall-dale-labossiere-ibm?iframe=no&w=&sidebar=yes&bg=no">Video Analytics at the Edge: Fun with Apache Edgent, OpenCV and a Raspberry Pi</a></h3>
                    <h4>Tuesday May 16, 2017 • 2:30pm - 3:20pm EST</h4>
                    <h4>Venue: Michaelangelo</h4>
                    <h4>Presenters: William Marshall &amp; Dale LaBossiere, IBM</h4>

                    <div class="lead">Apache Edgent (incubating) is a streaming programming model and runtime designed to accelerate the development of analytics on small edge devices or gateways. Enabling streaming analytics on edge devices can reduce the load on data center and communication costs. Furthermore, edge analytics can reduce decision making latency and enable device autonomy. Edgent uses a functional API to compose processing pipelines with immediate per-tuple computation, and also provides a suite of connectors which greatly ease communication with a backend. This presentation introduces Apache Edgent and provides a video analytics use case to illustrate its programming model and capabilities.</div>

                    <h3><a href="https://apachecon2017.sched.com/event/9zoy/having-fun-with-raspberrys-and-apache-projects-jean-frederic-clere-red-hat?iframe=no&w=&sidebar=yes&bg=no">Having fun with Raspberry(s) and Apache Projects</a></h3>
                    <h4>Wednesday, May 17 • 12:15pm - 1:05pm EST</h4>
                    <h4>Venue: Sandringham</h4>
                    <h4>Presenter: Jean-Frederic Clere, Red Hat</h4>

                    <div class="lead">You can do a lot with a Raspberry and ASF projects. From a Tiny object connected to Internet to a small server application.
                        <ul>
                            <li>Raspberry as a IoT Sensor collecting data and sending it to ActiveMQ.</li>
                            <li>Raspberry as a Modbus supervisor controlling an Industruino (Insdustrial Arduino) and connected to ActiveMQ.</li>
                            <li>Using Apache edgent with same :D</li>
                        </ul>
                    </div>
                </div>

            </div>

        </div>
        <!-- /.container -->


    </div>

    <div class="content-section-b">

        <div class="container">

            <div class="row">

                <div class="col-lg-5 col-sm-6 col-sm-push-7">
                    <h2 ><a href="https://plus.google.com/events/c9i8t4j2mqq7g0d6ftad84c5bd8">Hangout: Apache Edgent on Raspberry Pi</a></h2>
                    <h4 >Thursday, May 12 10am-11am PDT</h3>

                    <div class="lead">In this <a href="https://plus.google.com/events/c9i8t4j2mqq7g0d6ftad84c5bd8">Google+ Hangout</a>, we showed you how you can use Edgent to work with real sensor data on a Raspberry Pi. We also demonstrated an application where we implemented a smart sprinkler system using Apache Edgent, Raspberry Pi, Watson IoT Platform and the Streaming Analytics service.</div>
                </div>
                <div class="col-lg-7 col-sm-pull-5 col-sm-6">
                    <div class="embed-responsive embed-responsive-16by9">
                        <iframe class="embed-responsive-item" src="https://www.youtube.com/embed/videoseries?list=PLhZR82i0P9NqrksME13f2t8tDMIhxUtCH" allowfullscreen></iframe>
                    </div>
                </div>
            </div>

        </div>
        <!-- /.container -->


    </div>

    <div class="content-section-b">

        <div class="container">

            <div class="row">

                <div class="col-lg-5 col-sm-6 col-sm-push-7">
                    <h2 ><a href="https://plus.google.com/events/c4v0hjbefda5vcfceffllgncv2k">Hangout: Intro to Apache Edgent</a></h2>
                    <h4 >Wednesday, April 13 10am-12pm PDT</h3>

                    <div class="lead">In this <a href="https://plus.google.com/events/c4v0hjbefda5vcfceffllgncv2k">Google+ Hangout</a>, the committers presented a high-level overview of the Apache Edgent project and demonstrated how you can write, monitor and debug your Edgent application. They also showed you how you can get involved and contribute to the Edgent community. </div>
                </div>
                <div class="col-lg-7 col-sm-pull-5 col-sm-6">
                    <div class="embed-responsive embed-responsive-16by9">
                        <iframe class="embed-responsive-item" src="//www.youtube.com/embed/Xqns7yVNDnk" allowfullscreen></iframe>
                    </div>
                </div>
            </div>

        </div>
        <!-- /.container -->

    </div>

</section>

        <!--

-->
 <section id="services">
    <div class="content-section-b">

        <div class="container">

            <div class="row">
                <div class="col-lg-5 col-sm-6">
                    <hr class="section-heading-spacer">
                    <div class="clearfix"></div>
                    <h2 class="section-heading">An Open IoT Ecosystem</h2>
                    <div class="lead">Apache Edgent is API driven and modular and can be used in conjunction with vendor and open source data and analytics solutions such as Apache Kafka, Apache Spark and Apache Storm.  
</div>
                </div>
                <div class="col-lg-7 col-sm-6">  
                    <img class="img-responsive center-block" src="img/services/connection_diagram.png" alt="">
                </div>
            </div>

        </div>
        <!-- /.container -->

    </div>

</section>

        <!--

-->
 <section id="services">
    <div class="content-section-b">

        <div class="container">

            <div class="row">
                <div class="col-lg-5 col-sm-6">
                    <hr class="section-heading-spacer">
                    <div class="clearfix"></div>
                    <h2 class="section-heading">Why Apache Edgent?</h2>
                </div>
            </div>
            
            <div class="row">
                <div class="col-lg-4  col-sm-6 box">
                    <div class="text-box">
                            <h4 class="section-heading text-center">Reduced Communication Costs</h4>
                            <div class="clearfix"></div>
                            <div class="lead">Edgent performs real-time analytics on the edge device, separating the interesting from the mundane, so you don’t have to send every sensor reading over a network. If 99% of readings are normal, Edgent detects the 1% anomalies and just transmits those for further processing. 
        </div>
                    </div>
                </div>
                <div class="col-lg-4  col-sm-6 box">
                    <div class="text-box">
                            <h4 class="section-heading text-center">Local and Faster Time to Action</h4>
                            <div class="clearfix"></div>
                            <div class="lead">Edgent makes devices more intelligent, enabling them to take immediate action.  For example, a connected vehicle running Edgent can adjust traction control based on the weight of the cargo/passengers.</div>
                    </div>
                </div>
                <div class="col-lg-4  col-sm-6 box">
                    <div class="text-box">
                            <h4 class="section-heading text-center">Learning From Related Devices</h4>
                            <div class="clearfix"></div>
                            <div class="lead">Edgent enables connected devices to learn from related devices. For example, a truck maneuvering roads in Oregon can adjust based on the data received from trucks operating under similar loads and conditions in Colorado; data such as altitude, cargo, weather and traffic conditions. 
</div>
                    </div>
                </div>
            </div>

        </div>
</section>

		<!--

-->
 <!-- Footer -->
<footer>
    <div class="container">
            <div class="row">
            <div class="col-md-6 col-lg-offset-3">
                <img class="img-responsive center-block" src="img/edgent_incubation.png" alt="">
            </div>
        </div>
        </br>
        <div class="row">
            <div class="col-md-12">
                <p class="text-muted 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="text-muted 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>
    </div>
</footer>

		<!--

-->
 <!-- jQuery Version 1.11.0 -->
<script src="js/jquery-1.11.0.js"></script>

<!-- Plugin JavaScript -->
<script src="js/jquery.easing.min.js"></script>

<!-- Bootstrap Core JavaScript -->
<script src="js/bootstrap.min.js"></script>

<!-- Custom Theme JavaScript -->
<script src="js/landing-page.js"></script>

	</body>
</html>
