Skip to content

feat: partial hydration - #951

Open
avivkeller wants to merge 2 commits into
mainfrom
partial-hydration-stacked-2
Open

feat: partial hydration#951
avivkeller wants to merge 2 commits into
mainfrom
partial-hydration-stacked-2

Conversation

@avivkeller

@avivkeller avivkeller commented Jul 27, 2026

Copy link
Copy Markdown
Member

Uses islands from 11ty in order to give us partial hydration

See nodejs/nodejs.org#9028 for the broken CSS issue
See nodejs/nodejs.org#9047 for the broken CodeTabs issue

@avivkeller
avivkeller requested a review from a team as a code owner July 27, 2026 23:35
@cursor

cursor Bot commented Jul 27, 2026

Copy link
Copy Markdown

PR Summary

Medium Risk
This changes the core client hydration and Vite CSS strategy for all generated pages; CodeTabs is a known regression until fixed.

Overview
Replaces full-page Preact hydration with island-based partial hydration using @11ty/is-land. Interactive UI (banner, theme toggle, search, sidebar, code copy, code tabs) is server-rendered inside <is-land> wrappers and hydrated on demand instead of hydrating the entire document from a per-page client bundle.

New withIsland, runtime.mjs, and loaders.mjs wire Preact hydration: props via inline JSON, static children preserved in <island-slot>, and dynamic imports keyed by component name. registerIslands merges the full JSX component map from generate.mjs so MDX components like CodeBox/CodeTabs can hydrate even though they are not in the small default loader list.

The client build now uses a single shared entry (CSS + island runtime) for every page; SSR programs only import components referenced on that page. Vite client cssCodeSplit is disabled so styles are not tied to late-loading island chunks. ThemeToggle is split out of the nav bar; layout always renders Banner (no server-only skip).

Code tabs are still broken per the PR note; code boxes work with interaction-triggered hydration.

Reviewed by Cursor Bugbot for commit f8bf410. Bugbot is set up for automated code reviews on this repo. Configure here.

@vercel

vercel Bot commented Jul 27, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
api-docs-tooling Ready Ready Preview, Comment Jul 29, 2026 6:37pm
1 Skipped Deployment
Project Deployment Actions Updated (UTC)
nodejs-doc-kit Ignored Ignored Jul 29, 2026 6:37pm

Request Review

@codecov

codecov Bot commented Jul 27, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 86.53%. Comparing base (43a09f7) to head (f8bf410).
⚠️ Report is 1 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #951   +/-   ##
=======================================
  Coverage   86.52%   86.53%           
=======================================
  Files         195      195           
  Lines       17974    17982    +8     
  Branches     1633     1636    +3     
=======================================
+ Hits        15552    15560    +8     
  Misses       2416     2416           
  Partials        6        6           

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes using default effort and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 797e8af. Configure here.

Comment thread src/generators/web/ui/index.css
@avivkeller
avivkeller changed the base branch from vite to main July 27, 2026 23:40
@avivkeller
avivkeller marked this pull request as draft July 27, 2026 23:48
Copilot AI review requested due to automatic review settings July 27, 2026 23:55

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@github-actions

github-actions Bot commented Jul 27, 2026

Copy link
Copy Markdown
Contributor

api-links Generator

Output: 1 file differs

apilinks.json
Expected values to be strictly deep-equal:
+ actual - expected
... Skipped lines

  {
    'Agent.defaultMaxSockets': 'https://github.com/nodejs/node/blob/HEAD/lib/_http_agent.js#L291',
    'Buffer.alloc': 'https://github.com/nodejs/node/blob/HEAD/lib/buffer.js#L435',
    'Buffer.allocUnsafe': 'https://github.com/nodejs/node/blob/HEAD/lib/buffer.js#L449',
    'Buffer.allocUnsafeSlow': 'https://github.com/nodejs/node/blob/HEAD/lib/buffer.js#L461',
...
    'agent.addRequest': 'https://github.com/nodejs/node/blob/HEAD/lib/_http_agent.js#L356',
+   'agent.createConnection': 'https://github.com/nodejs/node/blob/HEAD/lib/https.js#L326',
-   'agent.createConnection': 'https://github.com/nodejs/node/blob/HEAD/lib/_http_agent.js#L295',
    'agent.createSocket': 'https://github.com/nodejs/node/blob/HEAD/lib/_http_agent.js#L427',
    'agent.destroy': 'https://github.com/nodejs/node/blob/HEAD/lib/_http_agent.js#L660',
+   'agent.getName': 'https://github.com/nodejs/node/blob/HEAD/lib/https.js#L484',
-   'agent.getName': 'https://github.com/nodejs/node/blob/HEAD/lib/_http_agent.js#L325',
    'agent.keepSocketAlive': 'https://github.com/nodejs/node/blob/HEAD/lib/_http_agent.js#L616',
    'agent.removeSocket': 'https://github.com/nodejs/node/blob/HEAD/lib/_http_agent.js#L555',
    'agent.reuseSocket': 'https://github.com/nodejs/node/blob/HEAD/lib/_http_agent.js#L652',
    'assert.assert': 'https://github.com/nodejs/node/blob/HEAD/lib/assert.js#L185',
    'asyncResource.asyncId': 'https://github.com/nodejs/node/blob/HEAD/lib/async_hooks.js#L243',
...
    'server.address': 'https://github.com/nodejs/node/blob/HEAD/lib/net.js#L2677',
+   'server.close': 'https://github.com/nodejs/node/blob/HEAD/lib/net.js#L2810',
+   'server.closeAllConnections': 'https://github.com/nodejs/node/blob/HEAD/lib/https.js#L120',
+   'server.closeIdleConnections': 'https://github.com/nodejs/node/blob/HEAD/lib/https.js#L122',
-   'server.close': 'https://github.com/nodejs/node/blob/HEAD/lib/_http_server.js#L671',
-   'server.closeAllConnections': 'https://github.com/nodejs/node/blob/HEAD/lib/_http_server.js#L681',
-   'server.closeIdleConnections': 'https://github.com/nodejs/node/blob/HEAD/lib/_http_server.js#L693',
    'server.getConnections': 'https://github.com/nodejs/node/blob/HEAD/lib/net.js#L2772',
    'server.listen': 'https://github.com/nodejs/node/blob/HEAD/lib/net.js#L2474',
    'server.ref': 'https://github.com/nodejs/node/blob/HEAD/lib/net.js#L2915',
+   'server.setTimeout': 'https://github.com/nodejs/node/blob/HEAD/lib/https.js#L124',
-   'server.setTimeout': 'https://github.com/nodejs/node/blob/HEAD/lib/_http_server.js#L709',
    'server.unref': 'https://github.com/nodejs/node/blob/HEAD/lib/net.js#L2924',
+   'server[SymbolAsyncDispose]': 'https://github.com/nodejs/node/blob/HEAD/lib/net.js#L2850',
-   'server[SymbolAsyncDispose]': 'https://github.com/nodejs/node/blob/HEAD/lib/_http_server.js#L677',
    'server[kDeserialize]': 'https://github.com/nodejs/node/blob/HEAD/lib/net.js#L2395',
    'server[kTransferList]': 'https://github.com/nodejs/node/blob/HEAD/lib/net.js#L2368',
    'server[kTransfer]': 'https://github.com/nodejs/node/blob/HEAD/lib/net.js#L2373',
+   'server[undefined]': 'https://github.com/nodejs/node/blob/HEAD/lib/net.js#L2879',
-   'server[undefined]': 'https://github.com/nodejs/node/blob/HEAD/lib/_http_server.js#L716',
    'serverresponse._finish': 'https://github.com/nodejs/node/blob/HEAD/lib/_http_server.js#L246',
    'serverresponse._implicitHeader': 'https://github.com/nodejs/node/blob/HEAD/lib/_http_server.js#L403',
    'serverresponse.assignSocket': 'https://github.com/nodejs/node/blob/HEAD/lib/_http_server.js#L296',
    'serverresponse.detachSocket': 'https://github.com/nodejs/node/blob/HEAD/lib/_http_server.js#L307',
    'serverresponse.statusCode': 'https://github.com/nodejs/node/blob/HEAD/lib/_http_server.js#L269',

Performance estimate (single CI run)

  • Generation time: 49.0% slower (1.00 s → 1.49 s)
  • Peak memory: 1.3% lower (359.27 MB → 354.58 MB)

legacy-html Generator

Performance estimate (single CI run)

  • Generation time: 47.9% slower (13.63 s → 20.16 s)
  • Peak memory: 4.0% lower (2.33 GB → 2.23 GB)

legacy-json Generator

Performance estimate (single CI run)

  • Generation time: 13.3% faster (9.05 s → 7.85 s)
  • Peak memory: 4.5% lower (1.77 GB → 1.69 GB)

llms-txt Generator

Performance estimate (single CI run)

  • Generation time: 1.6% slower (7.46 s → 7.58 s)
  • Peak memory: 2.4% higher (1.72 GB → 1.76 GB)

orama-db Generator

Output size: 1 file changed · net +1.00 B

File size details
File Main PR Change
orama-db.json 8.88 MB 8.88 MB +1.00 B (+0.0%)

Performance estimate (single CI run)

  • Generation time: 8.1% slower (8.27 s → 8.94 s)
  • Peak memory: 4.8% lower (1.73 GB → 1.65 GB)

web Generator

Output size: 252 files changed · net -41.01 MB

File size details
File Main PR Change
assets/all-CkmGGpVi.js 22.10 MB -22.10 MB (-100.0%)
assets/fs-DfS23NDk.js 1.55 MB -1.55 MB (-100.0%)
all.html 21.33 MB 22.81 MB +1.48 MB (+6.9%)
assets/crypto-C9lzROGI.js 1.37 MB -1.37 MB (-100.0%)
assets/buffer-4FKkuFq9.js 1.14 MB -1.14 MB (-100.0%)
assets/test-ChYBlXf9.js 1.01 MB -1.01 MB (-100.0%)
assets/stream-DDL1vcZa.js 937.49 KB -937.49 KB (-100.0%)
assets/http2-Dhv6hgZN.js 876.92 KB -876.92 KB (-100.0%)
assets/util-Cy_5285j.js 796.67 KB -796.67 KB (-100.0%)
assets/http-BvPtpl24.js 761.35 KB -761.35 KB (-100.0%)
assets/process-DPgSpyN8.js 733.94 KB -733.94 KB (-100.0%)
assets/n-api-CZZU2aaT.js 711.18 KB -711.18 KB (-100.0%)
assets/events-roCElnB7.js 570.23 KB -570.23 KB (-100.0%)
assets/quic-0Pud6ZeJ.js 563.48 KB -563.48 KB (-100.0%)
assets/stream_iter-Cm9I8OAy.js 510.52 KB -510.52 KB (-100.0%)
assets/child_process-CePzN7gy.js 490.99 KB -490.99 KB (-100.0%)
assets/assert-B6yslL6p.js 473.91 KB -473.91 KB (-100.0%)
assets/vm-Cc8jANgn.js 466.32 KB -466.32 KB (-100.0%)
assets/webcrypto-DxF7is9Q.js 430.98 KB -430.98 KB (-100.0%)
assets/worker_threads-gorNEka4.js 421.19 KB -421.19 KB (-100.0%)
assets/zlib-DJeNxZbf.js 405.35 KB -405.35 KB (-100.0%)
assets/perf_hooks-5oiXiWsD.js 384.48 KB -384.48 KB (-100.0%)
assets/errors-DBdNutsC.js 373.22 KB -373.22 KB (-100.0%)
assets/v8-D_iIeX1_.js 366.72 KB -366.72 KB (-100.0%)
assets/module-BkQKWJv5.js 362.96 KB -362.96 KB (-100.0%)
assets/tls-Cy6RVmEY.js 356.37 KB -356.37 KB (-100.0%)
assets/net-Dqy7hnOc.js 353.33 KB -353.33 KB (-100.0%)
assets/url-keqhEX3f.js 351.14 KB -351.14 KB (-100.0%)
assets/diagnostics_channel-CPysSURm.js 337.49 KB -337.49 KB (-100.0%)
assets/webstreams-Quy5DcuO.js 328.11 KB -328.11 KB (-100.0%)
assets/cli-CYTtemz7.js 316.54 KB -316.54 KB (-100.0%)
assets/addons-CXfadmXN.js 305.29 KB -305.29 KB (-100.0%)
assets/sqlite-BlkHlf8s.js 290.43 KB -290.43 KB (-100.0%)
assets/dns-DDEgCIV-.js 290.16 KB -290.16 KB (-100.0%)
assets/deprecations-oj-Oo2dc.js 279.12 KB -279.12 KB (-100.0%)
assets/readline-DfKB5ufz.js 232.99 KB -232.99 KB (-100.0%)
assets/async_context-35svDZ9e.js 218.68 KB -218.68 KB (-100.0%)
assets/repl-B1nmbuGO.js 207.09 KB -207.09 KB (-100.0%)
assets/cluster-C-AQ-i1a.js 198.37 KB -198.37 KB (-100.0%)
assets/async_hooks-BcVQ1Itj.js 195.28 KB -195.28 KB (-100.0%)
assets/dgram-BNOqB4Sp.js 193.02 KB -193.02 KB (-100.0%)
assets/ui-CtCaVM3n.js 189.39 KB -189.39 KB (-100.0%)
assets/report-D4_98n0W.js 184.73 KB -184.73 KB (-100.0%)
assets/https-DarAcIR8.js 161.04 KB -161.04 KB (-100.0%)
assets/modules-Bpt2wBxq.js 151.88 KB -151.88 KB (-100.0%)
assets/packages-DaF0E9en.js 147.40 KB -147.40 KB (-100.0%)
assets/style-DctJb8_L.css 141.44 KB +141.44 KB
assets/esm-E8hLopAp.js 135.58 KB -135.58 KB (-100.0%)
assets/globals-BDFqOgIW.js 130.04 KB -130.04 KB (-100.0%)
assets/ui-MrWT018D.css 126.02 KB -126.02 KB (-100.0%)
assets/inspector-C3plsGjy.js 124.68 KB -124.68 KB (-100.0%)
assets/os-Dl7HELks.js 110.85 KB -110.85 KB (-100.0%)
assets/ffi-DQHLJJwL.js 109.12 KB -109.12 KB (-100.0%)
assets/console-CfdKuCbz.js 106.25 KB -106.25 KB (-100.0%)
assets/timers-DY3HbxfS.js 101.31 KB -101.31 KB (-100.0%)
fs.html 1.68 MB 1.78 MB +100.10 KB (+5.8%)
assets/dtls-Ddnfg7dr.js 99.62 KB -99.62 KB (-100.0%)
assets/path-zDPqyND8.js 99.24 KB -99.24 KB (-100.0%)
assets/debugger-CH-aY0h9.js 94.31 KB -94.31 KB (-100.0%)
buffer.html 955.67 KB 1.02 MB +88.15 KB (+9.2%)
assets/domain-Dvn3iTpx.js 87.42 KB -87.42 KB (-100.0%)
assets/SearchBox-Deruhn7Z.js 84.40 KB +84.40 KB
assets/single-executable-applications-kjBxOOnV.js 82.54 KB -82.54 KB (-100.0%)
util.html 735.02 KB 810.55 KB +75.53 KB (+10.3%)
n-api.html 810.80 KB 884.80 KB +74.00 KB (+9.1%)
assets/tracing-DLs9CRX2.js 73.90 KB -73.90 KB (-100.0%)
crypto.html 1.21 MB 1.29 MB +72.51 KB (+5.8%)
process.html 719.34 KB 787.29 KB +67.96 KB (+9.4%)
test.html 898.81 KB 957.11 KB +58.30 KB (+6.5%)
stream.html 926.62 KB 983.43 KB +56.81 KB (+6.1%)
http2.html 838.15 KB 891.03 KB +52.89 KB (+6.3%)
http.html 815.29 KB 866.37 KB +51.08 KB (+6.3%)
assets/tty-D9uVfM02.js 48.25 KB -48.25 KB (-100.0%)
assets/vfs-RJSoxvBH.js 46.04 KB -46.04 KB (-100.0%)
assets/wasi-uGoLb5oK.js 40.83 KB -40.83 KB (-100.0%)
events.html 478.82 KB 516.65 KB +37.83 KB (+7.9%)
assets/permissions-taYhW9AG.js 34.82 KB -34.82 KB (-100.0%)
stream_iter.html 409.45 KB 444.05 KB +34.61 KB (+8.5%)
url.html 363.30 KB 397.39 KB +34.08 KB (+9.4%)
assets/embedding-oU82-G0W.js 33.42 KB -33.42 KB (-100.0%)
assets/intl-DEwtIU0W.js 32.44 KB -32.44 KB (-100.0%)
v8.html 358.26 KB 390.35 KB +32.09 KB (+9.0%)
assets/dist-CsiwnA8F.js 30.80 KB +30.80 KB
assets/querystring-Cy4xsTPk.js 29.92 KB -29.92 KB (-100.0%)
net.html 460.66 KB 489.37 KB +28.71 KB (+6.2%)
assets/string_decoder-Dp_Y92gG.js 28.32 KB -28.32 KB (-100.0%)
worker_threads.html 393.55 KB 421.46 KB +27.91 KB (+7.1%)
zlib.html 380.13 KB 406.91 KB +26.79 KB (+7.0%)
diagnostics_channel.html 329.06 KB 354.36 KB +25.30 KB (+7.7%)
webstreams.html 397.80 KB 422.94 KB +25.14 KB (+6.3%)
assert.html 347.32 KB 372.40 KB +25.09 KB (+7.2%)
assets/SideBar-DvWvFeFv.js 24.72 KB +24.72 KB
assets/punycode-B0RI1WFH.js 24.66 KB -24.66 KB (-100.0%)
tls.html 414.46 KB 438.87 KB +24.41 KB (+5.9%)
dns.html 318.66 KB 342.18 KB +23.52 KB (+7.4%)
vm.html 396.20 KB 419.49 KB +23.29 KB (+5.9%)
child_process.html 406.60 KB 429.77 KB +23.16 KB (+5.7%)
module.html 351.15 KB 373.19 KB +22.04 KB (+6.3%)
assets/typescript-cyJZ9ovA.js 21.60 KB -21.60 KB (-100.0%)
perf_hooks.html 407.63 KB 429.01 KB +21.38 KB (+5.2%)
readline.html 263.32 KB 284.44 KB +21.12 KB (+8.0%)
cli.html 516.77 KB 537.63 KB +20.86 KB (+4.0%)
deprecations.html 496.84 KB 516.30 KB +19.46 KB (+3.9%)
assets/ThemeToggle-DeoPfFfF.js 19.23 KB +19.23 KB
sqlite.html 315.32 KB 334.25 KB +18.93 KB (+6.0%)
assets/Layout-DTUbbUSn.js 15.87 KB +15.87 KB
assets/Combination-BoM3i4Iv.js 15.45 KB +15.45 KB
dgram.html 218.11 KB 233.48 KB +15.37 KB (+7.0%)
async_hooks.html 161.85 KB 176.54 KB +14.69 KB (+9.1%)
repl.html 183.05 KB 197.66 KB +14.61 KB (+8.0%)
assets/CodeBox-CRqxJ3XS.css 14.30 KB -14.30 KB (-100.0%)
async_context.html 190.67 KB 204.83 KB +14.16 KB (+7.4%)
assets/compat.module-DVjVgC-V.js 13.97 KB +13.97 KB
quic.html 834.15 KB 848.03 KB +13.88 KB (+1.7%)
assets/index-BKEGgRXL.js 13.83 KB -13.83 KB (-100.0%)
addons.html 273.62 KB 287.30 KB +13.67 KB (+5.0%)
inspector.html 178.19 KB 191.81 KB +13.62 KB (+7.6%)
path.html 143.83 KB 157.28 KB +13.46 KB (+9.4%)
packages.html 177.99 KB 191.36 KB +13.37 KB (+7.5%)
console.html 148.71 KB 161.64 KB +12.93 KB (+8.7%)
modules.html 184.57 KB 196.57 KB +12.00 KB (+6.5%)
assets/environment_variables-x0rRCRPK.js 11.73 KB -11.73 KB (-100.0%)
cluster.html 203.09 KB 214.64 KB +11.55 KB (+5.7%)
single-executable-applications.html 107.70 KB 119.24 KB +11.54 KB (+10.7%)
assets/synopsis-dTkOnk-T.js 11.42 KB -11.42 KB (-100.0%)
assets/preact.module-CMTAcUY_.js 11.17 KB +11.17 KB
ffi.html 143.33 KB 154.41 KB +11.08 KB (+7.7%)
timers.html 138.92 KB 149.71 KB +10.80 KB (+7.8%)
globals.html 235.48 KB 246.18 KB +10.69 KB (+4.5%)
webcrypto.html 566.72 KB 577.18 KB +10.46 KB (+1.8%)
https.html 153.70 KB 163.75 KB +10.05 KB (+6.5%)
esm.html 157.86 KB 167.79 KB +9.93 KB (+6.3%)
errors.html 493.18 KB 503.01 KB +9.83 KB (+2.0%)
debugger.html 99.59 KB 107.51 KB +7.93 KB (+8.0%)
os.html 150.64 KB 158.27 KB +7.63 KB (+5.1%)
assets/Tooltip-DTGZuucL.js 7.51 KB +7.51 KB
assets/runtime-MDMGeB1j.js 7.49 KB +7.49 KB
assets/dist-CKcyjLzB.js 7.00 KB +7.00 KB
tracing.html 84.04 KB 89.85 KB +5.81 KB (+6.9%)
domain.html 105.33 KB 110.96 KB +5.63 KB (+5.3%)
tty.html 98.09 KB 103.70 KB +5.61 KB (+5.7%)
dtls.html 160.70 KB 166.31 KB +5.60 KB (+3.5%)
assets/withIsland-BwX2MZJC.js 5.05 KB +5.05 KB
report.html 174.71 KB 179.60 KB +4.89 KB (+2.8%)
assets/documentation-Dfeipv02.js 4.84 KB -4.84 KB (-100.0%)
permissions.html 61.64 KB 66.27 KB +4.63 KB (+7.5%)
punycode.html 62.97 KB 67.51 KB +4.54 KB (+7.2%)
vfs.html 83.73 KB 87.83 KB +4.11 KB (+4.9%)
querystring.html 65.43 KB 69.31 KB +3.89 KB (+5.9%)
wasi.html 70.49 KB 74.30 KB +3.81 KB (+5.4%)
assets/CodeTabs-Dq-MtoMp.js 3.64 KB +3.64 KB
assets/CodeBox-CUSEANjl.js 3.34 KB +3.34 KB
assets/dist-Tja6NHmF.js 3.30 KB +3.30 KB
string_decoder.html 55.42 KB 58.51 KB +3.09 KB (+5.6%)
intl.html 56.93 KB 59.97 KB +3.04 KB (+5.3%)
typescript.html 52.26 KB 55.29 KB +3.03 KB (+5.8%)
assets/CodeBox-OhcnL93l.js 3.02 KB -3.02 KB (-100.0%)
environment_variables.html 42.83 KB 45.57 KB +2.73 KB (+6.4%)
synopsis.html 41.46 KB 43.85 KB +2.39 KB (+5.8%)
assets/404-DCUiwqtM.js 2.35 KB +2.35 KB
assets/addons-DCUiwqtM.js 2.35 KB +2.35 KB
assets/all-DCUiwqtM.js 2.35 KB +2.35 KB
assets/assert-DCUiwqtM.js 2.35 KB +2.35 KB
assets/async_context-DCUiwqtM.js 2.35 KB +2.35 KB
assets/async_hooks-DCUiwqtM.js 2.35 KB +2.35 KB
assets/buffer-DCUiwqtM.js 2.35 KB +2.35 KB
assets/child_process-DCUiwqtM.js 2.35 KB +2.35 KB
assets/cli-DCUiwqtM.js 2.35 KB +2.35 KB
assets/cluster-DCUiwqtM.js 2.35 KB +2.35 KB
assets/console-DCUiwqtM.js 2.35 KB +2.35 KB
assets/crypto-DCUiwqtM.js 2.35 KB +2.35 KB
assets/debugger-DCUiwqtM.js 2.35 KB +2.35 KB
assets/deprecations-DCUiwqtM.js 2.35 KB +2.35 KB
assets/dgram-DCUiwqtM.js 2.35 KB +2.35 KB
assets/diagnostics_channel-DCUiwqtM.js 2.35 KB +2.35 KB
assets/dns-DCUiwqtM.js 2.35 KB +2.35 KB
assets/documentation-DCUiwqtM.js 2.35 KB +2.35 KB
assets/domain-DCUiwqtM.js 2.35 KB +2.35 KB
assets/dtls-DCUiwqtM.js 2.35 KB +2.35 KB
assets/embedding-DCUiwqtM.js 2.35 KB +2.35 KB
assets/environment_variables-DCUiwqtM.js 2.35 KB +2.35 KB
assets/errors-DCUiwqtM.js 2.35 KB +2.35 KB
assets/esm-DCUiwqtM.js 2.35 KB +2.35 KB
assets/events-DCUiwqtM.js 2.35 KB +2.35 KB
assets/ffi-DCUiwqtM.js 2.35 KB +2.35 KB
assets/fs-DCUiwqtM.js 2.35 KB +2.35 KB
assets/globals-DCUiwqtM.js 2.35 KB +2.35 KB
assets/http-DCUiwqtM.js 2.35 KB +2.35 KB
assets/http2-DCUiwqtM.js 2.35 KB +2.35 KB
assets/https-DCUiwqtM.js 2.35 KB +2.35 KB
assets/index-DCUiwqtM.js 2.35 KB +2.35 KB
assets/inspector-DCUiwqtM.js 2.35 KB +2.35 KB
assets/intl-DCUiwqtM.js 2.35 KB +2.35 KB
assets/module-DCUiwqtM.js 2.35 KB +2.35 KB
assets/modules-DCUiwqtM.js 2.35 KB +2.35 KB
assets/n-api-DCUiwqtM.js 2.35 KB +2.35 KB
assets/net-DCUiwqtM.js 2.35 KB +2.35 KB
assets/os-DCUiwqtM.js 2.35 KB +2.35 KB
assets/packages-DCUiwqtM.js 2.35 KB +2.35 KB
assets/path-DCUiwqtM.js 2.35 KB +2.35 KB
assets/perf_hooks-DCUiwqtM.js 2.35 KB +2.35 KB
assets/permissions-DCUiwqtM.js 2.35 KB +2.35 KB
assets/process-DCUiwqtM.js 2.35 KB +2.35 KB
assets/punycode-DCUiwqtM.js 2.35 KB +2.35 KB
assets/querystring-DCUiwqtM.js 2.35 KB +2.35 KB
assets/quic-DCUiwqtM.js 2.35 KB +2.35 KB
assets/readline-DCUiwqtM.js 2.35 KB +2.35 KB
assets/repl-DCUiwqtM.js 2.35 KB +2.35 KB
assets/report-DCUiwqtM.js 2.35 KB +2.35 KB
assets/single-executable-applications-DCUiwqtM.js 2.35 KB +2.35 KB
assets/sqlite-DCUiwqtM.js 2.35 KB +2.35 KB
assets/stream-DCUiwqtM.js 2.35 KB +2.35 KB
assets/stream_iter-DCUiwqtM.js 2.35 KB +2.35 KB
assets/string_decoder-DCUiwqtM.js 2.35 KB +2.35 KB
assets/synopsis-DCUiwqtM.js 2.35 KB +2.35 KB
assets/test-DCUiwqtM.js 2.35 KB +2.35 KB
assets/timers-DCUiwqtM.js 2.35 KB +2.35 KB
assets/tls-DCUiwqtM.js 2.35 KB +2.35 KB
assets/tracing-DCUiwqtM.js 2.35 KB +2.35 KB
assets/tty-DCUiwqtM.js 2.35 KB +2.35 KB
assets/typescript-DCUiwqtM.js 2.35 KB +2.35 KB
assets/url-DCUiwqtM.js 2.35 KB +2.35 KB
assets/util-DCUiwqtM.js 2.35 KB +2.35 KB
assets/v8-DCUiwqtM.js 2.35 KB +2.35 KB
assets/vfs-DCUiwqtM.js 2.35 KB +2.35 KB
assets/vm-DCUiwqtM.js 2.35 KB +2.35 KB
assets/wasi-DCUiwqtM.js 2.35 KB +2.35 KB
assets/webcrypto-DCUiwqtM.js 2.35 KB +2.35 KB
assets/webstreams-DCUiwqtM.js 2.35 KB +2.35 KB
assets/worker_threads-DCUiwqtM.js 2.35 KB +2.35 KB
assets/zlib-DCUiwqtM.js 2.35 KB +2.35 KB
assets/FunctionSignature-DjT0Pd1f.js 2.20 KB +2.20 KB
assets/Banner-BXIOAImC.js 2.09 KB +2.09 KB
assets/ChangeHistory-ClSwkpbE.js 1.72 KB +1.72 KB
assets/dist-BQ5Mvi_Q.js 1.26 KB +1.26 KB
assets/preload-helper-HclGiUj8.js 1.18 KB +1.18 KB
embedding.html 58.21 KB 59.23 KB +1.01 KB (+1.7%)
assets/DataTag-q_ANf0Sf.js 841.00 B +841.00 B
assets/classnames-CRodZAfA.js 752.00 B +752.00 B
assets/404-DVLui6_T.js 627.00 B -627.00 B (-100.0%)
assets/Badge-BqGxnEmL.js 604.00 B +604.00 B
assets/ArrowUpRightIcon-B2MCBCER.js 593.00 B +593.00 B
assets/AlertBox-DGj8i9_s.js 588.00 B +588.00 B
documentation.html 36.70 KB 37.24 KB +557.00 B (+1.5%)
assets/CodeBracketIcon-CphpicIm.js 526.00 B +526.00 B
index.html 39.28 KB 39.77 KB +498.00 B (+1.2%)
404.html 28.70 KB 29.18 KB +492.00 B (+1.7%)
assets/ChevronDownIcon-D4hyC6Y5.js 482.00 B +482.00 B
assets/jsx-runtime-BSYAoxLA.js 466.00 B +466.00 B
assets/dist-Cd0_YP7H.js 421.00 B +421.00 B
assets/relativeOrAbsolute-CujjV8Vt.js 304.00 B +304.00 B
assets/Blockquote-BLfDjiCB.js 168.00 B +168.00 B

Performance estimate (single CI run)

  • Generation time: 34.2% faster (105.18 s → 69.16 s)
  • Peak memory: 16.6% lower (5.11 GB → 4.26 GB)

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

`registerIslands({${componentImports
.map(
({ name, source }) =>
`${JSON.stringify(name)}: () => import(${JSON.stringify(source)})`
Copilot AI review requested due to automatic review settings July 28, 2026 18:23
@avivkeller
avivkeller force-pushed the partial-hydration-stacked-2 branch from 9cefea8 to 8d3b7f5 Compare July 28, 2026 18:23

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

Copilot AI review requested due to automatic review settings July 29, 2026 18:36

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Reduce memory footprint Don't pass pre-rendered components to the client

3 participants