---
nav: docs
version_prefix: /versions/master
---

<!DOCTYPE html>
<html lang="en" itemscope itemtype="https://schema.org/WebPage">
  {% include head.html %}
  <body>
    {% include header.html %}

    <div class="page-title-bar">
      <div class="container">
        <h1>Documentation</h1>
      </div>
    </div>

    <div class="container vpad">
      <div class="row">
        <div class="col-lg-3">
          <a class="btn btn-default btn-lg btn-block sidebar-toggle"
              data-toggle="collapse" href="#sidebar-nav" aria-expanded="false"
              aria-controls="sidebar-nav">
            <i class="glyphicon glyphicon-menu-hamburger"></i> Navigation
          </a>
          <nav class="sidebar collapse" id="sidebar-nav">
            <ul class="sidebar-nav">
              <li><a href="{{ page.version_prefix }}/docs/install.html">Installing</a></li>
              <li><a href="{{ page.version_prefix }}/docs/getting-started.html">Getting Started</a></li>
              <li>
                <a class="sidebar-nav-heading" data-toggle="collapse"
                    href="#tutorial-menu" aria-expanded="false"
                    aria-controls="tutorial-menu">
                  Tutorial <span class="caret"></span>
                </a>
                <ul class="collapse sidebar-nav sidebar-submenu" id="tutorial-menu">
                  <li><a href="{{ page.version_prefix }}/docs/tutorial/java.html">Build Java</a></li>
                  <li><a href="{{ page.version_prefix }}/docs/tutorial/cpp.html">Build C++</a></li>
                  <li>
                    <a class="sidebar-nav-heading" href="#app-menu"
                       data-toggle="collapse" aria-expanded="false" aria-controls="app-menu">
                      Build Mobile Application
                    </a>
                    <ul class="collapse sidebar-nav sidebar-submenu" id="app-menu">
                      <li><a href="{{ page.version_prefix }}/docs/tutorial/app.html">Introduction</a></li>
                      <li><a href="{{ page.version_prefix }}/docs/tutorial/environment.html">Set Up Your Environment</a></li>
                      <li><a href="{{ page.version_prefix }}/docs/tutorial/workspace.html">Set Up a Workspace</a></li>
                      <li><a href="{{ page.version_prefix }}/docs/tutorial/android-app.html">Build an Android App</a></li>
                      <li><a href="{{ page.version_prefix }}/docs/tutorial/ios-app.html">Build an iOS App</a></li>
                      <li><a href="{{ page.version_prefix }}/docs/tutorial/backend-server.html">Build the Backend Server</a></li>
                      <li><a href="{{ page.version_prefix }}/docs/tutorial/review.html">Review</a></li>
                    </ul>
                  </li>
                </ul>
              </li>
              <li><a href="{{ page.version_prefix }}/docs/support.html">Get Support</a></li>
            </ul>
            <h3>Using Bazel</h3>
            <ul class="sidebar-nav">
              <li><a href="{{ page.version_prefix }}/docs/build-ref.html">BUILD files</a></li>
              <li><a href="{{ page.version_prefix }}/docs/bazel-user-manual.html">User Manual</a></li>
              <li><a href="{{ page.version_prefix }}/docs/test-encyclopedia.html">Writing Tests</a></li>
              <li><a href="{{ page.version_prefix }}/docs/query.html">Query Language</a></li>
              <li><a href="{{ page.version_prefix }}/docs/query-how-to.html">Query How-To</a></li>
              <li><a href="{{ page.version_prefix }}/docs/mobile-install.html">mobile-install (Android)</a></li>
              <li><a href="{{ page.version_prefix }}/docs/external.html">External Dependencies</a></li>
              <li><a href="{{ page.version_prefix }}/docs/command-line-reference.html">Command-line Reference</a></li>
              <li><a href="{{ page.version_prefix }}/docs/output_directories.html">Output Directories</a></li>
            </ul>
            {% include be-nav.html %}
            <h3>Extensions</h3>
            <ul class="sidebar-nav">
              <li><a href="{{ page.version_prefix }}/docs/skylark/concepts.html">Overview</a></li>
              <li><a href="{{ page.version_prefix }}/docs/skylark/macros.html">Macros</a></li>
              <li><a href="{{ page.version_prefix }}/docs/skylark/rules.html">Rules</a></li>
              <li><a href="{{ page.version_prefix }}/docs/skylark/aspects.html">Aspects</a></li>
              <li><a href="{{ page.version_prefix }}/docs/skylark/repository_rules.html">Repository rules</a></li>
              <li><a href="{{ page.version_prefix }}/docs/rule-challenges.html">Challenges of writing rules</a></li>
              <li>
                <a class="sidebar-nav-heading" data-toggle="collapse"
                    href="#skylark-lib-menu" aria-expanded="false"
                    aria-controls="skylark-lib-menu">
                  Reference <span class="caret"></span>
                </a>
                <ul class="collapse sidebar-nav sidebar-submenu" id="skylark-lib-menu">
                {% include skylark-nav.html %}
                </ul>
              </li>
              <li><a href="{{ page.version_prefix }}/docs/skylark/cookbook.html">Examples</a></li>
              <li><a href="{{ page.version_prefix }}/docs/skylark/deploying.html">Packaging rules</a></li>
              <li><a href="https://skydoc.bazel.build" target="_blank">Documenting rules</a></li>
            </ul>
          </nav>
        </div>
        <div class="col-lg-9">
          {{ content }}
        </div>
      </div>
    </div>

    {% include footer.html %}
  </body>
</html>
