{"_id":"@remix-run/render-middleware","_rev":"13-2c804cfb289f90132795799102a921ca","name":"@remix-run/render-middleware","dist-tags":{"latest":"1.0.0"},"versions":{"0.0.0":{"name":"@remix-run/render-middleware","version":"0.0.0","license":"MIT","_id":"@remix-run/render-middleware@0.0.0","maintainers":[{"name":"mjackson","email":"mjijackson+npm@gmail.com"}],"homepage":"https://github.com/remix-run/remix#readme","bugs":{"url":"https://github.com/remix-run/remix/issues"},"dist":{"shasum":"0e6427ecfcde4a789b6361027b8e4a0825cd63cc","tarball":"https://registry.npmjs.org/@remix-run/render-middleware/-/render-middleware-0.0.0.tgz","fileCount":2,"integrity":"sha512-pRNJQkdwBIU8gw1fZUwyR+ggLyiN250DZPMAHNzVb3EoP/bvGCIqjzqCJUHL7rOAxTbDV5tPiuSeJk6efMCiDA==","signatures":[{"sig":"MEYCIQC0CqejJkiUUXxMcKSvn2l7tbK6YORpdnct5Ps5Sg/7UwIhAOFNsIwL/A8BUCB5BVXH5n439KNHi8OA6m9ssLnPN2aJ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":481},"_npmUser":{"name":"mjackson","email":"mjijackson+npm@gmail.com"},"repository":{"url":"git+https://github.com/remix-run/remix.git","type":"git","directory":"packages/render-middleware"},"_npmVersion":"11.12.1","description":"Placeholder package for Remix CI/OIDC setup","directories":{},"_nodeVersion":"24.15.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/render-middleware_0.0.0_1778285013813_0.8441584683578793","host":"s3://npm-registry-packages-npm-production"}},"0.1.0":{"name":"@remix-run/render-middleware","version":"0.1.0","keywords":["fetch","router","middleware","render","renderer","response"],"author":{"name":"Michael Jackson","email":"mjijackson@gmail.com"},"license":"MIT","_id":"@remix-run/render-middleware@0.1.0","maintainers":[{"name":"mjackson","email":"mjijackson+npm@gmail.com"}],"homepage":"https://github.com/remix-run/remix/tree/main/packages/render-middleware#readme","bugs":{"url":"https://github.com/remix-run/remix/issues"},"dist":{"shasum":"2720f9925fe337488a9ea71e067b47cf76f0f2f5","tarball":"https://registry.npmjs.org/@remix-run/render-middleware/-/render-middleware-0.1.0.tgz","fileCount":11,"integrity":"sha512-bvn20NZU50ZMIiV85AL+979jnDEm5fwaO0q/EYuKE892nCCrjLmXpf0BWy9Fgy8Yjgw1UMJqeEy0zwiCYt5htw==","signatures":[{"sig":"MEUCIQDNb4eP7GLj/j4AeHPPB3EQaZ3wcUMsNkb0Iul/9L+/EQIgTj9G3nk8kaI1s3yWwyWj78Wie8pbBpntjYgOsiB9c1k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@remix-run%2frender-middleware@0.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9993},"type":"module","_from":"file:remix-run-render-middleware-0.1.0.tgz","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"scripts":{"test":"remix-test","build":"tsgo -p tsconfig.build.json","clean":"git clean -fdX","test:bun":"bun x --bun remix-test","typecheck":"tsgo --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:40a6500b-6b53-43bf-8e14-03cd3dd56073"}},"_resolved":"/tmp/43079d46f0ffefa3da63a3be1584bf46/remix-run-render-middleware-0.1.0.tgz","_integrity":"sha512-bvn20NZU50ZMIiV85AL+979jnDEm5fwaO0q/EYuKE892nCCrjLmXpf0BWy9Fgy8Yjgw1UMJqeEy0zwiCYt5htw==","repository":{"url":"git+https://github.com/remix-run/remix.git","type":"git","directory":"packages/render-middleware"},"_npmVersion":"11.12.1","description":"Middleware for adding request-scoped renderers to fetch-router context","directories":{},"_nodeVersion":"24.15.0","dependencies":{"@remix-run/fetch-router":"^0.19.0"},"_hasShrinkwrap":false,"devDependencies":{"@types/node":"^24.6.0","@remix-run/test":"0.4.0","@remix-run/assert":"0.2.0","@remix-run/fetch-router":"0.19.0","@typescript/native-preview":"7.0.0-dev.20251125.1"},"_npmOperationalInternal":{"tmp":"tmp/render-middleware_0.1.0_1779247319013_0.5623225463970698","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@remix-run/render-middleware","version":"0.1.1","keywords":["fetch","router","middleware","render","renderer","response"],"author":{"name":"Michael Jackson","email":"mjijackson@gmail.com"},"license":"MIT","_id":"@remix-run/render-middleware@0.1.1","maintainers":[{"name":"mjackson","email":"mjijackson+npm@gmail.com"}],"homepage":"https://github.com/remix-run/remix/tree/main/packages/render-middleware#readme","bugs":{"url":"https://github.com/remix-run/remix/issues"},"dist":{"shasum":"ebd9d7ca8ee106723b85e974495aec05eed4165a","tarball":"https://registry.npmjs.org/@remix-run/render-middleware/-/render-middleware-0.1.1.tgz","fileCount":11,"integrity":"sha512-XjJ+g+0DnmNgova7yy2JKh4NUG90VbWle2eeWFU9d96dg45SOlVgaj9WwX6w8zBR2hdYIm+zvne1W+v/p24shQ==","signatures":[{"sig":"MEQCICYIj9qus8NOS70HHn9Vz5c4UMvHAUo52ApRI4aS3mtBAiB5DMDsHsYNwFjs0H29eJSFgy0ibowmJM/yGAh3htxiiw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@remix-run%2frender-middleware@0.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9993},"type":"module","_from":"file:remix-run-render-middleware-0.1.1.tgz","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"scripts":{"test":"remix-test","build":"tsgo -p tsconfig.build.json","clean":"git clean -fdX","test:bun":"bun x --bun remix-test","typecheck":"tsgo --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:40a6500b-6b53-43bf-8e14-03cd3dd56073"}},"_resolved":"/tmp/86c3f35a7b2951145f4eb47e487e79ab/remix-run-render-middleware-0.1.1.tgz","_integrity":"sha512-XjJ+g+0DnmNgova7yy2JKh4NUG90VbWle2eeWFU9d96dg45SOlVgaj9WwX6w8zBR2hdYIm+zvne1W+v/p24shQ==","repository":{"url":"git+https://github.com/remix-run/remix.git","type":"git","directory":"packages/render-middleware"},"_npmVersion":"11.12.1","description":"Middleware for adding request-scoped renderers to fetch-router context","directories":{},"_nodeVersion":"24.15.0","dependencies":{"@remix-run/fetch-router":"^0.19.1"},"_hasShrinkwrap":false,"devDependencies":{"@types/node":"^24.6.0","@remix-run/test":"0.4.1","@remix-run/assert":"0.2.1","@remix-run/fetch-router":"0.19.1","@typescript/native-preview":"7.0.0-dev.20251125.1"},"_npmOperationalInternal":{"tmp":"tmp/render-middleware_0.1.1_1779308292409_0.9880851805814279","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@remix-run/render-middleware","version":"0.1.2","keywords":["fetch","router","middleware","render","renderer","response"],"author":{"name":"Michael Jackson","email":"mjijackson@gmail.com"},"license":"MIT","_id":"@remix-run/render-middleware@0.1.2","maintainers":[{"name":"mjackson","email":"mjijackson+npm@gmail.com"}],"homepage":"https://github.com/remix-run/remix/tree/main/packages/render-middleware#readme","bugs":{"url":"https://github.com/remix-run/remix/issues"},"dist":{"shasum":"12f8ad5f4dd9fc37857f32a20298cda07021678b","tarball":"https://registry.npmjs.org/@remix-run/render-middleware/-/render-middleware-0.1.2.tgz","fileCount":11,"integrity":"sha512-PCTBROGg/Gwt7b08PgSPOXaK6SJ//tpX8V4CUuuIkbT7ec8WjOzx91qscx4xdvQKascwBnx+jk9qKcsIgyNjYQ==","signatures":[{"sig":"MEUCIQCmvUeq0DZY80330gvuNjhewRgG1L1XWvNrGnsMOGS/aQIgdO0vw3xf/llOU9jlWSly9mHDe6/TWz+IfbyHIpYnbSg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@remix-run%2frender-middleware@0.1.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9993},"type":"module","_from":"file:remix-run-render-middleware-0.1.2.tgz","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"scripts":{"test":"remix-test","build":"tsgo -p tsconfig.build.json","clean":"git clean -fdX","test:bun":"bun x --bun remix-test","typecheck":"tsgo --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:40a6500b-6b53-43bf-8e14-03cd3dd56073"}},"_resolved":"/tmp/8899a4280570d83113db149fdbc50807/remix-run-render-middleware-0.1.2.tgz","_integrity":"sha512-PCTBROGg/Gwt7b08PgSPOXaK6SJ//tpX8V4CUuuIkbT7ec8WjOzx91qscx4xdvQKascwBnx+jk9qKcsIgyNjYQ==","repository":{"url":"git+https://github.com/remix-run/remix.git","type":"git","directory":"packages/render-middleware"},"_npmVersion":"11.13.0","description":"Middleware for adding request-scoped renderers to fetch-router context","directories":{},"_nodeVersion":"24.16.0","dependencies":{"@remix-run/fetch-router":"^0.19.2"},"_hasShrinkwrap":false,"devDependencies":{"@types/node":"^24.6.0","@remix-run/test":"0.4.2","@remix-run/assert":"0.2.1","@remix-run/fetch-router":"0.19.2","@typescript/native-preview":"7.0.0-dev.20251125.1"},"_npmOperationalInternal":{"tmp":"tmp/render-middleware_0.1.2_1780078642873_0.07058771488636606","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"@remix-run/render-middleware","version":"0.1.3","keywords":["fetch","router","middleware","render","renderer","response"],"author":{"name":"Michael Jackson","email":"mjijackson@gmail.com"},"license":"MIT","_id":"@remix-run/render-middleware@0.1.3","maintainers":[{"name":"mjackson","email":"mjijackson+npm@gmail.com"}],"homepage":"https://github.com/remix-run/remix/tree/main/packages/render-middleware#readme","bugs":{"url":"https://github.com/remix-run/remix/issues"},"dist":{"shasum":"5bfe5eacf28d54e3643c1b21801a71e0ab3427bd","tarball":"https://registry.npmjs.org/@remix-run/render-middleware/-/render-middleware-0.1.3.tgz","fileCount":11,"integrity":"sha512-wxrjRdYbiE7yT2VhCe1M7/ir4M44M6cxwnzCdxd8qVIg+i4lbFdizDR72ClDNoAQ2hPtlHDy7+2U+ufnNHUGRQ==","signatures":[{"sig":"MEUCIQDjWlEN/K1+UzO/3ebm7YOiNvV5dDCw/uIKyOO72oLCXAIgd1+1Qys2S/NkVeblAWGR+ycMhhqCMoUZeSxDp4w0k4s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@remix-run%2frender-middleware@0.1.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":10046},"type":"module","_from":"file:remix-run-render-middleware-0.1.3.tgz","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"scripts":{"test":"remix-test","build":"tsgo -p tsconfig.build.json","clean":"git clean -fdX","test:bun":"bun x --bun remix-test","typecheck":"tsgo --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:40a6500b-6b53-43bf-8e14-03cd3dd56073"}},"_resolved":"/tmp/ba3fe5b6adb87f80a426b4cbb93fdc35/remix-run-render-middleware-0.1.3.tgz","_integrity":"sha512-wxrjRdYbiE7yT2VhCe1M7/ir4M44M6cxwnzCdxd8qVIg+i4lbFdizDR72ClDNoAQ2hPtlHDy7+2U+ufnNHUGRQ==","repository":{"url":"git+https://github.com/remix-run/remix.git","type":"git","directory":"packages/render-middleware"},"_npmVersion":"11.13.0","description":"Middleware for adding request-scoped renderers to fetch-router context","directories":{},"_nodeVersion":"24.16.0","dependencies":{"@remix-run/fetch-router":"^0.20.0"},"_hasShrinkwrap":false,"devDependencies":{"@types/node":"^24.6.0","@remix-run/test":"0.5.0","@remix-run/assert":"0.3.0","@remix-run/fetch-router":"0.20.0","@typescript/native-preview":"7.0.0-dev.20251125.1"},"_npmOperationalInternal":{"tmp":"tmp/render-middleware_0.1.3_1780683944995_0.68580796863537","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"@remix-run/render-middleware","version":"0.1.4","keywords":["fetch","router","middleware","render","renderer","response"],"author":{"name":"Michael Jackson","email":"mjijackson@gmail.com"},"license":"MIT","_id":"@remix-run/render-middleware@0.1.4","maintainers":[{"name":"mjackson","email":"mjijackson+npm@gmail.com"}],"homepage":"https://github.com/remix-run/remix/tree/main/packages/render-middleware#readme","bugs":{"url":"https://github.com/remix-run/remix/issues"},"dist":{"shasum":"11441ecfcb8603ba207ba40ff2857a4d64967031","tarball":"https://registry.npmjs.org/@remix-run/render-middleware/-/render-middleware-0.1.4.tgz","fileCount":11,"integrity":"sha512-v+RL5T5hDEMNjQyrV/UwODu/x6BUUkpt5EHGixXc00j74KP1g07rtPJvFeeZM6/Yq42I0Ej/4OqsMBiLDjt3dA==","signatures":[{"sig":"MEQCIFyNa1z4dWCPNc3Eebk74kZaQOL6nrCVz3aQGaPMN8voAiA8ls7HD4vgkcdC7uqTJx/rRVm+qBycFRFO4AVwZYw16Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@remix-run%2frender-middleware@0.1.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":10046},"type":"module","_from":"file:remix-run-render-middleware-0.1.4.tgz","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"scripts":{"test":"remix-test","build":"tsgo -p tsconfig.build.json","clean":"git clean -fdX","test:bun":"bun x --bun remix-test","typecheck":"tsgo --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:40a6500b-6b53-43bf-8e14-03cd3dd56073"}},"_resolved":"/tmp/4c68450f4c40b54800348503bc3e2f44/remix-run-render-middleware-0.1.4.tgz","_integrity":"sha512-v+RL5T5hDEMNjQyrV/UwODu/x6BUUkpt5EHGixXc00j74KP1g07rtPJvFeeZM6/Yq42I0Ej/4OqsMBiLDjt3dA==","repository":{"url":"git+https://github.com/remix-run/remix.git","type":"git","directory":"packages/render-middleware"},"_npmVersion":"11.13.0","description":"Middleware for adding request-scoped renderers to fetch-router context","directories":{},"_nodeVersion":"24.17.0","dependencies":{"@remix-run/fetch-router":"^0.20.1"},"_hasShrinkwrap":false,"devDependencies":{"@types/node":"^24.6.0","@remix-run/test":"0.5.0","@remix-run/assert":"0.3.0","@remix-run/fetch-router":"0.20.1","@typescript/native-preview":"7.0.0-dev.20251125.1"},"_npmOperationalInternal":{"tmp":"tmp/render-middleware_0.1.4_1782932565027_0.8546555554238087","host":"s3://npm-registry-packages-npm-production"}},"0.1.5":{"name":"@remix-run/render-middleware","version":"0.1.5","keywords":["fetch","router","middleware","render","renderer","response"],"author":{"name":"Michael Jackson","email":"mjijackson@gmail.com"},"license":"MIT","_id":"@remix-run/render-middleware@0.1.5","maintainers":[{"name":"mjackson","email":"mjijackson+npm@gmail.com"}],"homepage":"https://github.com/remix-run/remix/tree/main/packages/render-middleware#readme","bugs":{"url":"https://github.com/remix-run/remix/issues"},"dist":{"shasum":"0f696eb4cfbc5c8b077d7801bdabe4079731ddd6","tarball":"https://registry.npmjs.org/@remix-run/render-middleware/-/render-middleware-0.1.5.tgz","fileCount":11,"integrity":"sha512-D3FO4P9Ixzk8XWlguEvyKRY1tFQ7mv8Fu5uDcaSBEOV0M+B4SweNgrpbZ/5xpmHzp8sEful6RLKUwoyJ+6JRmA==","signatures":[{"sig":"MEUCICPrw/jnDNybR9yUiAvmgSasMS5QU6S5YChqACU0kWX6AiEAmXBz8ok/sV+9FZm6md7Vz6qZ1CuGFKdXFNvag7l+Ixs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@remix-run%2frender-middleware@0.1.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":10033},"type":"module","_from":"file:remix-run-render-middleware-0.1.5.tgz","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"scripts":{"test":"remix test","build":"tsc -p tsconfig.build.json","clean":"git clean -fdX","test:bun":"bun x --bun remix test","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:40a6500b-6b53-43bf-8e14-03cd3dd56073"}},"_resolved":"/tmp/88ee9401e5ba6a689919cdb828f6d3bf/remix-run-render-middleware-0.1.5.tgz","_integrity":"sha512-D3FO4P9Ixzk8XWlguEvyKRY1tFQ7mv8Fu5uDcaSBEOV0M+B4SweNgrpbZ/5xpmHzp8sEful6RLKUwoyJ+6JRmA==","repository":{"url":"git+https://github.com/remix-run/remix.git","type":"git","directory":"packages/render-middleware"},"_npmVersion":"11.16.0","description":"Middleware for adding request-scoped renderers to fetch-router context","directories":{},"_nodeVersion":"24.18.0","dependencies":{"@remix-run/fetch-router":"^0.21.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^7.0.2","@types/node":"^24.6.0","@remix-run/test":"0.6.0","@remix-run/assert":"0.3.0","@remix-run/fetch-router":"0.21.0"},"_npmOperationalInternal":{"tmp":"tmp/render-middleware_0.1.5_1786666434683_0.8262156093727222","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@remix-run/render-middleware","version":"0.2.0","keywords":["fetch","router","middleware","render","renderer","response"],"author":{"name":"Michael Jackson","email":"mjijackson@gmail.com"},"license":"MIT","_id":"@remix-run/render-middleware@0.2.0","maintainers":[{"name":"mjackson","email":"mjijackson+npm@gmail.com"}],"homepage":"https://github.com/remix-run/remix/tree/main/packages/render-middleware#readme","bugs":{"url":"https://github.com/remix-run/remix/issues"},"dist":{"shasum":"bb3d8f0f03fc79b4cd1681b332542a4e3fab162d","tarball":"https://registry.npmjs.org/@remix-run/render-middleware/-/render-middleware-0.2.0.tgz","fileCount":15,"integrity":"sha512-y1Hz9QRKr62aV3SUZDFp+QEdulsmURwuFh7DgS8z+1R3qquxbZl+cV00rL3Ly9qn6jUyrEZRQdPhYI8uf84MgA==","signatures":[{"sig":"MEUCIQD9/syG+T8OlYD9OkfwVxSECJ97/TTL69uiFPf0oFpzhwIgcEvjJPzt8c4wYUFblCR34MNUrDFmM9A2TgwHA4ZrILs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@remix-run%2frender-middleware@0.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":27890},"type":"module","_from":"file:/tmp/remix-publish-render-middleware-3t7rv3/remix-run-render-middleware-0.2.0.tgz","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"scripts":{"test":"remix test","build":"tsc -p tsconfig.build.json","clean":"git clean -fdX","test:bun":"bun x --bun remix test","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:40a6500b-6b53-43bf-8e14-03cd3dd56073"}},"_resolved":"/tmp/remix-publish-render-middleware-3t7rv3/remix-run-render-middleware-0.2.0.tgz","_integrity":"sha512-y1Hz9QRKr62aV3SUZDFp+QEdulsmURwuFh7DgS8z+1R3qquxbZl+cV00rL3Ly9qn6jUyrEZRQdPhYI8uf84MgA==","repository":{"url":"git+https://github.com/remix-run/remix.git","type":"git","directory":"packages/render-middleware"},"_npmVersion":"11.17.0","description":"Conventional Remix UI and custom request-scoped render middleware","directories":{},"_nodeVersion":"24.19.0","dependencies":{"@remix-run/ui":"^0.8.0","@remix-run/assets":"^0.6.0","@remix-run/response":"^0.3.8","@remix-run/fetch-router":"^0.21.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^7.0.2","@types/node":"^24.6.0","@remix-run/test":"0.6.0","@remix-run/assert":"0.3.0","@remix-run/fetch-router":"0.21.0"},"_npmOperationalInternal":{"tmp":"tmp/render-middleware_0.2.0_1788202664641_0.8643683408249898","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@remix-run/render-middleware","version":"0.3.0","keywords":["fetch","router","middleware","render","renderer","response"],"author":{"name":"Michael Jackson","email":"mjijackson@gmail.com"},"license":"MIT","_id":"@remix-run/render-middleware@0.3.0","maintainers":[{"name":"mjackson","email":"mjijackson+npm@gmail.com"}],"homepage":"https://github.com/remix-run/remix/tree/main/packages/render-middleware#readme","bugs":{"url":"https://github.com/remix-run/remix/issues"},"dist":{"shasum":"8a9fd6faa8cffc1cc426b21dfd5e75f1e7f5f6ba","tarball":"https://registry.npmjs.org/@remix-run/render-middleware/-/render-middleware-0.3.0.tgz","fileCount":15,"integrity":"sha512-UL99BvVq3pIFgq8h3I2xdCuMUHIaGWMnKffkAbuxBiHp0R3D/Uf/xW5vX3QEm1Tqx4svZl+/us5WoLZmxVlOlA==","signatures":[{"sig":"MEUCIF1Ro8UPOAIlcYLFSSKpRgix6MkqNDGAmutnDjyfeCErAiEA/toHJ4v8Xi4dxOCsxW0+z29v5SlL3LyN6UCi9teYcDc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@remix-run%2frender-middleware@0.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":27826},"type":"module","_from":"file:/tmp/remix-publish-render-middleware-oI8m44/remix-run-render-middleware-0.3.0.tgz","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"scripts":{"test":"remix test","build":"tsc -p tsconfig.build.json","clean":"git clean -fdX","test:bun":"bun x --bun remix test","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:40a6500b-6b53-43bf-8e14-03cd3dd56073"}},"_resolved":"/tmp/remix-publish-render-middleware-oI8m44/remix-run-render-middleware-0.3.0.tgz","_integrity":"sha512-UL99BvVq3pIFgq8h3I2xdCuMUHIaGWMnKffkAbuxBiHp0R3D/Uf/xW5vX3QEm1Tqx4svZl+/us5WoLZmxVlOlA==","repository":{"url":"git+https://github.com/remix-run/remix.git","type":"git","directory":"packages/render-middleware"},"_npmVersion":"11.19.0","description":"Conventional Remix UI and custom request-scoped render middleware","directories":{},"_nodeVersion":"24.20.0","dependencies":{"@remix-run/ui":"^0.9.0","@remix-run/assets":"^0.7.0","@remix-run/response":"^0.3.8","@remix-run/fetch-router":"^0.22.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^7.0.2","@types/node":"^24.6.0","@remix-run/test":"0.6.0","@remix-run/assert":"0.3.0","@remix-run/fetch-router":"0.22.0"},"_npmOperationalInternal":{"tmp":"tmp/render-middleware_0.3.0_1788908673430_0.8210481643746923","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"@remix-run/render-middleware","version":"0.3.1","keywords":["fetch","router","middleware","render","renderer","response"],"author":{"name":"Michael Jackson","email":"mjijackson@gmail.com"},"license":"MIT","_id":"@remix-run/render-middleware@0.3.1","maintainers":[{"name":"mjackson","email":"mjijackson+npm@gmail.com"}],"homepage":"https://github.com/remix-run/remix/tree/main/packages/render-middleware#readme","bugs":{"url":"https://github.com/remix-run/remix/issues"},"dist":{"shasum":"57ee54831fe12396e001321ad5e2f5ac7b45d2ac","tarball":"https://registry.npmjs.org/@remix-run/render-middleware/-/render-middleware-0.3.1.tgz","fileCount":15,"integrity":"sha512-2BatZSA8U41NV8jTZlIrrlc2mpgnpnH6B2dbtIvR1XWwTru42uWPuTk644/sUAjgJ/NbCJGEUn3xRmRMpr/FRA==","signatures":[{"sig":"MEUCICvY5ssZQV0zTVe/UNf1TtWiox4BMnDnSL+u1m7z5OCtAiEAxj0W4zavOM5iu6zAHlYLCKxk7bTIPwyRwCCvDyRJu/M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDaSHXeMyjB5s8GejWGXD2vk+0L5Vc+LXPcF5zRclJCewIgVNl4H3soqZGREtCfkJuCL5JyN68YHZqZrsXD9Veyocw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@remix-run%2frender-middleware@0.3.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":27827},"type":"module","_from":"file:/tmp/remix-publish-render-middleware-eRvDDp/remix-run-render-middleware-0.3.1.tgz","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"scripts":{"test":"remix test","build":"tsc -p tsconfig.build.json","clean":"git clean -fdX","test:bun":"bun x --bun remix test","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:40a6500b-6b53-43bf-8e14-03cd3dd56073"}},"_resolved":"/tmp/remix-publish-render-middleware-eRvDDp/remix-run-render-middleware-0.3.1.tgz","_integrity":"sha512-2BatZSA8U41NV8jTZlIrrlc2mpgnpnH6B2dbtIvR1XWwTru42uWPuTk644/sUAjgJ/NbCJGEUn3xRmRMpr/FRA==","repository":{"url":"git+https://github.com/remix-run/remix.git","type":"git","directory":"packages/render-middleware"},"_npmVersion":"11.19.0","description":"Conventional Remix UI and custom request-scoped render middleware","directories":{},"_nodeVersion":"24.20.0","dependencies":{"@remix-run/ui":"^0.10.0","@remix-run/assets":"^0.7.1","@remix-run/response":"^0.3.9","@remix-run/fetch-router":"^0.22.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^7.0.2","@types/node":"^24.6.0","@remix-run/test":"0.6.1","@remix-run/assert":"0.3.0","@remix-run/fetch-router":"0.22.1"},"_npmOperationalInternal":{"tmp":"tmp/render-middleware_0.3.1_1789770948076_0.9633128566539351","host":"s3://npm-registry-packages-npm-production"}},"0.3.2":{"name":"@remix-run/render-middleware","version":"0.3.2","keywords":["fetch","router","middleware","render","renderer","response"],"author":{"name":"Michael Jackson","email":"mjijackson@gmail.com"},"license":"MIT","_id":"@remix-run/render-middleware@0.3.2","maintainers":[{"name":"mjackson","email":"mjijackson+npm@gmail.com"}],"homepage":"https://github.com/remix-run/remix/tree/main/packages/render-middleware#readme","bugs":{"url":"https://github.com/remix-run/remix/issues"},"dist":{"shasum":"85f9a0dc950a7fbd1a4500d835de8a5b7018aebf","tarball":"https://registry.npmjs.org/@remix-run/render-middleware/-/render-middleware-0.3.2.tgz","fileCount":15,"integrity":"sha512-O2CBSyAnsPEuML5SjKsqn21nUYSMAx5Aca1coRD9qT61PMb/smJxaWN8I8H2D69gssE7Rx5c727ASmM/ffNzcQ==","signatures":[{"sig":"MEYCIQCDq5t21qk6rDdAaF2fmTS+/WeYoqSfk31u8o1Sjjf2PwIhAITU9Hble/zCmAO3JLnLM2GCE2S+RtppvEur8WEbV4J8","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQC3kZ70890VZFPDik5or6b2RPRF1nCiFa8wS8ODLQb54QIgbAAIFnHMHJja61tgFafAMa8H+R3iktmbE/f6cYKSUmc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@remix-run%2frender-middleware@0.3.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":28545},"type":"module","_from":"file:/tmp/remix-publish-render-middleware-Qj0s1z/remix-run-render-middleware-0.3.2.tgz","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"scripts":{"test":"remix test","build":"tsc -p tsconfig.build.json","clean":"git clean -fdX","test:bun":"bun x --bun remix test","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"40a6500b-6b53-43bf-8e14-03cd3dd56073"}},"_resolved":"/tmp/remix-publish-render-middleware-Qj0s1z/remix-run-render-middleware-0.3.2.tgz","_integrity":"sha512-O2CBSyAnsPEuML5SjKsqn21nUYSMAx5Aca1coRD9qT61PMb/smJxaWN8I8H2D69gssE7Rx5c727ASmM/ffNzcQ==","repository":{"url":"git+https://github.com/remix-run/remix.git","type":"git","directory":"packages/render-middleware"},"_npmVersion":"11.19.0","description":"Conventional Remix UI and custom request-scoped render middleware","directories":{},"sideEffects":false,"_nodeVersion":"24.21.0","dependencies":{"@remix-run/ui":"^0.11.0","@remix-run/assets":"^0.8.0","@remix-run/response":"^0.3.10","@remix-run/fetch-router":"^0.22.2"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^7.0.2","@types/node":"^24.6.0","@remix-run/test":"0.6.2","@remix-run/assert":"0.3.1","@remix-run/fetch-router":"0.22.2"},"_npmOperationalInternal":{"tmp":"tmp/render-middleware_0.3.2_1790631735189_0.7504262177498886","host":"s3://npm-registry-packages-npm-production"}},"0.3.3":{"name":"@remix-run/render-middleware","version":"0.3.3","keywords":["fetch","router","middleware","render","renderer","response"],"author":{"name":"Michael Jackson","email":"mjijackson@gmail.com"},"license":"MIT","_id":"@remix-run/render-middleware@0.3.3","maintainers":[{"name":"mjackson","email":"mjijackson+npm@gmail.com"}],"homepage":"https://github.com/remix-run/remix/tree/main/packages/render-middleware#readme","bugs":{"url":"https://github.com/remix-run/remix/issues"},"dist":{"shasum":"893f0e0315e49fef734c138d6d5799fe1d859580","tarball":"https://registry.npmjs.org/@remix-run/render-middleware/-/render-middleware-0.3.3.tgz","fileCount":15,"integrity":"sha512-bl3DFPqvSYnoWUKW56TD+oOVQcWD4JlVCvwqwZXXv1BYnk2q1M0v1qu/l8NmHh2pf1P6eATT61lYE4QCw1/bZg==","signatures":[{"sig":"MEUCICyOOWAGT5AlBqaAdmdbmM+agh5AN140aBo9k8FRIZxRAiEA/qIuUi070eNwoQByMfwA2LvWp8J/lI2CLR5YGMbkGl8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIAMwbvFKs92EBlX3qqXGRQJLj8mLZGjfXY51g1GeIfMKAiA4PRT6lTPhfQw0Xn8qdW/Uo/5IKuaUiGviFRflc4DmeA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@remix-run%2frender-middleware@0.3.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":28674},"type":"module","_from":"file:/tmp/remix-publish-render-middleware-LW4zM9/remix-run-render-middleware-0.3.3.tgz","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"scripts":{"test":"remix test","build":"tsc -p tsconfig.build.json","clean":"git clean -fdX","test:bun":"bun x --bun remix test","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"40a6500b-6b53-43bf-8e14-03cd3dd56073"}},"_resolved":"/tmp/remix-publish-render-middleware-LW4zM9/remix-run-render-middleware-0.3.3.tgz","_integrity":"sha512-bl3DFPqvSYnoWUKW56TD+oOVQcWD4JlVCvwqwZXXv1BYnk2q1M0v1qu/l8NmHh2pf1P6eATT61lYE4QCw1/bZg==","repository":{"url":"git+https://github.com/remix-run/remix.git","type":"git","directory":"packages/render-middleware"},"_npmVersion":"11.19.0","description":"Conventional Remix component and custom request-scoped render middleware","directories":{},"sideEffects":false,"_nodeVersion":"24.21.0","dependencies":{"@remix-run/assets":"^0.8.0","@remix-run/response":"^0.3.10","@remix-run/component":"^0.8.0","@remix-run/fetch-router":"^0.22.2"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^7.0.2","@types/node":"^24.6.0","@remix-run/test":"0.6.2","@remix-run/assert":"0.3.1","@remix-run/fetch-router":"0.22.2"},"_npmOperationalInternal":{"tmp":"tmp/render-middleware_0.3.3_1790874471133_0.18753116356316868","host":"s3://npm-registry-packages-npm-production"}},"1.0.0":{"_id":"@remix-run/render-middleware@1.0.0","bugs":{"url":"https://github.com/remix-run/remix/issues"},"dist":{"shasum":"0adc6bea4b1abd39d1a14ff40d79e689e3dd944a","tarball":"https://registry.npmjs.org/@remix-run/render-middleware/-/render-middleware-1.0.0.tgz","fileCount":15,"integrity":"sha512-C+40+TqjCv9vacsOkSfwJQrNlH+SgS2ZB4ZJi6NvE9s51ev4q7tARfQRv6J+qnFWd3eRxJzy8CMW4foz3jpSIA==","signatures":[{"sig":"MEUCIQDJKdw5HlIkZIHSsoXZCbtSS3lZu3goMu2KFdusSraGgQIgToNvz+xMiK3J9e4ITL/W0knnWnBBtpHOPHKWUbV8kH8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCPZPtgyC6/451IeZo6gs0yD0LeIxMQnlOAgbGBgqPd5QIgJL/1mPTRinP2hDkAEW5Y6wsD1zq6qfRKZMp2epLEOn4="}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@remix-run%2frender-middleware@1.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":28671},"name":"@remix-run/render-middleware","type":"module","_from":"file:/tmp/remix-publish-render-middleware-Gyw8bW/remix-run-render-middleware-1.0.0.tgz","author":{"name":"Michael Jackson","email":"mjijackson@gmail.com"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"license":"MIT","scripts":{"test":"remix test","build":"tsc -p tsconfig.build.json","clean":"git clean -fdX","test:bun":"bun x --bun remix test","typecheck":"tsc --noEmit"},"version":"1.0.0","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"40a6500b-6b53-43bf-8e14-03cd3dd56073"}},"homepage":"https://github.com/remix-run/remix/tree/main/packages/render-middleware#readme","keywords":["fetch","router","middleware","render","renderer","response"],"_resolved":"/tmp/remix-publish-render-middleware-Gyw8bW/remix-run-render-middleware-1.0.0.tgz","_integrity":"sha512-C+40+TqjCv9vacsOkSfwJQrNlH+SgS2ZB4ZJi6NvE9s51ev4q7tARfQRv6J+qnFWd3eRxJzy8CMW4foz3jpSIA==","repository":{"url":"git+https://github.com/remix-run/remix.git","type":"git","directory":"packages/render-middleware"},"_npmVersion":"11.19.0","description":"Conventional Remix component and custom request-scoped render middleware","directories":{},"maintainers":[{"name":"mjackson","email":"mjijackson+npm@gmail.com"}],"sideEffects":false,"_nodeVersion":"24.21.0","dependencies":{"@remix-run/assets":"^1.0.0","@remix-run/response":"^1.0.0","@remix-run/component":"^1.0.0","@remix-run/fetch-router":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^7.0.2","@types/node":"^24.6.0","@remix-run/test":"1.0.0","@remix-run/assert":"1.0.0","@remix-run/fetch-router":"1.0.0"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/render-middleware_1.0.0_1790895540280_0.2146244342902981"}}},"time":{"created":"2026-05-09T00:03:33.692Z","modified":"2026-10-01T22:59:00.699Z","0.0.0":"2026-05-09T00:03:33.965Z","0.1.0":"2026-05-20T03:21:59.197Z","0.1.1":"2026-05-20T20:18:12.548Z","0.1.2":"2026-05-29T18:17:23.033Z","0.1.3":"2026-06-05T18:25:45.138Z","0.1.4":"2026-07-01T19:02:45.198Z","0.1.5":"2026-08-14T00:13:54.891Z","0.2.0":"2026-08-31T18:57:44.765Z","0.3.0":"2026-09-08T23:04:33.583Z","0.3.1":"2026-09-18T22:35:48.189Z","0.3.2":"2026-09-28T21:42:15.284Z","0.3.3":"2026-10-01T17:07:51.223Z","1.0.0":"2026-10-01T22:59:00.378Z"},"bugs":{"url":"https://github.com/remix-run/remix/issues"},"author":{"name":"Michael Jackson","email":"mjijackson@gmail.com"},"license":"MIT","homepage":"https://github.com/remix-run/remix/tree/main/packages/render-middleware#readme","keywords":["fetch","router","middleware","render","renderer","response"],"repository":{"url":"git+https://github.com/remix-run/remix.git","type":"git","directory":"packages/render-middleware"},"description":"Conventional Remix component and custom request-scoped render middleware","maintainers":[{"name":"mjackson","email":"mjijackson+npm@gmail.com"}],"readme":"# render-middleware\n\nRequest-scoped response rendering for Remix. It provides the conventional Remix component renderer and a low-level escape hatch for custom renderers.\n\n## Features\n\n- **Remix component rendering** - Stream nodes to HTML responses with `render()`\n- **Framework-owned frames** - Resolve nested and targeted `<Frame>` requests through the current router\n- **Client entry assets** - Resolve source-based `clientEntry()` modules, import maps, and preloads through an asset server\n- **Typed context** - Preserve renderer input and response option types on `context.render`\n- **Custom renderers** - Install JSON, email, or other response pipelines with `renderWith()`\n\n## Installation\n\n```sh\nnpm i remix\n```\n\n## Usage\n\nInstall `render()` in the router middleware stack. Pass an asset server when components use source-based client entries such as `clientEntry(import.meta.url, Component)`.\n\n```tsx\nimport { createAssetServer } from 'remix/assets'\nimport { render } from 'remix/middleware/render'\nimport { staticFiles } from 'remix/middleware/static'\nimport { createRouter } from 'remix/router'\nimport { Frame } from 'remix/component'\n\nlet assets = createAssetServer({\n  basePath: '/assets',\n  rootDir: process.cwd(),\n  allowFiles: ['app/routes.ts', 'app/**/public/**'],\n  allowPackages: ['remix'],\n  denyFiles: ['app/**/*.test.*'],\n})\n\nlet router = createRouter({\n  middleware: [staticFiles('./public'), render({ assets })],\n})\n\nrouter.get(\n  '/assets/*path',\n  async ({ request }) =>\n    (await assets.fetch(request)) ?? new Response('Not Found', { status: 404 }),\n)\n\nrouter.get('/', (context) =>\n  context.render(\n    <html>\n      <body>\n        <h1>Dashboard</h1>\n        <Frame src=\"/activity\" fallback={<p>Loading activity…</p>} />\n      </body>\n    </html>,\n  ),\n)\n```\n\n`context.render(node, init)` returns an HTML `Response` and preserves the supplied status and headers:\n\n```tsx\nrouter.get('/missing', (context) =>\n  context.render(<h1>Not found</h1>, {\n    status: 404,\n    headers: { 'Cache-Control': 'no-store' },\n  }),\n)\n```\n\nThe middleware forwards request credentials and session headers to internal frame requests, converts them to safe `GET` requests, follows redirects, preserves application error bodies, propagates frame targets and top-frame URLs, and cancels frame rendering when the original request is aborted.\n\n### Options\n\n- **`assets`** - An asset server that resolves source-based client entry IDs to browser module URLs, import maps, and preload URLs. Omit it when client entries already use public URLs or the app has no client entries.\n- **`onError`** - A callback for server rendering errors, including browser-initiated frame requests. Errors from internal frame subrequests are reported by the enclosing render to avoid duplicate reports. When omitted, the UI renderer uses its default error reporting.\n\n## Custom renderers\n\nUse `renderWith()` when the input is not a Remix component node or the application owns a fully custom response pipeline. The factory runs once per request and may read the current request context.\n\n```ts\nimport { renderWith } from 'remix/middleware/render'\nimport { createRouter } from 'remix/router'\n\nlet json = renderWith(\n  () =>\n    function render(data: unknown, init?: ResponseInit) {\n      return Response.json(data, init)\n    },\n)\n\nlet router = createRouter({ middleware: [json] })\n\nrouter.get('/api/status', (context) => context.render({ ok: true }))\n```\n\nCustom renderers are also available through `context.get(Renderer)` when direct-property access is not suitable.\n\n## Related Packages\n\n- [`assets`](https://github.com/remix-run/remix/tree/main/packages/assets) - Source asset compilation and browser module URLs\n- [`fetch-router`](https://github.com/remix-run/remix/tree/main/packages/fetch-router) - Request routing and typed context\n- [`component`](https://github.com/remix-run/remix/tree/main/packages/component) - Remix components, frames, and server rendering\n- [`response`](https://github.com/remix-run/remix/tree/main/packages/response) - Web `Response` helpers\n\n## Related Work\n\n- [Fetch API](https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API)\n- [Streams API](https://developer.mozilla.org/en-US/docs/Web/API/Streams_API)\n\n## License\n\nSee [LICENSE](https://github.com/remix-run/remix/blob/main/LICENSE)\n","readmeFilename":"README.md"}