Fixed
- Proxied apps using relative URLs (e.g.
css/style.css) now load correctly -- the interceptor rewrites relative paths through the proxy prefix, fixing CSS/JS/image loading in apps like qBittorrent location.pathname,location.href,location.toString(),document.URL, anddocument.documentURIin proxied apps now transparently strip the proxy prefix -- SPA code always sees clean paths withoutreplaceStatealtering the real browser URL, so F5 refresh works correctlylocation.href = "/path"assignments in proxied apps now route through the proxy- Inline SSR payloads (e.g. Nuxt 3
fullPathfields) are no longer rewritten -- prevents hydration route mismatches that caused 404s on page refresh in frameworks like Mealie - Code-split chunks in proxied apps now load correctly -- the proxy rewrites ES module
import()andimport/export...fromspecifiers since the browser's module loader bypasses the runtime fetch interceptor WorkerandSharedWorkerconstructors in proxied apps are now intercepted so worker scripts load through the proxy- Protocol-relative URLs (
//cdn.example.com/lib.js) in proxied apps are no longer incorrectly prefixed with the proxy path <meta http-equiv="refresh">URLs are now rewritten through the proxy -- previously only theRefreshresponse header was handled<object data>,<button formaction>, and<input formaction>attributes are now covered by the proxy URL rewriterlocalStorageandsessionStoragein proxied apps are now isolated per app -- keys are transparently namespaced so apps sharing the same origin no longer collide with each other or with Muximux- Opening an app's settings no longer shows "unsaved changes" without making changes -- optional fields are now normalised with defaults on load
- Icon background colour picker now works on existing apps -- factory functions deep-merge icon fields so
backgroundis always present