<!DOCTYPE html>
<html>

<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <!-- PAGE settings -->
  <link rel="icon" href="favicon.ico">
  <title>BlissROMs Stats</title>
  <meta name="description" content="Bliss Stats for all devices with confirmed boot">
  <meta name="keywords" content="blissroms, bliss, os, x86, aosp, android, rom, teambliss">
  <!-- CSS dependencies -->
  <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.3.1/css/all.css" integrity="sha384-mzrmE5qonljUremFsqc01SB46JvROS7bZs3IO2EmfFsd15uHvIt+Y8vEf7N7fWAU" crossorigin="anonymous">
  <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css" type="text/css">
  <link rel="stylesheet" href="neon.css">
  <!-- Script: Make my navbar transparent when the document is scrolled to top -->
  <script src="js/navbar-ontop.js"></script>
  <!-- Script: Animated entrance -->
  <script src="js/animate-in.js"></script>
  <link rel="stylesheet" href="css/animations.css">
  <link rel="stylesheet" href="css/table.css">
  <!--
  <script async="" src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
  <script> (adsbygoogle = window.adsbygoogle || []).push({ google_ad_client: "ca-pub-7639560510014441", enable_page_level_ads: true }); </script>
  -->
</head>

<body class="" style="">
  <!-- Navbar -->
  <nav class="navbar navbar-expand-md fixed-top navbar-light bg-primary" style="padding-right: 41px;">
    <div class="container">
      <a class="navbar-brand" href="stats.html"><img src="images/BlissIcon_Smal_wl.png" width="50" class="d-inline-block align-top" alt=""></a>
      <div class="row">
        <div class="col-md-12" style="color: #ffffff;"><a class="navbar-brand" href="stats.html" style="color: #ffffff;" ><b><b>BlissROMs Stats</b></b></a></div>
      </div>
      <div class="row"></div>
      <button class="navbar-toggler navbar-toggler-right" style="color: #ffffff;" type="button" data-toggle="collapse" data-target="#navbar2SupportedContent" aria-controls="navbar2SupportedContent" aria-expanded="false" aria-label="Toggle navigation"> <span class="navbar-toggler-icon"></span> </button>
      <div class="collapse navbar-collapse text-center justify-content-end" id="navbar2SupportedContent" style="color: #ffffff;">
        <ul class="navbar-nav" style="color: #ffffff;">
          <li class="nav-item mx-2">
            <a class="nav-link" href="https://www.blissos.org" style="color: #ffffff;"><b><b>Bliss OS</b></b></a>
          </li>
          <li class="nav-item mx-2">
            <a class="nav-link" href="https://www.blissroms.com" style="color: #ffffff;"><b><b>BlissROMs</b></b></a>
          </li>
          <li class="nav-item mx-2">
            <a class="nav-link" href="https://www.blissroms.com/bfor.html" style="color: #ffffff;"><b><b>Non Profit</b></b></a>
          </li>
        </ul>
      </div>
    </div>
  </nav>
  <!-- Cover -->
  <div class="section-fade-out pt-5 text-dark" style="background-image: url(&quot;https://i.imgur.com/W9WLZoD.jpg&quot;); background-position: center bottom;">
    <div class="container pt-5">
      <div class="row">
        <div class="col-md-12 py-5 mx-auto text-center" style="color: #ffffff;">
          <h1 class="display-3 mb-4" style="color: #ffffff;">BlissROMs Stats Site</h1>
          <h1>Our Bliss Stats app collects a single device identifier when each device boots up for the first time.</h1>
          <h3>This sites purpose is to allow that data to be publicly viewable. </h3>
        </div>
      </div>
      <div class="row"></div>
      <div class="row">
        <div class="col-md-12 d-inline-flex justify-content-center align-items-center mx-auto mt-5 text-dark">
          <div class="container">
          </div>
        </div>
      </div>
    </div>
  </div>
  <!-- Article style section -->
  <!-- Features -->
  <!-- Features -->
  <!-- Carousel reviews -->
  <!-- Call to action -->
  <div class="py-5 bg-dark section-fade-in" id="team">
    <div class="container">
      <div class="row">
        <div class="mx-auto col-md-12 text-center">
          <div class="row">
            <div class="col-md-4"></div>
            <div class="col-md-4">
              <h3 class="display-3">The Stats</h3>
            </div>
            <div class="col-md-4"></div>
          </div>
        </div>
      </div>
      <div class="container">
        <div class="row">
          <div class="col-md-12">
            <form class="form-inline">
              <div class="input-group">
              </div>
            </form>
          </div>
        </div>
        <div class="row">
          <div class="col-md-12">
            <div class="form-group"><input type="text" class="form-control bg-dark text-light" id="search" placeholder="Search"></div>
          </div>
        </div>
      </div>
      <div class="container mx-auto" data-pingendo-transient="">
        <div id="expenses" class="row cover bottom text-center d-inline-flex justify-content-center align-items-center" style="background-image: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0)); background-position: left top; background-size: 100%; background-repeat: repeat;">
          <section class="counting">
            <div class="layout">
              <section id="content3" class="team_content2"></section>
              <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
              <script>
                $.ajax({
                  type: "GET",
                  url: "https://cors-anywhere.herokuapp.com/https://blissapi.blissroms.com/blissstats/public/devicestats", // TeamBliss JSON
                  success: function(data) {
                    var newContent = ''; // Variable to hold HTML
                    for (var i = 0; i < data.length; i++) { // Loop through object
                      newContent += '<div class="grid-3">';
                      newContent += '<span class="count2 text-light" style="font-size: 4em !important; color: #0080ff;">' + data[i].installations + '</span>';
                      newContent += '<p class="dev" style="color: #0080ff;">' + data[i].device + '</p>';
                      newContent += '</div>';
                    }
                    // Update the page with the new content
                    document.getElementById('content3').innerHTML = newContent;
                  }
                })
              </script>
              <script>
                $(document).ready(function() {
                  $('#search').keyup(function() {
                    // Search text
                    var text = $(this).val();
                    // Hide all content class element
                    $('.grid-3').hide();
                    // Search 
                    $('.grid-3 .dev:contains("' + text + '")').closest('.grid-3').show();
                  });
                });
                $.expr[":"].contains = $.expr.createPseudo(function(arg) {
                  return function(elem) {
                    return $(elem).text().toUpperCase().indexOf(arg.toUpperCase()) >= 0;
                  };
                });
              </script>
            </div>
          </section>
          <!-- End #Contact-->
        </div>
      </div>
    </div>
  </div>
  <div class="py-5 bg-light" style="">
    <div class="container">
      <div class="row">
        <div class="col-md-6 text-center mx-auto px-5 pt-4">
          <h3 class="my-3 highlight_secondary team-header text-white"> </h3><br>
          <h1 class="my-3 highlight_secondary team-header text-dark">We volunteer our time.</h1>
          <p class="mb-3">We are a 501(c3) nonprofit, run by people that donate their free time towards the project. We do our best to bring a quality OS to your device, while working a real job on the side in most cases. Please consider showing us we're on the right track by clicking the button below. </p> <a href="https://www.paypal.me/TeamBliss" class="btn btn-primary">Buy Us a Coffee</a>
        </div>
        <div class="col-md-6 py-5"><img class="img-fluid d-block d-flex align-items-center justify-content-center flex-grow-1 mx-auto animate-in-right" src="images/coffee-break.svg" width="300"></div>
      </div>
    </div>
  </div>
  <div class="py-5 bg-dark" id="join">
    <div class="container">
      <div class="row">
        <div class="col-md-8 text-left">
          <h3 class="text-primary display-3"> <b>Join Team Bliss</b></h3>
          <h2 class="">We are accepting applications now</h2>
          <p class="text-warning">* only volunteer positions currently available. Internships coming soon *</p>
          <p class="mb-3" contenteditable="true">We are accepting people in small managable groups while we grow, and we tend to lean towards the type of people that want to learn and grow with Bliss Family of ROMs. Bliss provides the tools, knowledge and the mentorship needed to help bring your development dreams to reality, and all we ask in return is a minimum contribution towards Bliss ROM while you learn and grow in your strengths. If you're an individual and would like to apply to join our team, please use the button below </p> <a href="https://goo.gl/forms/PdiaAj1PojosmehK2" class="btn btn-primary">Join Our Team</a>
        </div>
      </div>
    </div>
  </div>
  <!-- Footer -->
  <div class="py-3 bg-dark">
    <div class="container">
      <div class="row">
        <div class="col-lg-3 col-6 p-3">
          <h5> <b>Socials</b></h5>
          <ul class="list-unstyled text-primary">
            <li class="text-primary"> <a href="https://t.me/Team_Bliss_Community" class="text-info">BlissROMs Telegram</a> </li>
            <li> <a href="https://t.me/blissx86" class="text-info">Bliss OS Telegram</a> </li>
            <li> <a href="https://www.facebook.com/BlissFamilyOfROMs/" class="text-info">Bliss Facebook</a> </li>
            <li> <a href="https://twitter.com/Bliss_Roms" class="text-info">Bliss Twitter</a> </li>
          </ul>
        </div>
        <div class="col-lg-3 col-6 p-3">
          <h5> <b>Sources</b></h5>
          <ul class="list-unstyled">
            <li> <a href="https://review.blissroms.com" class="text-info">BlissROMs Gerrit Review</a> </li>
            <li> <a href="https://github.com/BlissRoms" class="text-info">BlissROMs GitHub</a> </li>
            <li> <a href="https://github.com/BlissRoms-Devices" style="" class="text-info">BlissROMs-Devices GitHub</a> </li>
            <li> <a href="https://github.com/BlissRoms-Kernels" class="text-info">BlissROMs-Kernels GitHub</a> </li>
            <li> <a href="https://github.com/BlissRoms-Vendor" class="text-info">BlissROMs-Vendor GitHub</a> </li>
            <li> <a href="https://github.com/BlissRoms-x86" class="text-info">Bliss OS GitHub</a> </li>
            <li> <a href="https://github.com/BlissRoms-pine64" class="text-info">BlissROMs-PINE64 GitHub</a> </li>
          </ul>
        </div>
        <div class="col-lg-3 col-6 p-3">
          <h5>Subreddits</h5>
          <ul class="list-unstyled">
            <li> <a href="https://www.reddit.com/r/BlissRoms" class="text-info">BlissROMs</a> </li>
            <li> <a href="https://www.reddit.com/r/BlissOS" class="text-info">Bliss OS</a> </li>
            <li> <a href="https://www.reddit.com/r/TeamBliss" class="text-info">TeamBliss</a> </li>
          </ul>
        </div>
        <div class="col-lg-3 col-md-3 p-3">
          <h5> <b>Follow us</b> </h5>
          <div class="row">
            <div class="col-md-12 d-flex align-items-center my-2 justify-content-center"> <a href="https://www.facebook.com/BlissFamilyOfROMs/" class="">
                <i class="d-block fa fa-facebook-official text-muted mr-2 fa-2x"></i>
              </a> <a href="https://www.instagram.com/blissroms/">
                <i class="d-block fa fa-instagram text-muted mx-2 fa-2x"></i>
              </a><a href="https://github.com/BlissRoms">
                <i class="d-block fa fa-github text-muted text-muted mx-2 fa-2x"></i>
              </a> <a href="https://www.reddit.com/r/BlissRoms">
                <i class="d-block fa fa-reddit text-muted mx-2 fa-2x"></i>
              </a> <a href="https://twitter.com/Bliss_Roms">
                <i class="d-block fa fa-twitter text-muted ml-2 fa-2x"></i>
              </a> </div>
          </div>
        </div>
      </div>
      <div class="row">
        <div class="col-md-12 text-center">
          <p class="mb-0 mt-2">© 2019 Bliss Family of ROMs. All rights reserved</p>
        </div>
      </div>
    </div>
  </div>
  <!-- JavaScript dependencies -->
  <!-- <script src="js/mainani.js" type="text/javascript"></script> -->
  <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js" integrity="sha384-ZMP7rVo3mIykV+2+9J3UJ46jBk0WLaUAdn689aCwoqbBJiSnjAK/l8WvCWPIPm49" crossorigin="anonymous"></script>
  <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js" integrity="sha384-ChfqqxuZUCnJSK3+MXmPNIyE6ZbWh2IMqE241rYiqJxyMiZ6OW/JmZQ5stwEULTy" crossorigin="anonymous"></script>
  <!-- Script: Smooth scrolling between anchors in the same page -->
  <script src="js/smooth-scroll.js"></script>
  <!-- <script src="https://bfintal.github.io/Counter-Up/jquery.counterup.min.js"></script> -->
  <script src="js/counter.js"></script>
</body>

</html>