<!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>Bliss ROMs</title>
  <meta name="description" content="Open Source OS for all devices, based on AOSP">
  <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 href="https://fonts.googleapis.com/css?family=VT323" rel="stylesheet" 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/style.css">
  <link rel="stylesheet" href="css/table.css">
  <script data-ad-client="ca-pub-7639560510014441" async="" src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
</head>

<body class="">
  <!-- Navbar -->
  <nav class="navbar navbar-expand-md navbar-dark fixed-top bg-dark" style="padding-right: 41px;">
    <div class="container pt-6">
      <a class="navbar-brand" href="#"><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"><a class="navbar-brand" href="#"><b><b>Bliss ROMs</b></b></a></div>
      </div>
      <button class="navbar-toggler navbar-toggler-right" type="button" data-toggle="collapse" data-target="#navbar2SupportedContent" aria-controls="navbar2SupportedContent" aria-expanded="true" aria-label="Toggle navigation"> <span class="navbar-toggler-icon"></span> </button>
      <div class="navbar-collapse text-center justify-content-end collapse show" id="navbar2SupportedContent">
        <ul class="navbar-nav">
          <li class="nav-item mx-2">
            <a class="nav-link" href="#features"><b><b>Features</b></b></a>
          </li>
          <li class="nav-item mx-2">
            <a class="nav-link" href="#about"><b><b>About</b></b></a>
          </li>
          <li class="nav-item mx-2">
            <a class="nav-link" href="#team"><b><b>Team</b></b></a>
          </li>
          <li class="nav-item mx-2">
            <a class="nav-link" href="bfor.html"><b><b>Non Profit</b></b></a>
          </li>
          <li class="nav-item mx-2">
            <a class="nav-link" href="blog.html"><b><b>Blog</b></b></a>
          </li>
          <li class="nav-item mx-2">
            <a class="nav-link" href="#gear"><b><b>Gear</b></b></a>
          </li>
        </ul>
        <a class="btn navbar-btn mx-2 btn-primary" href="#download"><b><b>Download</b></b></a>
      </div>
    </div>
  </nav>
  <!-- Cover -->
  <div class="section-fade-out pt-5 pb-5" style="background-image: url(&quot;https://i.imgur.com/BOGKaGy.jpg&quot;); background-position: center bottom;">
    <div class="container pt-5">
      <div class="row">
        <div class="col-md-5">
          <div class="col-md-12">
            <h1 class="display-3 mb-4">Bliss ROMs</h1>
            <p class="lead">Working together to bring you an Open Source OS, based on Android, that incorporates many customizations, options and added security features.&nbsp;<br><br>And it is available for...</p>
            <div class="d-inline-flex justify-content-center align-items-center mx-auto">
              <a href="#download" class="btn btn-lg btn-primary d-inline-flex justify-content-center align-items-center mx-auto">Download Now</a>
            </div>
          </div>
        </div>
        <div class="d-flex justify-content-center align-items-center flex-grow-1" align="center" style="max-height: 100%;max-width: 100%;vertical-align: middle;display: inline-flex;float: none; margin-top: -8%;">
          <div class="d-inline-flex justify-content-center align-items-center">
            <div class="animation d-inline-flex justify-content-center align-items-center" data-animation-step="2">
              <div class="device mt-5">
                <div class="screen-stand"></div>
                <div class="display">
                  <div class="slide1">
                    <div>Most Intel/x86 <br>
                      <em>PCs, Tablets &amp; Laptops</em>
                    </div>
                  </div>
                  <div class="slide2">
                    <div>Most Android <br>
                      <em>tablets</em>
                    </div>
                  </div>
                  <div class="slide3">
                    <div>Most<br>Android<br>
                      <em>phones</em>
                    </div>
                  </div>
                </div>
              </div>
            </div>
          </div>
        </div>
      </div>
    </div>
  </div>
  <!-- Article style section -->
  <div class="section-fade-in py-5">
    <div class="container">
      <div class="row" id="about">
        <div class="col-md-6 order-2 order-md-1 animate-in-left d-flex flex-grow-1 align-items-center justify-content-center">
          <img class="img-fluid d-block mx-auto" src="images/1571976237838.png" style="" width="50%">
        </div>
        <div class="col-md-6 align-self-center order-1 order-md-2 my-3 text-md-left text-center">
          <h3 class="display-3">About Bliss</h3>
          <p class="my-4 body-font">We are a volunteer based non-profit organization that works to maintain various open source &amp; closed source development projects. We provide the inspiration, training and mentorship to help the&nbsp;dreams of those that join, become reality.<br><br>One of our main focuses is to provide a quality ROM/OS that can run on all your devices, preserving customizations and options by syncing across all platforms. We try to include all the features you can imagine, for just about any situation.<br><br>You will also find us regularly contributing to other projects as well because we believe that building our community through positive influence will go further than building an empire on selfish goals.</p>
          <a class="btn btn-outline-primary" href="bfor.html">Learn More About Us</a>
        </div>
      </div>
    </div>
  </div>
  <!-- Features -->
  <div class="text-center bg-primary py-5 px-5">
    <div class="container">
      <div class="d-flex justify-content-center align-items-center px-0 container-fluid mx-auto">
        <div class="row mx-auto d-flex align-items-center justify-content-center">
          <div class="col-md-12">
            <div class="row mx-auto">
              <div class="align-self-center col-lg-6 text-md-left text-center">
                <h3 class="display-3">Bliss Variants</h3>
                <p class="my-4 body-font">Bliss comes in a few variants. On top of our traditional device builds of Bliss ROM, our GSI/Treble builds will work on most treble compatible devices (Android Pie+) And our x86 variant (Bliss OS) is made to work with the Linux kernel, and supports booting with MBR/UEFI type bootloaders. So just about any Windows/Linux PC or tablet released in the last 4 years. We are always developing with usability in mind, and supporting more and more devices each week.&nbsp;<br></p>
                <a class="btn btn-dark" href="#download">Download</a>
              </div>
              <div class="align-self-center mt-5 col-lg-5 offset-1 animate-in-right">
                <img class="img-fluid d-block" src="images/bliss_surface.png"> </div>
            </div>
          </div>
        </div>
      </div>
    </div>
  </div>
  <div class="py-5 bg-dark" id="features">
    <div class="container">
      <div class="row">
        <div class="col-12 text-center">
          <h3 class="display-3">Features</h3>
        </div>
      </div>
      <div class="row">
        <div class="align-self-center text-md-right text-center col-lg-4 col-md-6">
          <h4 class="text-primary"><b>Focus on design</b></h4>
          <p class="mb-5 text-white">We include many options for customization and theming throughout the OS</p>
          <h4 class="text-primary"><b>Customized settings</b></h4>
          <p class="mb-5 text-white">Choose settings depending on the criteria you value the most. With no limits.</p>
          <h4 class="text-primary"><b>Performance</b></h4>
          <p class="mb-5 text-white">Focused on speed and stability with tweaks to assist in the most demanding applications</p>
        </div>
        <div class="my-3 d-none d-lg-block animate-in-down col-md-4">
          <img class="img-fluid d-block" src="images/Phone_features_dark.png"> </div>
        <div class="align-self-center text-md-left text-center col-lg-4 col-md-6">
          <h4 class="text-primary"><b>Battery-friendly</b></h4>
          <p class="mb-5 text-white">Extra options are provided to help tune battery consumption to the best levels</p>
          <h4 class="text-primary"><b>Added Security</b></h4>
          <p class="mb-5 text-white">Additional security options and features are found throughout the OS. And AOSP security updates are merged regularly.</p>
          <h4 class="text-primary"><b>Compatibility</b></h4>
          <p class="mb-5 text-white">We bring Bliss to every device we own. And our PC builds include extras for ARM/ARM64 app compatibility&nbsp;&nbsp;</p>
        </div>
      </div>
    </div>
  </div>
  <!-- Features -->
  <!-- Carousel reviews -->
  <div class="section">
    <div class="container d-flex justify-content-center align-items-center flex-grow-1 mx-auto w-75 py-4">
      <div class="row">
        <div class="col-md-6 text-left mx-auto flex-center">
          <div>
            <h2 class="my-3 highlight_secondary team-header text-white no-wrap">We volunteer our time.</h2>
            <p class="mb-3 body-font">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 and making a small contribution towards our efforts.</p> <a href="https://www.paypal.me/TeamBliss" class="btn btn-primary">Buy Us a Coffee</a>
          </div>
        </div>
        <div class="col-md-5 py-5 offset-1"><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>
  <!-- Download section -->
  <div class="download-section bg-light mb-0" id="download">
    <div class="container py-5">
      <div class="row">
        <div class="col-md-6 order-2 order-md-1"> <img class="img-fluid d-block mx-auto" src="images/1571976296909.png" style="" width="50%"> </div>
        <div class="px-md-5 col-md-6 d-flex flex-column align-items-start justify-content-center order-1 order-md-2">
          <h3 class="display-3">Downloads</h3>
          <img src="https://img.shields.io/sourceforge/dm/blissroms.svg?style=for-the-badge&amp;logo=appveyor&amp;colorB=blue" max-width="160px" width="50%">
          <p class="mb-3">
          </p>
          <div id="demo">
            <p class="lead text-dark">
              <label>Are you looking for our Android Pie device builds?</label>
            </p>
            <label class="radio lead text-secondary font-weight-bold text-dark"><input type="radio" name="example1" value="yes" style=" margin-bottom: -0.175rem !important;"><span></span> Yes</label>
            <label class="radio lead text-secondary font-weight-bold text-dark" style=""><input type="radio" name="example1" value="no" class="`" style=" margin-bottom: -0.175rem !important;"><span class=""></span> No</label>
            <div class="conditional" data-cond-option="example1" data-cond-value="yes">
              <p class="mb-3 lead text-dark">
                <label>Is it a GSI/Treble enabled device?</label>
              </p>
              <label class="radio lead text-secondary font-weight-bold text-dark"><input type="radio" name="example2" value="yes" style=" margin-bottom: -0.175rem !important;"><span></span>Yes</label>
              <label class="radio lead text-secondary font-weight-bold text-dark"><input type="radio" name="example2" value="no" style=" margin-bottom: -0.175rem !important;"><span></span>No</label>
              <div class="conditional" data-cond-option="example2" data-cond-value="yes" style="">
                <p class="lead text-dark"> Great! Here's the link to the GSI/Treble builds.<br><br>Be sure to check the <a href="https://forum.xda-developers.com/project-treble/trebleenabled-device-development/rom-blissroms-9-0-official-4-4-2019-t3918303">XDA thread</a> for instructions as well as troubleshooting steps.</p><br><br><a class="btn btn-primary mx-1 mb-3" target="”_blank”" href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&amp;hosted_button_id=MKDDQGLYDKGV6&amp;source=url">Donate $5</a><a class="btn btn-info mx-1 mb-3" target="”_blank”" href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&amp;hosted_button_id=99GBH7ZW77P54&amp;source=url">Donate $10</a><a class="btn text-white btn-dark mb-3" href="https://www.paypal.me/TeamBliss" target="_blank">Donate Other Amount</a><a class="btn mb-3 btn-link" href="https://sourceforge.net/projects/blissroms/files/GSI/">Go To Downloads</a>
              </div>
              <div class="conditional" data-cond-option="example2" data-cond-value="no" style="">
                <p class="mb-3 lead text-dark" style="">Great! Here's the link to our device builds for Pie </p><br><br>
                <a class="btn btn-primary mx-1 mb-3" href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&amp;hosted_button_id=MKDDQGLYDKGV6&amp;source=url" target="”_blank”">Donate $5</a><a class="btn btn-info mb-3 mx-1" target="”_blank”" href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&amp;hosted_button_id=99GBH7ZW77P54&amp;source=url">Donate $10</a><a class="btn btn-dark text-white mb-3" href="https://www.paypal.me/TeamBliss" target="_blank">Donate Other Amount</a><a class="btn mb-3 btn-link" href="https://sourceforge.net/projects/blissroms/files/Pie/">Go To Downloads</a>
              </div>
            </div>
            <div class="conditional" data-cond-option="example1" data-cond-value="no">
              <p class="mb-3 lead text-dark">OK, we only have experimental Q builds at the moment. Here's a link for those:</p> <br><br><a class="btn btn-primary mb-3 mx-1" href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&amp;hosted_button_id=MKDDQGLYDKGV6&amp;source=url" target="”_blank”">Donate $5</a><a class="btn btn-info mb-3 mx-1" target="”_blank”" href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&amp;hosted_button_id=99GBH7ZW77P54&amp;source=url">Donate $10</a><a class="btn mb-3 btn-dark text-white" href="https://www.paypal.me/TeamBliss" target="_blank">Donate Other Amount</a><a class="btn mb-3 btn-link" href="https://sourceforge.net/projects/blissroms/files/Q/">Go To Downloads</a>
            </div>
          </div>
          <hr width="100%" size="8" align="left">
          <p class="lead text-dark">
            <label>If you're looking for Bliss OS (Android for PC's), we have moved to a new site. <br><br> <a class="btn mb-3 btn-dark" target="BLANK" href="https://www.blissos.org">Go to the Bliss OS website</a> </label>
          </p>
        </div>
      </div>
    </div>
  </div>
  <!-- End Downloads -->
  <div class="py-5 bg-dark" id="documentation">
    <div class="container">
      <div class="row">
        <div class="col-md-12" style="">
          <h3 class="display-3 text-truncate">Docs</h3>
          <p class="mb-4 lead">Bliss ROMs documentation can be found on our <a href="https://docs.blissroms.com">docs site</a>, while our development update posts can be found on the XDA thread for that devices release version.<br><br> We recommend all users start with using the documentation we have provided before trying to hunt us down online and ask us questions as this action takes away the valuable development time we have commited towards this project. None of us are paid for the work we do on Bliss, so please set your expectations accordingly.&nbsp;<br><br> For questions on if Bliss will work on your device, please search our public <a href="https://www.blissroms.com/stats.html">stats site</a> for your device, failing that, search the XDA or Google for a Bliss build for your device.&nbsp;</p>
          <div class="row">
            <div class="col-md-3" style=""><img class="img-fluid d-block" src="images/github-logo.png"></div>
            <div class="col-md-7" style="">
              <h3>Want to help contribute towards our open source project?</h3>
              <p>We're always adding to Bliss development, and if this is your way of giving back, then feel free to download the source and submit commits through the BlissROMs Gerrit Review or check out our <a href="https://github.com/BlissRoms">GitHub repo</a></p>
            </div>
            <div class="col-md-2 mx-auto" style="">
              <a class="btn mb-3 btn-secondary" href="https://docs.blissroms.com" target="_blank">BlissROMs Docs</a>
            </div>
          </div>
        </div>
      </div>
    </div>
  </div>
  <div class="py-5 bg-light">
    <div class="container">
      <div class="row">
        <div class="col-md-12">
          <div class="row">
            <div class="mx-auto col-md-12 text-center">
              <h3 class="display-3">The Team</h3>
            </div>
          </div>
          <ul class="nav nav-tabs nav-justified">
            <li class="nav-item mx-auto font-weight-bold"> <a class="active nav-link" href="" data-toggle="tab" data-target="#tabone">Core Members</a> </li>
            <li class="nav-item mx-auto font-weight-bold"> <a href="" class="nav-link" data-toggle="tab" data-target="#tabtwo">Maintainers</a> </li>
          </ul>
          <div class="tab-content mt-2">
            <div class="tab-pane fade show active" id="tabone" role="tabpanel">
              <section id="content" class="team_content"></section>
              <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
              <script>
                $.ajax({
                  type: "GET",
                  url: "https://blissapi.blissroms.com/team/public/allteambliss", // TeamBliss JSON
                  success: function(data) {
                    var newContent = ''; // Variable to hold HTML
                    for (var i = 0; i < data.length; i++) { // Loop through object
                      newContent += '<div id="event" class="team_item">';
                      newContent += '<img class="image crop" src="' + data[i].image + '" ';
                      newContent += 'alt="' + data[i].member + '" />';
                      newContent += '<h3><b>' + data[i].member + '</b></h3>';
                      newContent += '<p class="team_data_text font-weight-bold">' + data[i].descriptions + '</p>';
                      newContent += '<p class="team_data_text font-weight-bold"><i>&quot;' + data[i].email + '&quot;</i></p>';
                      newContent += '</div>';
                    }
                    // Update the page with the new content
                    document.getElementById('content').innerHTML = newContent;
                  }
                })
              </script>
            </div>
            <div class="tab-pane fade" id="tabtwo" role="tabpanel">
              <section id="content2" class="team_content"></section>
              <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
              <script>
                $.ajax({
                  type: "GET",
                  url: "https://blissapi.blissroms.com/blissinfra/public/allmaintainers", // TeamBliss JSON
                  success: function(data) {
                    var newContent = ''; // Variable to hold HTML
                    for (var i = 0; i < data.length; i++) { // Loop through object
                      newContent += '<div id="event" class="team_item">';
                      newContent += '<img class="image crop" src="' + data[i].image + '" ';
                      newContent += 'alt="' + data[i].mname + '" />';
                      newContent += '<h3><b>' + data[i].mname + '</b></h3>';
                      newContent += '<p class="team_data_text font-weight-bold">' + data[i].device + '</p>';
                      newContent += '<p class="team_data_text font-weight-bold"><i>&quot;' + data[i].codename + '&quot;</i></p>';
                      newContent += '</div>';
                    }
                    // Update the page with the new content
                    document.getElementById('content2').innerHTML = newContent;
                  }
                })
              </script>
            </div>
          </div>
        </div>
      </div>
    </div>
  </div>
  <div class="py-4 text-center">
    <div class="container">
      <div class="row">
        <div class="mx-auto col-md-8">
          <h1 class="mb-3" contenteditable="true">Bliss Family Projects</h1>
          <p class="lead">The Bliss Family projects we currently support can be found below: </p>
        </div>
      </div>
      <div class="row">
        <div class="col-lg-4 p-3">
          <div class="card">
            <div class="card-body p-4"> <img class="img-fluid d-block mb-3 mx-auto rounded-circle" src="images/invictrix.jpg" width="150">
              <h1>Invictrīx ROM</h1>
              <div class="row d-flex justify-content-center pb-2">
                <div class="col-lg-4 col-md-6">
                  <a href="https://t.me/InvictusROM" target="_blank"><i class="d-block fa text-muted text-muted fa-lg mx-2 fab fa-telegram"></i></a>
                </div>
                <div class="col-lg-4 col-md-6">
                  <a href="https://plus.google.com/communities/109716291977795337501" target="_blank"><i class="d-block fa text-muted text-muted fa-lg mx-2 fab fa-google-plus"></i></a>
                </div>
              </div>
              <p class="mb-0">Invictrīx ROM emphasizes performance, offering heavy optimizations along with a unique dark themed style.</p>
            </div>
          </div>
        </div>
        <div class="col-lg-4 p-3 col-md-6">
          <div class="card">
            <div class="card-body p-4"> <img class="img-fluid d-block mb-3 mx-auto rounded-circle" src="images/soap.jpg" width="150">
              <h1>SOAP ROM</h1>
              <div class="row d-flex justify-content-center pb-2">
                <div class="col-lg-4 col-md-6">
                  <a href="https://plus.google.com/u/0/107610198397215674589" target="_blank"><i class="d-block fa text-muted text-muted fa-lg mx-2 fab fa-google-plus"></i></a>
                </div>
              </div>
              <p class="mb-0">SOAP is an AOSP ROM that focuses on being a slim and clean ROM.</p>
            </div>
          </div>
        </div>
        <div class="col-lg-4 p-3 col-md-6">
          <div class="card">
            <div class="card-body p-4"> <img class="img-fluid d-block mb-3 mx-auto rounded-circle" src="images/xtremis.jpg" width="150">
              <h1>Xtremis Project</h1>
              <div class="row d-flex justify-content-center pb-2">
                <div class="col-lg-4 col-md-6">
                  <a href="#" target="_blank"><i class="d-block fa text-muted text-muted fa-lg mx-2 fab fa-telegram"></i></a>
                </div>
                <div class="col-lg-4 col-md-6">
                  <a href="#" target="_blank"><i class="d-block fa text-muted text-muted fa-lg mx-2 fab fa-google-plus"></i></a>
                </div>
              </div>
              <p class="mb-0">Currently pre-release, this project is progressing steadily and will soon have more details to share. Please check in later.</p>
            </div>
          </div>
        </div>
      </div>
    </div>
  </div>
  <div class="py-5 bg-primary" id="gear">
    <div class="container">
      <div class="row">
        <div class="col-md-12">
          <h1><b>A Little Bliss Gear</b></h1>
          <p class="lead mb-4"><b>Bliss Family of ROMs has put together a Teespring store as a start to bring some stylish merchandise to our users, and help raise money for our cause. Check out a few of our selections below and follow the link to our store for more</b></p>
        </div>
      </div>
      <div class="row d-flex justify-content-between">
        <div class="col-md-4 col-lg-3 p-4"> <img class="img-fluid d-block" width="1500" src="images/560.jpg">
          <h4 class="my-3"> <b>T-Shirts</b></h4>
          <p class="body-font"><b>Be the first one on your block to sport Bliss on your back. Various sizes and colors available.</b></p>
        </div>
        <div class="col-md-4 col-lg-3 p-4"> <img class="img-fluid d-block" src="images/560 (1).jpg" width="1500">
          <h4 class="my-3"> <b>Hoodies</b></h4>
          <p class="body-font"><b>Keep warm in style. Wr have hoodies and sweatshirts available. Various sizes and colors options too.</b></p>
        </div>
        <div class="col-md-4 col-lg-3 p-4"> <img class="img-fluid d-block" src="images/560 (2).jpg" width="1500">
          <h4 class="my-3"> <b>Tank Tops</b></h4>
          <p class="body-font"><b>It's all about the Bliss when you are wearing one of our tank tops. Various sizes and colors available.</b></p>
        </div>
      </div>
      <div class="row">
        <div class="col-md-12">
          <div class="card">
            <div class="card-body">
              <h4 class="card-title"><b>Want More?</b></h4>
              <p class="card-text body-font">We are constantly updating our selection of apparel, adding more cool designs and options as we go. So make sure you check back for any updates.&nbsp;</p> <a class="btn btn-primary" href="https://teespring.com/stores/bliss-family-store-2">Visit Our Teespring Store&nbsp;<i class="fa fa-shopping-cart fa-fw"></i></a>
            </div>
          </div>
        </div>
      </div>
    </div>
  </div>
  <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">BlissROMs Telegram</a> </li>
            <li> <a href="https://t.me/blissx86">Bliss OS Telegram</a> </li>
            <li> <a href="https://www.facebook.com/BlissFamilyOfROMs/">Bliss Facebook</a> </li>
            <li> <a href="https://twitter.com/Bliss_Roms">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">BlissROMs Gerrit Review</a> </li>
            <li> <a href="https://review-x86.blissroms.com">Bliss OS (x86) Gerrit Review</a> </li>
            <li> <a href="https://github.com/BlissRoms">BlissROMs GitHub</a> </li>
            <li> <a href="https://github.com/BlissRoms-Devices">BlissROMs-Devices GitHub</a> </li>
            <li> <a href="https://github.com/BlissRoms-x86">Bliss OS GitHub</a> </li>
            <li> <a href="https://github.com/BlissRoms-pine64">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">BlissROMs</a> </li>
            <li> <a href="https://www.reddit.com/r/BlissOS">Bliss OS</a> </li>
            <li> <a href="https://www.reddit.com/r/TeamBliss">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>
  <!-- Footer -->
  <!-- JavaScript dependencies -->
  <script src="js/mainani.js" type="text/javascript"></script>
  <script src="https://code.jquery.com/jquery-3.3.1.min.js"></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="js/conditionize.js"></script>
</body>

</html>