From 194323a4b42dd74c5dbbf2dcacd57915a7f650a3 Mon Sep 17 00:00:00 2001 From: sevenzing Date: Mon, 1 Jun 2026 15:13:18 +0300 Subject: [PATCH 1/3] adding crossOriginIsolated:true and cross-origin headers --- docs/ensnode.io/astro.config.mjs | 14 +++++++++++++- .../src/components/molecules/CodePlayground.tsx | 1 + 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/docs/ensnode.io/astro.config.mjs b/docs/ensnode.io/astro.config.mjs index 01fc65f8a..5a16419e7 100644 --- a/docs/ensnode.io/astro.config.mjs +++ b/docs/ensnode.io/astro.config.mjs @@ -15,6 +15,19 @@ export default defineConfig({ trailingSlash: "never", integrations: [mermaid(), starlight(), sitemap(), react(), mdx(), icon()], vite: { + plugins: [ + tailwindcss(), + { + name: "cross-origin-isolation-headers", + configureServer(server) { + server.middlewares.use((_req, res, next) => { + res.setHeader("cross-origin-embedder-policy", "credentialless"); + res.setHeader("cross-origin-opener-policy", "same-origin"); + next(); + }); + }, + }, + ], resolve: { alias: { "@assets": fileURLToPath(new URL("./src/assets", import.meta.url)), @@ -30,7 +43,6 @@ export default defineConfig({ ssr: { noExternal: ["@namehash/namehash-ui"], }, - plugins: [tailwindcss()], }, redirects: { "/docs": "/docs/integrate", diff --git a/docs/ensnode.io/src/components/molecules/CodePlayground.tsx b/docs/ensnode.io/src/components/molecules/CodePlayground.tsx index f48cb701c..16fed18eb 100644 --- a/docs/ensnode.io/src/components/molecules/CodePlayground.tsx +++ b/docs/ensnode.io/src/components/molecules/CodePlayground.tsx @@ -68,6 +68,7 @@ export default function CodePlayground({ view: stackBlitzViewForPlayground(view), // embed project should use light theme because it's used in the docs theme: "light", + crossOriginIsolated: true, }) as EmbedOptions, [resolvedOpenFile, terminalHeight, height, view], ); From 78e58fd0581fcb19116a6d12657f426936ac40c8 Mon Sep 17 00:00:00 2001 From: sevenzing Date: Mon, 1 Jun 2026 15:36:46 +0300 Subject: [PATCH 2/3] add for production build too --- docs/ensnode.io/astro.config.mjs | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/docs/ensnode.io/astro.config.mjs b/docs/ensnode.io/astro.config.mjs index 5a16419e7..9db423000 100644 --- a/docs/ensnode.io/astro.config.mjs +++ b/docs/ensnode.io/astro.config.mjs @@ -14,6 +14,13 @@ export default defineConfig({ site: "https://ensnode.io", trailingSlash: "never", integrations: [mermaid(), starlight(), sitemap(), react(), mdx(), icon()], + server: { + // for production build + headers: { + "cross-origin-opener-policy": "same-origin", + "cross-origin-embedder-policy": "credentialless", + }, + }, vite: { plugins: [ tailwindcss(), @@ -21,6 +28,7 @@ export default defineConfig({ name: "cross-origin-isolation-headers", configureServer(server) { server.middlewares.use((_req, res, next) => { + // for development build res.setHeader("cross-origin-embedder-policy", "credentialless"); res.setHeader("cross-origin-opener-policy", "same-origin"); next(); From 4c0d16914c4061536deeb7399afcf4a1f7d7367a Mon Sep 17 00:00:00 2001 From: sevenzing Date: Mon, 1 Jun 2026 15:40:46 +0300 Subject: [PATCH 3/3] maybe this? --- docs/ensnode.io/vercel.json | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/docs/ensnode.io/vercel.json b/docs/ensnode.io/vercel.json index 57f2a935e..68cdaadca 100644 --- a/docs/ensnode.io/vercel.json +++ b/docs/ensnode.io/vercel.json @@ -1,4 +1,13 @@ { "$schema": "https://openapi.vercel.sh/vercel.json", - "trailingSlash": false + "trailingSlash": false, + "headers": [ + { + "source": "/(.*)", + "headers": [ + { "key": "cross-origin-opener-policy", "value": "same-origin" }, + { "key": "cross-origin-embedder-policy", "value": "credentialless" } + ] + } + ] }