diff --git a/system/netlify/functions/index.mjs b/system/netlify/functions/index.mjs index 918cbff5f2..4ffc2b67f8 100644 --- a/system/netlify/functions/index.mjs +++ b/system/netlify/functions/index.mjs @@ -1141,14 +1141,20 @@ async function fun(event, context) { window.acSTARTING_HASH = hash; })(); - + - ${dev ? ` - ` : ` - - + ${dev ? ` + ` : ` + diff --git a/system/public/aesthetic.computer/boot.mjs b/system/public/aesthetic.computer/boot.mjs index 23d90948b1..c29af375c7 100644 --- a/system/public/aesthetic.computer/boot.mjs +++ b/system/public/aesthetic.computer/boot.mjs @@ -1,12 +1,16 @@ // `aesthetic.computer` Bootstrap, 23.02.16.19.23 -// 📦 Early WebSocket module loader initialization -// This runs before anything else to establish connection ASAP -// Skip in PACK mode (NFT bundles use import maps) -let moduleLoader = null; -let moduleLoaderReady = Promise.resolve(false); // Promise that resolves when loader is ready - -if (!window.acPACK_MODE) { +// 📦 Optional WebSocket module loader for local hot reload and diagnostics. +let moduleLoader = null; +let moduleLoaderReady = Promise.resolve(false); // Promise that resolves when loader is ready +const moduleWsParam = new URLSearchParams(window.location.search).get("modulews"); +const moduleWsEnabled = + window.location.hostname === "localhost" || + window.location.hostname === "127.0.0.1" || + moduleWsParam === "1" || + moduleWsParam === "true"; + +if (!window.acPACK_MODE && moduleWsEnabled) { try { // Dynamic import of module-loader (this one file loads via HTTP) const { moduleLoader: ml } = await import("./module-loader.mjs");