<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1" />

    <script
      defer
      data-domain="developer.fermyon.com"
      src="https://plausible.io/js/script.tagged-events.js"
    ></script>

    <link rel="icon" type="image/png" href="/hub/static/image/icon/favicon.png" />

    <link
      rel="alternate"
      type="application/rss+xml"
      title="Spin Up Hub"
      href="/atom.xml"
    />

    <link
      rel="stylesheet"
      href="https://cdnjs.cloudflare.com/ajax/libs/bulma/0.9.3/css/bulma.min.css"
      integrity="sha512-IgmDkwzs96t4SrChW29No3NXBIBv8baW490zk5aXvhCD8vuZM3yUSkbyTBcXohkySecyzIrUwiF/qV0cuPcL3Q=="
      crossorigin="anonymous"
      referrerpolicy="no-referrer"
    />
    <link
      href="https://fonts.googleapis.com/css2?family=Sen:wght@400;700&amp;display=swap"
      rel="stylesheet"
    />
    <link
      href="https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500&display=swap"
      rel="stylesheet"
    />
    <link
      href="/static/css/styles.css"
      rel="stylesheet"
    />

    <title>Spin Up Hub</title>

    <!-- Google Tag Manager -->
    <script>
      ;(function (w, d, s, l, i) {
        w[l] = w[l] || []
        w[l].push({
          "gtm.start": new Date().getTime(),
          event: "gtm.js",
        })
        var f = d.getElementsByTagName(s)[0],
          j = d.createElement(s),
          dl = l != "dataLayer" ? "&l=" + l : ""
        j.async = true
        j.src = "https://www.googletagmanager.com/gtm.js?id=" + i + dl
        f.parentNode.insertBefore(j, f)
      })(window, document, "script", "dataLayer", "GTM-T28H3XL")
    </script>
    <!-- End Google Tag Manager -->

    <script>
      const systemTheme = window.matchMedia("(prefers-color-scheme: dark)")
        .matches
        ? "dark"
        : "light"

      // The default theme is the system theme, unless the user has explicitly overridden it.
      var savedTheme = localStorage.getItem("theme") || systemTheme
      setTheme(savedTheme)

      document.addEventListener("DOMContentLoaded", () => {
        const btn = document.querySelector(".dark-mode")
        btn.addEventListener("click", () => {
          if (savedTheme === "dark") {
            setTheme("light")
          } else if (savedTheme === "light") {
            setTheme("dark")
          }
        })
      })

      // Change the website theme when the system theme changes.
      window
        .matchMedia("(prefers-color-scheme: dark)")
        .addEventListener("change", (event) => {
          if (event.matches) {
            setTheme("dark")
          } else {
            setTheme("light")
          }
        })

      // Change the website theme when a different tab changed it.
      window.onstorage = () => {
        // When local storage changes, update the theme.
        setTheme(localStorage.getItem("theme"))
      }

      function setTheme(mode) {
        localStorage.setItem("theme", mode)
        savedTheme = mode
        document.documentElement.classList.toggle("dark-theme", mode === "dark")
      }
    </script>

    <!-- <script type="text/javascript" defer>
    window.heap=window.heap||[],heap.load=function(e,t){window.heap.appid=e,window.heap.config=t=t||{};var r=document.createElement("script");r.type="text/javascript",r.async=!0,r.src="https://cdn.heapanalytics.com/js/heap-"+e+".js";var a=document.getElementsByTagName("script")[0];a.parentNode.insertBefore(r,a);for(var n=function(e){return function(){heap.push([e].concat(Array.prototype.slice.call(arguments,0)))}},p=["addEventProperties","addUserProperties","clearEventProperties","identify","resetIdentity","removeEventProperty","setEventProperties","track","unsetEventProperty"],o=0;o<p.length;o++)heap[p[o]]=n(p[o])};
  heap.load("3221611804");
    </script> -->
    <script type="module" crossorigin src="/hub/assets/index-a80a27fc.js"></script>
    <link rel="stylesheet" href="/hub/assets/index-5225cd53.css">
  </head>

  <body class="documentation hub">
    <noscript
      ><iframe
        src="https://www.googletagmanager.com/ns.html?id=GTM-T28H3XL"
        height="0"
        width="0"
        style="display: none; visibility: hidden"
      ></iframe
    ></noscript>
    <header class="navbar is-transparent is-wide" id="topbar">
      <div class="navbar-brand logo-wrap">
        <a class="navbar-item" href="/" title="Developer Home">
          <div class="logo">
            <svg
              width="99"
              height="12"
              viewBox="0 0 685 87"
              fill="none"
              xmlns="http://www.w3.org/2000/svg"
            >
              <path
                d="M84.5571 18.574H16.4092V36.0591H63.5585V52.5029H16.4092V85H0V2.13016H1.86173H16.4092H84.5571V18.574Z"
                fill="#0D203F"
              />
              <path
                d="M186.767 18.574H118.619V36.0591H165.768V52.5029H118.619V68.5128H186.767V85H118.619H104.071H102.21V2.13016H118.619H186.767V18.574Z"
                fill="#0D203F"
              />
              <path
                d="M288.89 85H263.475L234.554 60.5295H220.829V85H204.419V2.13016H259.838C265.063 2.13016 269.811 3.44625 274.083 6.07841C278.384 8.71058 281.804 12.2394 284.344 16.6649C286.913 21.0904 288.197 25.9787 288.197 31.3298C288.197 36.681 286.927 41.5693 284.387 45.9948C281.847 50.3914 278.456 53.8913 274.213 56.4945C269.97 59.0978 265.222 60.4428 259.968 60.5295L288.89 85ZM220.829 18.5306V44.1725H259.838C263.129 44.1725 265.943 42.9143 268.281 40.3978C270.619 37.8813 271.788 34.8587 271.788 31.3298C271.788 27.801 270.619 24.7928 268.281 22.3053C265.943 19.7888 263.129 18.5306 259.838 18.5306H220.829Z"
                fill="#0D203F"
              />
              <path
                d="M382.787 2H391.013V84.8698H374.604V32.9786L354.082 68.9033H343.474L322.952 32.9786V84.8698H306.543V2H314.769H324.207L348.756 45.0403L373.348 2H382.787Z"
                fill="#0D203F"
              />
              <path
                d="M492.833 2.13016L459.409 46.8191V85H443V46.5588L408.666 2.13016H429.448L451.226 30.2886L472.311 2.13016H492.833Z"
                fill="#0D203F"
              />
              <path
                d="M541.053 85C546.826 85 552.238 83.9298 557.289 81.7893C562.369 79.62 566.814 76.6407 570.624 72.8515C574.463 69.0624 577.465 64.6658 579.63 59.6618C581.823 54.6289 582.92 49.2633 582.92 43.5651C582.92 37.838 581.823 32.4724 579.63 27.4684C577.465 22.4644 574.463 18.0678 570.624 14.2786C566.814 10.4895 562.369 7.52466 557.289 5.38421C552.238 3.21485 546.826 2.13016 541.053 2.13016C535.28 2.13016 529.854 3.21485 524.774 5.38421C519.722 7.52466 515.277 10.4895 511.438 14.2786C507.628 18.0678 504.626 22.4644 502.433 27.4684C500.268 32.4724 499.186 37.838 499.186 43.5651C499.186 49.2633 500.268 54.6289 502.433 59.6618C504.626 64.6658 507.628 69.0624 511.438 72.8515C515.277 76.6407 519.722 79.62 524.774 81.7893C529.854 83.9298 535.28 85 541.053 85ZM541.053 18.6607C545.671 18.6607 549.885 19.7888 553.695 22.045C557.505 24.2722 560.536 27.2804 562.787 31.0695C565.068 34.8298 566.208 38.9949 566.208 43.5651C566.208 48.1352 565.068 52.3149 562.787 56.104C560.536 59.8643 557.505 62.8725 553.695 65.1286C549.885 67.3558 545.671 68.4694 541.053 68.4694C536.435 68.4694 532.22 67.3558 528.41 65.1286C524.6 62.8725 521.555 59.8643 519.275 56.104C517.024 52.3149 515.898 48.1352 515.898 43.5651C515.898 38.9949 517.024 34.8298 519.275 31.0695C521.555 27.2804 524.6 24.2722 528.41 22.045C532.22 19.7888 536.435 18.6607 541.053 18.6607Z"
                fill="#1F2853"
              />
              <path
                d="M668.591 2.13016H685V85H676.774H666.166L616.939 25.0821V85H600.529V2.13016H619.363L668.591 62.0481V2.13016Z"
                fill="#0D203F"
              />
            </svg>
          </div>
        </a>

        <div class="logo-developer">
          <a href="/" title="Developer Home">Developer</a>
        </div>
        <div
          class="navbar-burger burger"
          aria-label="menu"
          aria-expanded="false"
          data-target="docsMenu"
        >
          <span></span>
          <span></span>
          <span></span>
        </div>
      </div>

      <div class="navbar-menu">
        <div class="navbar-start">
          <div class="navbar-item has-dropdown is-hoverable">
            <a class="navbar-link" >Docs</a>

            <div class="navbar-dropdown is-boxed">
              <a href="/spin/index" class="navbar-item">
                <div class="project-content">
                  <div class="title">Spin</div>
                  <div class="description">
                    A framework for quickly composing serverless apps.
                  </div>
                </div>
              </a>

              <a href="/cloud/index" class="navbar-item">
                <div class="project-content">
                  <div class="title">Cloud</div>
                  <div class="description">
                    The easiest way to deploy & manage WebAssembly apps
                  </div>
                </div>
              </a>

              <a href="/bartholomew/index" class="navbar-item">
                <div class="project-content">
                  <div class="title">Bartholomew</div>
                  <div class="description">
                    Compile WebAssembly-powered websites with this micro CMS
                  </div>
                </div>
              </a>
            </div>
          </div>
          <div class="overlay"></div>

          <a class="navbar-item is-active" href="./">Hub</a>
        </div>

        <div class="navbar-end">
          <a class="dark-mode navbar-link">
            <svg
              width="1.67rem"
              height="1.67rem"
              viewBox="0 0 502 502"
              version="1.1"
              xmlns="http://www.w3.org/2000/svg"
              xmlns:xlink="http://www.w3.org/1999/xlink"
            >
              <title>Toggle light/dark mode</title>
              <g id="Page-1" stroke="none" stroke-width="1" fill-rule="evenodd">
                <g
                  id="noun-dark-mode-4600782"
                  transform="translate(0.168000, 0.168250)"
                  fill-rule="nonzero"
                >
                  <g id="Group">
                    <path
                      d="M385.003107,250.83175 C385.099656,207.97975 364.717,167.66375 330.15,142.34175 C295.58,117.02175 250.994,109.74375 210.17,122.75975 C169.342,135.77975 137.197,167.52175 123.666,208.18175 C123.32616,208.93956 123.02928,209.72085 122.77928,210.51375 C114.53708,236.71275 114.53708,264.81475 122.77928,291.01375 C123.02928,291.81062 123.32616,292.58795 123.666,293.34575 C137.193,333.99075 169.318,365.72475 210.123,378.75175 C250.928,391.77875 295.502,384.52905 330.073,359.23975 C364.647,333.95075 385.057,293.66575 385.003107,250.82975 L385.003107,250.83175 Z M151.672,250.83175 L151.668093,250.83175 C151.7345,244.95675 152.328253,239.10175 153.441493,233.33175 L233.336493,233.33175 L233.336493,268.33175 L153.441493,268.33175 C152.328193,262.56225 151.734493,256.70675 151.668093,250.83175 L151.672,250.83175 Z M233.34,153.43675 L233.336094,198.33175 L167.047094,198.33175 C181.836094,174.69875 205.902094,158.39775 233.336094,153.43675 L233.34,153.43675 Z M167.047,303.32675 L233.336,303.32675 L233.336,348.22175 C205.902,343.26085 181.836,326.95975 167.047,303.32675 Z M268.337,348.22175 L268.337,153.43175 C299.095,158.88095 325.474,178.54075 339.482,206.45875 C353.494,234.37675 353.494,267.27475 339.482,295.19275 C325.474,323.11075 299.095,342.77075 268.337,348.21975 L268.337,348.22175 Z"
                      id="Shape"
                    ></path>
                    <path
                      d="M268.332,64.16375 L268.332,17.49975 C268.332,11.24585 264.9961,5.46875 259.582,2.34375 C254.1679,-0.78125 247.496,-0.78125 242.082,2.34375 C236.668,5.46875 233.332,11.24605 233.332,17.49975 L233.332,64.16375 C233.332,70.41765 236.6679,76.19475 242.082,79.31975 C247.4961,82.44475 254.168,82.44475 259.582,79.31975 C264.996,76.19475 268.332,70.41745 268.332,64.16375 Z"
                      id="Path"
                    ></path>
                    <path
                      d="M428.162,73.50175 C424.8808,70.21655 420.4276,68.36895 415.783,68.36895 C411.1424,68.36895 406.6892,70.21665 403.408,73.50175 L370.459,106.47075 C366.0371,110.89265 364.3106,117.33775 365.9278,123.38075 C367.5489,129.41985 372.2676,134.13875 378.3068,135.75975 C384.3498,137.37695 390.7948,135.65037 395.2168,131.22855 L428.1618,98.20855 C431.4313,94.93125 433.2712,90.48585 433.2712,85.85655 C433.2712,81.22375 431.4314,76.77845 428.1618,73.50155 L428.162,73.50175 Z"
                      id="Path"
                    ></path>
                    <path
                      d="M484.162,233.33175 L437.498,233.33175 C431.2441,233.33175 425.467,236.66765 422.342,242.08175 C419.217,247.49585 419.217,254.16775 422.342,259.58175 C425.467,264.99575 431.2443,268.33175 437.498,268.33175 L484.166,268.33175 L484.162093,268.33175 C490.415993,268.33175 496.193093,264.99585 499.318093,259.58175 C502.443093,254.16765 502.443093,247.49575 499.318093,242.08175 C496.193093,236.66775 490.415793,233.33175 484.162093,233.33175 L484.162,233.33175 Z"
                      id="Path"
                    ></path>
                    <path
                      d="M403.452,428.16175 C407.9364,432.17345 414.175,433.59925 419.956,431.93125 C425.7412,430.26715 430.265,425.74375 431.929,419.95825 C433.597,414.17705 432.17119,407.93825 428.1595,403.45425 L395.1675,370.43825 L395.1675,370.434344 C390.7456,366.012444 384.3005,364.285944 378.2575,365.903144 C372.2184,367.524244 367.4995,372.242944 365.8785,378.282144 C364.2613,384.325144 365.98788,390.770144 370.4097,395.192144 L403.452,428.16175 Z"
                      id="Path"
                    ></path>
                    <path
                      d="M233.332,437.50175 L233.332,484.16975 L233.332,484.165843 C233.332,490.419743 236.6679,496.196843 242.082,499.321843 C247.4961,502.446843 254.168,502.446843 259.582,499.321843 C264.996,496.196843 268.332,490.419543 268.332,484.165843 L268.332,437.501843 C268.332,431.247943 264.9961,425.470843 259.582,422.345843 C254.1679,419.220843 247.496,419.220843 242.082,422.345843 C236.668,425.470843 233.332,431.248143 233.332,437.501843 L233.332,437.50175 Z"
                      id="Path"
                    ></path>
                    <path
                      d="M73.502,428.16175 C76.7872,431.43515 81.2403,433.27505 85.881,433.27505 C90.5177,433.27505 94.9708,431.43525 98.256,428.16175 L131.248,395.14575 L131.251907,395.14575 C135.544907,390.70435 137.177707,384.32575 135.548807,378.36475 C133.916007,372.40385 129.263607,367.74375 123.302807,366.10675 C117.345807,364.47005 110.962807,366.098937 106.517807,370.38795 L73.501807,403.45395 C70.232307,406.73125 68.392407,411.17665 68.392407,415.80595 C68.392407,420.43875 70.232207,424.88405 73.501807,428.16095 L73.502,428.16175 Z"
                      id="Path"
                    ></path>
                    <path
                      d="M0,250.83175 C0,255.47235 1.8438,259.92555 5.125,263.20675 C8.4062,266.48795 12.8555,268.33175 17.5,268.33175 L64.164,268.33175 C70.4179,268.33175 76.195,264.99585 79.32,259.58175 C82.445,254.16765 82.445,247.49575 79.32,242.08175 C76.195,236.66775 70.4177,233.33175 64.164,233.33175 L17.5,233.33175 C12.8555,233.33175 8.4062,235.17555 5.125,238.45675 C1.8438,241.73795 0,246.19115 0,250.83175 Z"
                      id="Path"
                    ></path>
                    <path
                      d="M131.202,131.22175 C134.4872,127.93655 136.3309,123.48735 136.3309,118.84275 C136.3309,114.19815 134.4871,109.74505 131.202,106.46375 L98.206,73.49475 C93.7216,69.48305 87.483,68.05725 81.702,69.72525 C75.9168,71.38935 71.393,75.91275 69.729,81.69825 C68.061,87.47945 69.48681,93.71825 73.4985,98.20225 L106.4675,131.22225 C109.7527,134.49175 114.198,136.32775 118.8345,136.32775 C123.4712,136.32775 127.9165,134.49185 131.2015,131.22225 L131.202,131.22175 Z"
                      id="Path"
                    ></path>
                  </g>
                </g>
              </g>
            </svg>
          </a>

          <a
            class="navbar-item button is-outlined is-rounded is-medium cta-login-to-cloud btn-login"
            href="https://cloud.fermyon.com/login"
            target="_blank"
            aria-label="menuitem"
            title="Login to Fermyon Cloud"
            >Login to Cloud</a
          >
          <a
            class="navbar-item button is-primary is-rounded is-medium cta-login-to-cloud btn-signup"
            href="https://cloud.fermyon.com/?signup"
            target="_blank"
            aria-label="menuitem"
            title="Signup for Fermyon Cloud"
            >Signup for Cloud</a
          >
        </div>
      </div>
    </header>
    <main>
      <div class="menu-wrap is-narrow is-hidden-desktop" id="docsMenu">
        <aside class="menu">
          <div
            id="search-button-container"
            class="search-button-container"
          ></div>

          <p class="menu-label">Projects</p>
          <ul class="menu-list">
            <li><a href="/spin/index">Spin</a></li>
            <li><a href="/cloud/index">Fermyon Cloud</a></li>
            <li><a href="/bartholomew/index">Bartholomew</a></li>
          </ul>

          <a
            class="navbar-item button is-primary is-rounded is-small"
            href="https://cloud.fermyon.com/"
            target="_blank"
            >Login to Cloud</a
          >
        </aside>
      </div>
      <div id="search-modal-container" class="search-modal-container">
        <div class="modal-close"></div>
      </div>
      <div id="app">
        <script src="/static/js/headroom.min.js"></script>
        <script src="/static/js/highlight.min.js"></script>
        <script src="/static/js/redom.min.js"></script>
        <script src="/static/js/lunr.min.js"></script>
        <script src="/static/js/main.js"></script>
        
      </div>

    <footer class="footer-links">
      <div class="container">
        <nav class="level">
          <div class="level-left">
            <a class="navbar-item" href="{{site.info.base_url}}/cloud/changelog"
              >Cloud Changelog</a
            >
            <a
              class="navbar-item"
              href="https://discord.gg/AAFNfS7NGf"
              target="_blank"
              >Discord</a
            >
            <a
              class="navbar-item"
              href="https://github.com/fermyon/developer"
              target="_blank"
              >GitHub</a
            >
            <a
              class="navbar-item"
              href="https://twitter.com/fermyontech"
              target="_blank"
              >Twitter</a
            >
          </div>
          <div class="level-right">
            <a
              href="/cloud/deploy"
              class="footer-logo cta-runs-on-fermyon"
              ><img
                src="/static/image/fermyon-badge.png"
                alt="This website runs on Fermyon Cloud"
            /></a>
          </div>
        </nav>
      </div>
    </footer>

    </main>
  </body>
</html>
