<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv='Content-type' content='text/html; charset=utf-8'>
    <meta name='description' content='This website is used to search the apache cordova plugins hosted on npm. The plugins can be searched across titles, descriptions, authors, platforms and licenses. You can also view the download counts for each plugin. The page also displays platforms supported, version and last updated day for the cordova plugins.'>
    <title>Cordova Plugin NPM Search</title>
    <link rel="stylesheet" href="css/styles.css" />
    <link rel="apple-touch-icon" sizes="57x57" href="img/apple-touch-icon-57x57.png">
    <link rel="apple-touch-icon" sizes="60x60" href="img/apple-touch-icon-60x60.png">
    <link rel="apple-touch-icon" sizes="72x72" href="img/apple-touch-icon-72x72.png">
    <link rel="apple-touch-icon" sizes="76x76" href="img/apple-touch-icon-76x76.png">
    <link rel="apple-touch-icon" sizes="114x114" href="img/apple-touch-icon-114x114.png">
    <link rel="apple-touch-icon" sizes="120x120" href="img/apple-touch-icon-120x120.png">
    <link rel="apple-touch-icon" sizes="144x144" href="img/apple-touch-icon-144x144.png">
    <link rel="apple-touch-icon" sizes="152x152" href="img/apple-touch-icon-152x152.png">
    <link rel="apple-touch-icon" sizes="180x180" href="img/apple-touch-icon-180x180.png">
    <link rel="icon" type="image/png" href="img/favicon-32x32.png" sizes="32x32">
    <link rel="icon" type="image/png" href="img/android-chrome-192x192.png" sizes="192x192">
    <link rel="icon" type="image/png" href="img/favicon-96x96.png" sizes="96x96">
    <link rel="icon" type="image/png" href="img/favicon-16x16.png" sizes="16x16">
    <link rel="manifest" href="etc/manifest.json">
    <link rel="shortcut icon" href="etc/favicon.ico">
    <meta name="msapplication-TileColor" content="#da532c">
    <meta name="msapplication-TileImage" content="img/mstile-144x144.png">
    <meta name="msapplication-config" content="etc/browserconfig.xml">
    <meta name="theme-color" content="#ffffff">
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
  </head>

  <body>
    <div id="header">
      <div class="wrap">
          <a class="logo" href="//cordova.apache.org/"></a>
          <div class="menu">
              <a href="index.html">Home</a>
              <a href="developers.html">Developers</a>
              <a href="faq.html">FAQ</a>
          </div>
          <form class="menu-dropdown">
              <select onchange="location = this.options[this.selectedIndex].value;">
                  <option value="index.html">Home</option>
                  <option value="developers.html">Developers</option>
                  <option value="faq.html">FAQ</option>
              </select>
          </form>
      </div>
      <div class="shadow"></div>
    </div>
    <div class="header-placeholder"></div>
    <div id="container"></div>
    <script src="js/app.js"></script>
    <script>
      (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
      (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
      m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
      })(window,document,'script','//www.google-analytics.com/analytics.js','ga');

      ga('create', 'UA-64283057-2', 'auto');
      ga('send', 'pageview');
    </script>
    <script>App.start();</script>
  </body>
</html>
