<!doctype html>
<!--
    Licensed to the Apache Software Foundation (ASF) under one or more
    contributor license agreements.  See the NOTICE file distributed with
    this work for additional information regarding copyright ownership.
    The ASF licenses this file to You under the Apache License, Version 2.0
    (the "License"); you may not use this file except in compliance with
    the License.  You may obtain a copy of the License at

         https://www.apache.org/licenses/LICENSE-2.0

    Unless required by applicable law or agreed to in writing, software
    distributed under the License is distributed on an "AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
    limitations under the License.
-->
<html lang="en" prefix="og: https://ogp.me/ns#">
  <head>
      <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
    <title>Apache Template - Featured</title>


    <!-- Below Meta Tags Generated via https://www.opengraph.xyz -->
    <!-- If you don't care about social media then remove this section -->
    <!-- Values are set in pelicanconf.py -->
    <!-- HTML Meta Tags -->
    <meta name="description" content="Provides a template for projects wishing to use the Pelican ASF static content system">
    <!-- Facebook Meta Tags -->
    <meta property="og:url" content="https://template.apache.org">
    <meta property="og:type" content="website">
    <meta property="og:title" content="Apache Template">
    <meta property="og:description" content="Provides a template for projects wishing to use the Pelican ASF static content system">
    <meta property="og:image" content="https://template.apache.org/images/logo.png">
    <!-- Twitter Meta Tags -->
    <meta name="twitter:card" content="summary_large_image">
    <meta property="twitter:domain" content="template.apache.org">
    <meta property="twitter:url" content="https://template.apache.org">
    <meta name="twitter:title" content="Apache Template">
    <meta name="twitter:description" content="Provides a template for projects wishing to use the Pelican ASF static content system">
    <meta name="twitter:image" content="https://template.apache.org/images/logo.png">
    <!-- Above Meta Tags Generated via https://www.opengraph.xyz -->

    <!-- Start favicon styles - use apache feather -->
    <link rel="shortcut icon" href="https://www.apache.org/favicons/favicon.ico">
    <link rel="apple-touch-icon" sizes="57x57" href="https://www.apache.org/favicons/apple-touch-icon-57x57.png">
    <link rel="apple-touch-icon" sizes="60x60" href="https://www.apache.org/favicons/apple-touch-icon-60x60.png">
    <link rel="apple-touch-icon" sizes="72x72" href="https://www.apache.org/favicons/apple-touch-icon-72x72.png">
    <link rel="apple-touch-icon" sizes="76x76" href="https://www.apache.org/favicons/apple-touch-icon-76x76.png">
    <link rel="apple-touch-icon" sizes="114x114" href="https://www.apache.org/favicons/apple-touch-icon-114x114.png">
    <link rel="apple-touch-icon" sizes="120x120" href="https://www.apache.org/favicons/apple-touch-icon-120x120.png">
    <link rel="apple-touch-icon" sizes="144x144" href="https://www.apache.org/favicons/apple-touch-icon-144x144.png">
    <link rel="apple-touch-icon" sizes="152x152" href="https://www.apache.org/favicons/apple-touch-icon-152x152.png">
    <link rel="apple-touch-icon" sizes="180x180" href="https://www.apache.org/favicons/apple-touch-icon-180x180.png">
    <link rel="icon" type="image/png" href="https://www.apache.org/favicons/favicon-32x32.png" sizes="32x32">
    <link rel="icon" type="image/png" href="https://www.apache.org/favicons/favicon-194x194.png" sizes="194x194">
    <link rel="icon" type="image/png" href="https://www.apache.org/favicons/favicon-96x96.png" sizes="96x96">
    <link rel="icon" type="image/png" href="https://www.apache.org/favicons/android-chrome-192x192.png" sizes="192x192">
    <link rel="icon" type="image/png" href="https://www.apache.org/favicons/favicon-16x16.png" sizes="16x16">
    <!--<link rel="manifest" href="https://www.apache.org/favicons/manifest.json" crossorigin="anonymous">-->
    <meta name="msapplication-TileColor" content="#603cba">
    <meta name="msapplication-TileImage" content="https://www.apache.org/favicons/mstile-144x144.png">
    <meta name="msapplication-config" content="https://www.apache.org/favicons/browserconfig.xml">
    <meta name="theme-color" content="#282661">
    <!-- End favicon styles - use apache feather -->

    <!-- Start load of stylesheets (will need to upgrade periodically) -->
    <link rel="stylesheet"
      href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css"
      integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T"
      crossorigin="anonymous">
    <link rel="stylesheet"
      href="https://cdnjs.cloudflare.com/ajax/libs/github-markdown-css/3.0.1/github-markdown.min.css"
      crossorigin="anonymous">
    <!-- Override css for this site. You can do this inline as shown here or with a site asset. See comment.-->
    <style>
html {
  font-size: 18px;
}
body {
  font-family: 'Montserrat', 'Source Sans Pro','Helvetica Neue', Helvetica, Arial, sans-serif;
  font-weight: 300;
  background-color: #fff;
}
.markdown-body {
  box-sizing: border-box;
  min-width: 200px;
  max-width: 980px;
  margin: 0 auto;
  padding: 45px;
}
@media (max-width: 767px) {
  .markdown-body {
    padding: 15px;
  }
}
.footer {
  border-top: 1px solid black;
  padding-top: 3px;
}
.right-align {
  text-align: right;
}
.center-align {
  text-align: center;
}
blockquote {
  background: bisque;
}
.bg-primary {
  background-color: #005bff!important;
}
a {
  font-weight: 400;
  color: #4643aa;
#  color: #005bff;
}
#li {
#  line-height: 2;
#}
.h1, h1 {
  font-size: 1.5rem;
}
.h2, h2 {
  font-size: 1.4rem;
}
.h3, h3 {
  font-size: 1.3rem;
}
.h4, h4 {
  font-size: 1.2rem;
}
.h5, h5 {
  font-size: 1.1rem;
}
.headerlink {
  visibility: hidden;
}
h1:hover > .headerlink, h2:hover > .headerlink, h3:hover > .headerlink, h4:hover > .headerlink, h5:hover > .headerlink, h6:hover > .headerlink {
  visibility: visible
}
    </style>
    <!--<link rel="stylesheet" href="/styles/styles.css">-->
    <!-- End stylesheets -->
  </head>

  <body id="index" class="home">
    <!-- Start branding and top navigation -->
    <nav class="navbar navbar-expand-lg navbar-dark bg-primary">
      <img src="https://www.apache.org/foundation/press/kit/feather.svg"
        width="30" height="30" class="d-inline-block align-top"
        alt="Apache Feather">
      <a class="navbar-brand" href="/">Apache Template</a>
      <button class="navbar-toggler" type="button"
        data-toggle="collapse" data-target="#navbarSupportedContent"
        aria-controls="navbarSupportedContent" aria-expanded="false"
        aria-label="Toggle navigation">
        <span class="navbar-toggler-icon"></span>
      </button>

      <div class="collapse navbar-collapse" id="navbarSupportedContent">
        <ul class="navbar-nav mr-auto">
          <li class="nav-item active">
            <a class="nav-link" href="/index.html">Home</a>
          </li>
          <li class="nav-item active dropdown">
            <a class="nav-link dropdown-toggle" href="#" id="exampleDropdown"
              role="button" data-toggle="dropdown" aria-expanded="false">Examples</a>
            <ul class="dropdown-menu" aria-labelledby="exampleDropdown">
              <li><a class="dropdown-item" href="/board.html">Board</a></li>
              <li><a class="dropdown-item" href="/featured.html/">Featured</a></li>
              <li><a class="dropdown-item" href="/committees.html">Committees</a></li>
              <li><a class="dropdown-item" href="/projects.html">Projects</a></li>
              <li><a class="dropdown-item" href="/project_list.html">Project Columns</a></li>
              <li><hr class="dropdown-divider"></li>
              <li><a class="dropdown-item" href="/eccn.html">Site Data</a></li>
              <li><a class="dropdown-item" href="/tweets.html">Tweets</a></li>
              <li><a class="dropdown-item" href="/blogs.html">Blogs</a></li>
            </ul>
          </li>
          <li class="nav-item active">
            <a class="nav-link" href="/downloads.html">Downloads</a>
          </li>
          <li class="nav-item active">
            <a class="nav-link" href="/faq.html">FAQ</a>
          </li>
        </ul>
        <div class="navbar-nav">
          <div class="nav-item dropdown dropdown-menu-right active">
            <a class="nav-link dropdown-toggle" href="#"
              role="button" data-toggle="dropdown" aria-haspopup="true"
              aria-expanded="false">About</a>
            <div class="dropdown-menu dropdown-menu-right">
              <a class="dropdown-item" href="https://www.apache.org/">Foundation</a>
              <div class="dropdown-divider"></div>
              <a class="dropdown-item"
                href="https://www.apache.org/licenses/">License</a>
              <a class="dropdown-item"
                href="https://www.apache.org/foundation/sponsorship.html">Sponsorship</a>
              <a class="dropdown-item"
                href="https://www.apache.org/foundation/thanks.html">Thanks</a>
              <div class="dropdown-divider"></div>
              <a class="dropdown-item"
                href="https://www.apache.org/security/">Security</a>
            </div>
          </div>
        </div>
      </div>
    </nav>
    <!-- End branding and top navigation -->

    <!-- Start main content area -->
    <div class="container">
      <p><a href="/">Home</a>&nbsp;&raquo&nbsp;<a href="#">Featured</a></p>
    <h1>Featured</h1>
    

    <!-- Licensed under ALv2 -->
<h2 id="projects">Projects<a class="headerlink" href="#projects" title="Permalink">&para;</a></h2>
<p><img alt="Logo" src="https://www.apache.org//logos/res/olingo/default.png" width="100"/> <a href="http://olingo.apache.org/">Apache Olingo</a></p>
<p><img alt="Logo" src="https://www.apache.org//logos/res/openoffice/default.png" width="100"/> <a href="http://openoffice.apache.org/">Apache OpenOffice</a></p>
<p><img alt="Logo" src="https://www.apache.org//logos/res/streams/default.png" width="100"/> <a href="http://streams.apache.org/">Apache Streams</a></p>
<h2 id="podlings">Podlings<a class="headerlink" href="#podlings" title="Permalink">&para;</a></h2>
<p><img alt="Logo" src="https://www.apache.org//logos/res/incubator/default.png" width="100"/> <a href="http://pegasus.incubator.apache.org/">Apache Pegasus</a></p>
<p><img alt="Logo" src="https://www.apache.org//logos/res/incubator/default.png" width="100"/> <a href="http://sdap.incubator.apache.org/">Apache SDAP</a></p>
<p><img alt="Logo" src="https://www.apache.org//logos/res/hivemall/default.png" width="100"/> <a href="http://hivemall.incubator.apache.org/">Apache Hivemall</a></p>


    </div>
    <!-- End main content area -->

    <!-- Start footer -->
    <footer class="navbar-expand-lg navbar-light bg-light">
      <div class="footer" id="footer">
        <div class="row container-fluid">
          <div class="col-sm">
            <a href="https://www.apache.org/">
              <img src="https://www.apache.org/img/asf_logo.png" alt="The Apache Software Foundation" style="border: 0; margin-top: 2px" width="200">
            </a>
          </div>
          <div class="col-sm center-align">
            <a href="https://www.apache.org/foundation/contributing.html">
              <img src="https://www.apache.org/images/SupportApache-small.png" alt="Support The ASF" height="80" width="80">
            </a>
          </div>
          <div class="col-sm right-align">
            <a class="acevent" data-format="wide" data-mode="light" data-event="random"></a>
          </div>
        </div>

        <div class="container-fluid">
          Copyright &copy; 2022 The Apache Software Foundation,
          Licensed under the
          <a href="https://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0.</a>
          <br/>
          Apache, the Apache feather logo, and "Project" are trademarks or registered trademarks of <a href="https://www.apache.org/">The Apache Software Foundation.</a>
        </div><!-- #container-fluid -->

      </div>
    </footer>
    <!-- End footer -->

    <!-- Start the loading of javascript frameworks (will need to upgrade periodically) -->
    <script src="https://www.apachecon.com/event-images/snippet.js"></script>
    <script
      src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.slim.min.js"
      integrity="sha512-6ORWJX/LrnSjBzwefdNUyLCMTIsGoNP6NftMy2UAm1JBm6PRZCO1d7OHBStWpVFZLO+RerTvqX/Z9mBFfCJZ4A=="
      crossorigin="anonymous"></script>
    <script
      src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js"
      integrity="sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1"
      crossorigin="anonymous"></script>
    <script
      src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js"
      integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM"
      crossorigin="anonymous"></script>
    <!-- End the loading of javascript frameworks -->

    <!-- Source: featured.ezmd; Template: page; Url: pages/.html -->
  </body>
</html>