Как сделать так, чтобы PWA работал для лендингов

Для этого в странице должны быть прописаны следующие элементы

В Head секции: 

<link rel="manifest" href="/manifest.webmanifest" crossorigin="use-credentials">

Перед закрывающим /body должны быть: 

<input type="hidden" class="as-enablePWANotifications" value="1">


    <script>
        // Check compatibility for the browser we're running this in
        if ("serviceWorker" in navigator) {
            if (navigator.serviceWorker.controller) {
                console.log("[PWA Builder] active service worker found, no need to register");
            } else {
                // Register the service worker
                console.log("Register the service worker...")
                navigator.serviceWorker
                    .register("/pwabuilder-sw.js", {
                        scope: "./"
                    })
                    .then(function (reg) {
                        console.log("[PWA Builder] Service worker has been registered for scope: " + reg.scope);
                    });
            }
        }
        // may be let deferredPrompt;
        let deferredPrompt = null;
        // вызывается только если не установлено приложение в браузере! См. chrome://apps
        // $(window).on('beforeinstallprompt', function (e) {
        window.addEventListener('beforeinstallprompt', function (e) {
            console.log("beforeinstallprompt")
            // return; Иногда влияло на Autocomplete
            // Prevent Chrome 67 and earlier from automatically showing the prompt

            e.preventDefault();
            // Stash the event so it can be triggered later.
            deferredPrompt = e;
            console.log("window.deferredPrompt", e);
            return false;
        });
    </script>
Страница-источник на сайте falconspace.ru