<!DOCTYPE html>
<html>

<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
  <meta name="description" content="BlissRoms - new site">
  <meta name="theme-color" content="#0080ff">
  <link rel="shortcut icon" href="favicon.ico" type="image/x-icon">
  <link rel="icon" sizes="192x192" href="images/bliss_icon_small.png">
  <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.3.1/css/all.css" integrity="sha384-mzrmE5qonljUremFsqc01SB46JvROS7bZs3IO2EmfFsd15uHvIt+Y8vEf7N7fWAU" crossorigin="anonymous">
  <link rel="stylesheet" type="text/css" href="https://cdnjs.cloudflare.com/ajax/libs/normalize/5.0.0/normalize.min.css">
  <link rel="stylesheet" type="text/css" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css">
  <link href="https://fonts.googleapis.com/css?family=Comfortaa:400,700,300" rel="stylesheet">
  <link rel="stylesheet" type="text/css" href="css/style.css">
  <link rel="stylesheet" href="css/styles_filter.css">
  <link rel="stylesheet" href="css/animations.css">
  <script src="js/modernizr.js"></script>
  <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>
  <title>Bliss</title>
</head>

<body>
  <!-- Fixed navbar -->
  <nav class="navbar navbar-default navbar-fixed-top">
    <div class="container">
      <div class="navbar-header">
        <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
          <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" href="#" style="	background-image: url(images/BlissIcon_w.png);	background-position: top left;	background-size: 100%;	background-repeat: no-repeat;">   </a>
      </div>
      <div id="navbar" class="collapse navbar-collapse">
        <ul class="nav navbar-nav navbar-right">
          <li id="nav-about">
            <a href="index.html">Back Home</a>
          </li>
          <li id="nav-about">
            <a href="#about2">About</a>
          </li>
          <li id="nav-expenses">
            <a href="#expenses">Expenses</a>
          </li>
          <li id="nav-family">
            <a href="#family2">Family</a>
          </li>
          <li id="donate">
            <a href="https://www.paypal.me/TeamBliss" target="_blank">Donate</a>
          </li>
        </ul>
      </div>
      <!--/.nav-collapse -->
    </div>
  </nav>
  <div class="py-5">
    <div class="container">
      <div class="row">
        <div class="col-md-12">
          <p></p>
        </div>
      </div>
    </div>
  </div>
  <!-- Begin page content -->
  <div class="container-fluid">
    <div class="row cover top" style="	background-image: linear-gradient(to bottom, rgba(22, 22, 22, 0.0), rgba(22, 22, 22, 1.0));	background-position: top left;	background-size: 100%;	background-repeat: repeat;">
      <div class="col-xs-12">
        <div class="row" style="overflow-x:hidden;height: auto;overflow-y: visible; color: #fff;">
          <div class="col-md-12" align="center">
            <div class="cover row">
              <h1>Bliss Family of ROMs</h1><br><br>
              <blockquote class="lead" cite="https://twitter.com/DalaiLama/status/1051767186820198402">The creation of a more peaceful and happier society has to begin from the level of the individual, and from there it can expand to one's family, to one's neighborhood, to one's community and so on. <footer><a href="https://twitter.com/DalaiLama/status/1051767186820198402">Dalai Lama</a></footer>
              </blockquote>
            </div>
          </div>
        </div>
        <div class="row">
          <div class="col-xs-12 center-block text-center" style="overflow-y: visible; color: rgb(255, 255, 255); transform: translateY(60px);">
            <a href="#about2"><span id="scrollIcon" class="front-glyph glyphicon glyphicon-menu-down" style="	color: #fff;	transform:  translateY(-100%) ;" aria-hidden="true"></span></a>
          </div>
        </div>
      </div>
    </div>
  </div>
  <div id="about2" class="row cover">
    <div class="container">
      <h1 class="text-center about2-header" style="color: #fff;">About</h1>
      <p class="lead text-center">We are a U.S.A. Federal 501c3 Non-Profit Organization that aims to build and maintain various operating systems and software projects for the purposes of community growth and development. Our team of talented individuals comprise to provide training, development opportunities, build servers, download servers, design and development software, and design opportunities. Team Bliss memborship includes professionals and mentors in all fields related to Android development. Our services and source code is open to the public and provided at no cost. </p>
      <div class="row">
        <h2 class="text-center " style=" color: #000; margin: 5%;">What are we aiming to accomplish?</h2>
        <p class="text-center lead " style="margin: 5%">Our goal is to mentor and teach those interested in Android development. We have a large global community that is available to coach or answer questions about development, design, animation, etc. almost any time. We offer a stress free working environment, as well as the tools when resources allow us to do so, to help guide someone on the Android development path. We also provide them the tools to learn how to monetize their skills along the way.</p>
      </div>
      <div class="row">
        <h3 class="text-center " style="color: #000;">Can you tell me more about these mentorships and opportunities?</h3>
        <p class="text-center lead " style="margin: 5%">We take on applicants and work with them to learn more about Android Development. We have many mentors available to help in all areas, from ROM development, App development, Design &amp; Layout, as well as kernel development.</p>
        <p class="text-center lead " style="margin: 5%">Each potential applicant is selected based on their want to learn and their ability to work with others, so we do require a bit of a background, or at least a very convincing argument.</p>
      </div>
      <h1 class="text-center family-header" style="color: #fff;">Transparency</h1>
      <p class="text-center lead" style="margin: 5%">We believe in full transparency, but we do not believe this transparency should come at a cost to our supporters. This is why we submit a yearly 990 form to the IRS. If you are interested in looking into that or any other information we submit, feel free to visit our <a href="https://www.guidestar.org/profile/82-3580195" style="color: #222;">Guidestar.org</a> page. If you are interested in looking into any other nonprofit open-source projects or ROMs, they can also be found on Guidestar as long as things are all on the up and up. </p>
      <p class="text-center lead" style="margin: 5%">Guidestar does allow users to view the financial info for each nonprofit, but for those who don't want to give yet another site their personal info, we have posted our statements below</p>
      <!--end Two project row-->
    </div>
  </div>
  <div id="expenses" class="row cover bottom" style="	background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0));	background-position: top left;	background-size: 100%;	background-repeat: repeat;">
    <h1 class="text-center expenses-header" style="color: #0080ff;">Expenses </h1>
    <section class="counting">
      <div class="layout">
        <h2 class="text-center" style="color: #fff;">2017 Revenue (year one)</h2>
        <div class="grid-3">
          <span class="count1 counter" style="color: #0080ff;">899.00</span>
          <p>Contributions, Grants, Gifts</p>
        </div> <!-- /.col-sm-3 -->
        <div class="grid-3">
          <span class="count2 counter" style="color: #0080ff;">0</span>
          <p>Program Services</p>
        </div><!-- /.col-sm-3 -->
        <div class="grid-3">
          <span class="counter " style="color: #0080ff;">0</span>
          <p>Special Events</p>
        </div><!-- /.col-sm-3 -->
        <div class="grid-3">
          <span class="counter count4" style="color: #0080ff;">0</span>
          <p>Other Revenue</p>
        </div><!-- /.col-sm-3 -->
      </div>
    </section>
    <section class="counting">
      <div class="layout">
        <h2 class="text-center" style="color: #fff;">2017 Expenses (year one)</h2>
        <div class="grid-3">
          <span class="count1 counter" style="color: #0080ff;">0</span>
          <p>Program Services &amp; Affiliates</p>
        </div> <!-- /.col-sm-3 -->
        <div class="grid-3">
          <span class="count2 counter" style="color: #0080ff;">360.00</span>
          <p>Administration</p>
        </div><!-- /.col-sm-3 -->
        <div class="grid-3">
          <span class="counter " style="color: #0080ff;">0</span>
          <p>Fundraising</p>
        </div><!-- /.col-sm-3 -->
        <div class="grid-3">
          <span class="counter count4" style="color: #0080ff;">295.00</span>
          <p>Other Expenses</p>
        </div><!-- /.col-sm-3 -->
      </div>
    </section>
    <!-- End #Contact-->
  </div>
  <!-- break -->
  <!-- Close Team -->
  <div id="family2" class="" style="	background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6));	background-position: top left;	background-size: 100%;	background-repeat: repeat;">
    <div class="container" style="	transform:  translateY(-5%) ;">
      <div class="row">
        <div class="col-md-12 text-center">
          <h1><img class="team-image" style="max-width: 36rem;" src="images/bliss_for.png"></h1>
        </div>
      </div>
      <div class="row">
        <div class="col-md-4 p-3">
          <p>
          </p>
          <p class="text-center lead">We are open to the public, and accepting applications now for volunteer only positions (internships coming soon). 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. <br> If you're an individual and would like to apply to join our team, please use the button below&nbsp; &nbsp; &nbsp;</p>
          <p></p>
        </div>
        <div class="col-md-4 text-center lead"><a class="btn btn-rounded family-projects--btn text-center" href="https://goo.gl/forms/PdiaAj1PojosmehK2" style="color: rgb(255, 255, 255);">Join Our Team</a><a class="btn btn-rounded family-projects--btn" href="https://www.paypal.me/TeamBliss" target="_blank" role="button" style="color: rgb(255, 255, 255);">Donate to Bliss Family</a></div>
        <div class="col-md-4 p-3 text-center">
          <p>
          </p>
          <p class="text-center lead">Got a great project but having trouble getting things off the ground? Or maybe you are looking to gain a few more people to help you out on it. Whatever your situation is, you can submit your project below for a chance to include it as a Bliss Family project.&nbsp; &nbsp; &nbsp;&nbsp;</p>
          <p class="text-center lead">If you are interested in applying for this unique opportunity, please fill out the form below, and we will be in touch with you soon (usually within a few days!)</p><a class="btn btn-rounded family-projects--btn" href="https://goo.gl/kAb7ti" role="button" style="color: rgb(255, 255, 255);">Submit your project now</a>
          <p></p>
        </div>
      </div>
    </div>
  </div>
  <div id="family" class="row">
    <div class="container">
      <div class="family-header text-center">
        <h2 class="text-center">&nbsp;<br></h2>
        <h2 class="text-center">Bliss Family Projects</h2>
      </div>
      <div class="center">
        <h4 class="text-center highlight_secondary">The Bliss Family projects we currently support can be found below:<br><br></h4>
        <div class="col-lg-4">
          <div class="family">
            <div class="family-image text-center">
              <img class="img-circle img-responsive" src="images/invictrix.jpg">
              <div class="family-links ">
                <div class="family-links-list">
                  <a href="https://t.me/InvictusROM" target="_blank"><i class="fab fa-telegram"></i></a>
                  <a href="https://plus.google.com/communities/109716291977795337501" target="_blank"><i class="fab fa-google-plus"></i></a>
                </div>
                <!-- /.family-links-list -->
              </div>
              <!-- /.family-links -->
            </div>
            <!-- /.family-image -->
            <div class="family-content text-center">
              <div class="family-name">Invictrīx ROM</div>
              <div class="family-role">
                <h4>AOSP/CAF</h4>
              </div>
              <h4 class="family-description"> Invictrīx ROM emphasizes performance, offering heavy optimizations along with a unique dark themed style.</h4>
            </div>
            <!-- /.family-content -->
          </div>
          <!-- /.family -->
        </div>
        <div class="col-lg-4">
          <div class="family">
            <div class="family-image text-center">
              <img class="img-circle img-responsive" src="images/xtremis.jpg">
              <div class="family-links ">
                <div class="family-links-list">
                  <a href="#" target="_blank"><i class="fab fa-telegram"></i></a>
                  <a href="#" target="_blank"><i class="fab fa-google-plus"></i></a>
                </div>
                <!-- /.family-links-list -->
              </div>
              <!-- /.family-links -->
            </div>
            <!-- /.family-image -->
            <div class="family-content text-center">
              <div class="family-name">Xtremis Project</div>
              <div class="family-role">
                <h4>Chrome OS ROM</h4>
              </div>
              <h4 class="family-description"> Currently pre-release, this project is progressing steadily and will soon have more details to share. Please check in later.</h4>
            </div>
            <!-- /.family-content -->
          </div>
          <!-- /.family -->
        </div>
        <div class="col-lg-4">
          <div class="family">
            <div class="family-image text-center">
              <img class="img-circle img-responsive" src="images/soap.jpg">
              <div class="family-links ">
                <div class="family-links-list">
                  <a href="https://plus.google.com/u/0/107610198397215674589" target="_blank"><i class="fab fa-google-plus"></i></a>
                  <!--<a href="#" target="_blank"><i class="fa fa-google-plus"></i></a> -->
                </div>
                <!-- /.family-links-list -->
              </div>
              <!-- /.family-links -->
            </div>
            <!-- /.family-image -->
            <div class="family-content text-center">
              <div class="family-name">SOAP ROM</div>
              <div class="family-role">
                <h4>SixOpenAndroidProject ROM, AOSP</h4>
              </div>
              <h4 class="family-description"> SOAP is an AOSP ROM that focuses on being a slim and clean ROM.</h4>
            </div>
            <!-- /.family-content -->
          </div>
          <!-- /.family -->
        </div>
        <div class="center col-lg-4">
          <h2 class="text-center">&nbsp;<br></h2>
          <h2 class="text-center">&nbsp;<br></h2>
        </div>
      </div>
    </div>
  </div>
  <!-- End #About -->
  <footer class="footer">
    <div class="footer container-fluid ">
      <div class="container-fluid">
        <div class="row ">
          <div class="col-xs-6 col-sm-3 column footer-header">
            <h4 class="footer-header">Information</h4>
            <ul class="list-unstyled">
              <li class="portfolio-projects--desc">
                <a href="index.html">Back Home</a>
              </li>
              <li class="portfolio-projects--desc">
                <a href="#about2">About</a>
              </li>
              <li class="portfolio-projects--desc">
                <a href="#expenses">Expenses</a>
              </li>
            </ul>
          </div>
          <div class="col-xs-6 col-sm-3 column footer-header">
            <h4 class="footer-header">About</h4>
            <ul class="list-unstyled">
              <li class="portfolio-projects--desc">
                <a href="#family2">Family</a>
              </li>
              <li class="portfolio-projects--desc">
                <a href="https://www.paypal.me/TeamBliss">Donate</a>
              </li>
            </ul>
          </div>
          <div class="col-xs-12 col-sm-3 column footer-header">
            <h4 class="footer-header">Get In Touch</h4>
            <form action="mailto:blissfamilyroms@gmail.com" method="GET" data-form-title="CONTACT US">
              <input type="hidden" data-form-email="true">
              <div class="form-group">
                <input type="text" class="form-control" name="name" required="" placeholder="Name*" data-form-field="Name">
              </div>
              <div class="form-group">
                <input type="email" class="form-control" name="email" required="" placeholder="Email*" data-form-field="Email">
              </div>
              <div class="form-group">
                <textarea class="form-control" name="message" placeholder="Message" rows="3" data-form-field="Message"></textarea>
              </div>
              <div>
                <button type="submit" class="btn btn-lg btn-danger">SEND</button>
              </div>
            </form>
          </div>
          <div class="col-xs-12 col-sm-3 text-right footer-header">
            <h4 class="footer-header">Follow</h4>
            <ul class="list-inline">
              <li class="">
                <a rel="nofollow" href="https://t.me/OfficialBlissROMs" title="Telegram"><i class="fab fa-telegram fa-4x"></i></a>&nbsp; </li>
              <li class="">
                <a rel="nofollow" href="https://www.facebook.com/BlissFamilyOfROMs/" title="Facebook"><i class="fab fa-facebook fa-4x"></i></a>&nbsp; </li>
              <li class="">
                <a rel="nofollow" href="https://plus.google.com/communities/118265887490106132524" title="Google+"><i class="fab fa-google-plus fa-4x"></i></a>
              </li>
              <li class="">
                <a rel="nofollow" href="https://twitter.com/Bliss_Roms" title="Twitter"><i class="fab fa-twitter fa-4x"></i></a>
              </li>
            </ul>
          </div>
        </div>
        <br>
        <span class="pull-right text-muted small"><a href="https://blissroms.com">Bliss Site by Team Bliss</a> ©2017-2018 Team Bliss</span>
      </div>
    </div>
  </footer>
  <!--<script src="https://cdnjs.cloudflare.com/ajax/libs/tether/1.3.1/js/tether.min.js" type="text/javascript"></script>-->
  <div class="py-5">
    <div class="container">
      <div class="row">
        <div class="col-md-12">
          <p></p>
        </div>
      </div>
    </div>
  </div>
  <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js" type="text/javascript"></script>
  <!--<script src="https://cdnjs.cloudflare.com/ajax/libs/waypoints/2.0.3/waypoints.min.js"></script>-->
  <script src="https://bfintal.github.io/Counter-Up/jquery.counterup.min.js"></script>
  <script src="js/counter.js"></script>
  <script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.0.0-alpha.6/js/bootstrap.min.js" type="text/javascript"></script>
  <script src="https://cdn.jsdelivr.net/jquery.scrollto/2.1.0/jquery.scrollTo.min.js" type="text/javascript"></script>
  <!--<script src="js/jquery-2.1.1.js" type="text/javascript"></script> -->
  <script src="js/jquery.mixitup.min.js" type="text/javascript"></script>
  <script src="js/main.js" type="text/javascript"></script>
  <script src="js/mainani.js" type="text/javascript"></script>
  <script src="js/script.js" type="text/javascript"></script>
  <script type="text/javascript">
    // Select all links with hashes
    $('a[href*="#"]')
      // Remove links that don't actually link to anything
      .not('[href="#"]').not('[href="#0"]').click(function(event) {
        // On-page links
        if (location.pathname.replace(/^\//, '') == this.pathname.replace(/^\//, '') && location.hostname == this.hostname) {
          // Figure out element to scroll to
          var target = $(this.hash);
          target = target.length ? target : $('[name=' + this.hash.slice(1) + ']');
          // Does a scroll target exist?
          if (target.length) {
            // Only prevent default if animation is actually gonna happen
            event.preventDefault();
            $('html, body').animate({
              scrollTop: target.offset().top
            }, 1000, function() {
              // Callback after animation
              // Must change focus!
              var $target = $(target);
              $target.focus();
              if ($target.is(":focus")) { // Checking if the target was focused
                return false;
              } else {
                $target.attr('tabindex', '-1'); // Adding tabindex for elements not focusable
                $target.focus(); // Set focus again
              };
            });
          }
        }
      });
  </script>
</body>

</html>