{"_id":"@standard-server/node","_rev":"11-9794b834ea03221462b4ad3591bcbfa8","name":"@standard-server/node","dist-tags":{"latest":"0.13.0"},"versions":{"0.8.3":{"name":"@standard-server/node","version":"0.8.3","keywords":["standard-server","node","nodejs","http","http2","adapter","server","request","response","streaming","sse","typescript"],"license":"MIT","_id":"@standard-server/node@0.8.3","maintainers":[{"name":"dinwwwh","email":"dinwwwh@gmail.com"}],"dist":{"shasum":"e0c17351fa7a2191145250a005c2da789a7e69d6","tarball":"https://registry.npmjs.org/@standard-server/node/-/node-0.8.3.tgz","fileCount":3,"integrity":"sha512-+oT8t0bC/Wg/wYPEalgVf5aNkwnhMHdlXHp8J/6l3r9ezJWTT3FMKrVQ8RttIgUaGWiUvTok25Qp0ix9DTukuA==","signatures":[{"sig":"MEUCIQCaP0mJkI+wsMAbZsY2CqW6Ws1781KiKTVvslA8iDeKkQIgCkaEqGXPu61P6KTTjcibsfzsgMRIIiFQ5bMV68fk23o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":24605},"type":"module","exports":{".":{"types":"./dist/index.d.mts","import":"./dist/index.mjs","default":"./dist/index.mjs"},"./package.json":"./package.json"},"funding":["https://github.com/sponsors/dinwwwh","https://opencollective.com/middleapi"],"scripts":{"build":"unbuild","type:check":"tsc -b"},"_npmUser":{"name":"dinwwwh","email":"dinwwwh@gmail.com"},"repository":{"url":"git+https://github.com/middleapi/standard-server.git","type":"git","directory":"packages/node"},"description":"Node.js HTTP and HTTP/2 adapter for Standard Server: transport-agnostic requests, responses, and streaming on top of IncomingMessage and ServerResponse","directories":{},"sideEffects":false,"dependencies":{"@standard-server/core":"0.8.3","@standard-server/fetch":"0.8.3","@standard-server/shared":"0.8.3"},"_hasShrinkwrap":false,"devDependencies":{"supertest":"^7.1.4","@types/node":"^26.4.1","@types/supertest":"^7.2.1"},"_npmOperationalInternal":{"tmp":"tmp/node_0.8.3_1788683264113_0.5995816367215674","host":"s3://npm-registry-packages-npm-production"}},"0.9.0":{"name":"@standard-server/node","version":"0.9.0","keywords":["standard-server","node","nodejs","http","http2","adapter","server","request","response","streaming","sse","typescript"],"license":"MIT","_id":"@standard-server/node@0.9.0","maintainers":[{"name":"dinwwwh","email":"dinwwwh@gmail.com"}],"dist":{"shasum":"2a03804339de20a764b96d030663f8d9bf1eff2f","tarball":"https://registry.npmjs.org/@standard-server/node/-/node-0.9.0.tgz","fileCount":6,"integrity":"sha512-1k+QMZDVCYofjs2HiQPEWY3/vB+Ox7D3m0P1odWAfL7730bSO0YQHYZwmn5j3G2RxUIVm4BRtRnOcuE3MJroCA==","signatures":[{"sig":"MEUCIErYolNxt4w+PtYY6LGNRC2Qij9HrigdFoPBWCZ3plESAiEA7JDE768t3Hh43Y99Nc5g/qW51NOIDBEMjuQ7RKu7Ajc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@standard-server%2fnode@0.9.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":41411},"type":"module","exports":{".":{"types":"./dist/index.d.mts","import":"./dist/index.mjs","default":"./dist/index.mjs"},"./package.json":"./package.json"},"funding":["https://github.com/sponsors/dinwwwh","https://opencollective.com/middleapi"],"scripts":{"build":"unbuild","type:check":"tsc -b"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:712f9a19-6e97-4a4c-ae47-5a1caa8f567d"}},"repository":{"url":"git+https://github.com/middleapi/standard-server.git","type":"git","directory":"packages/node"},"description":"Node.js HTTP and HTTP/2 adapter for Standard Server: transport-agnostic requests, responses, and streaming on top of IncomingMessage and ServerResponse","directories":{},"sideEffects":false,"dependencies":{"@standard-server/core":"0.9.0","@standard-server/fetch":"0.9.0","@standard-server/shared":"0.9.0"},"_hasShrinkwrap":false,"devDependencies":{"supertest":"^7.1.4","@types/node":"^26.4.1","@types/supertest":"^7.2.1"},"_npmOperationalInternal":{"tmp":"tmp/node_0.9.0_1788683658095_0.06225976458434146","host":"s3://npm-registry-packages-npm-production"}},"0.9.1":{"name":"@standard-server/node","version":"0.9.1","keywords":["standard-server","node","nodejs","http","http2","adapter","server","request","response","streaming","sse","typescript"],"license":"MIT","_id":"@standard-server/node@0.9.1","maintainers":[{"name":"dinwwwh","email":"dinwwwh@gmail.com"}],"dist":{"shasum":"ae4ac7ca2af3f85cdc8f949482fc358ad9785d0f","tarball":"https://registry.npmjs.org/@standard-server/node/-/node-0.9.1.tgz","fileCount":6,"integrity":"sha512-BfDf/U1UITHTOIeSkAJaXmaOY7uT+9tHPLwNrfm223oruL3O2VTeps7uNK8xYDK9QDB3BIIrm6caL5gSGeBj7g==","signatures":[{"sig":"MEYCIQDZ9wfnnLD/jKsBYa9TaXTcGtdN4SN1XB8o/DO87XBSyAIhAOAO4OlTzHt9cvwlFWsb8dRS+XE77NchuJXf8PtzoSHk","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@standard-server%2fnode@0.9.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":42232},"type":"module","exports":{".":{"types":"./dist/index.d.mts","import":"./dist/index.mjs","default":"./dist/index.mjs"},"./package.json":"./package.json"},"funding":["https://github.com/sponsors/dinwwwh","https://opencollective.com/middleapi"],"scripts":{"build":"unbuild","type:check":"tsc -b"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:712f9a19-6e97-4a4c-ae47-5a1caa8f567d"}},"repository":{"url":"git+https://github.com/middleapi/standard-server.git","type":"git","directory":"packages/node"},"description":"Node.js HTTP and HTTP/2 adapter for Standard Server: transport-agnostic requests, responses, and streaming on top of IncomingMessage and ServerResponse","directories":{},"sideEffects":false,"dependencies":{"@standard-server/core":"0.9.1","@standard-server/fetch":"0.9.1","@standard-server/shared":"0.9.1"},"_hasShrinkwrap":false,"devDependencies":{"supertest":"^7.1.4","@types/node":"^26.4.1","@types/supertest":"^7.2.1"},"_npmOperationalInternal":{"tmp":"tmp/node_0.9.1_1789548864993_0.47361131215181795","host":"s3://npm-registry-packages-npm-production"}},"0.9.2":{"name":"@standard-server/node","version":"0.9.2","keywords":["standard-server","node","nodejs","http","http2","adapter","server","request","response","streaming","sse","typescript"],"license":"MIT","_id":"@standard-server/node@0.9.2","maintainers":[{"name":"dinwwwh","email":"dinwwwh@gmail.com"}],"dist":{"shasum":"bc3abddf4a0976f739e784f26a27d9ba386a4476","tarball":"https://registry.npmjs.org/@standard-server/node/-/node-0.9.2.tgz","fileCount":6,"integrity":"sha512-O+drGGJhOwGgUS4lzB1WveXoYs0zEJG8xj5u9Tc7+giho8GnVxE+J2HkFM2pGxuQh0UrCEFoHvzlPsadFqh9AQ==","signatures":[{"sig":"MEQCIHV/CaTtaUb/nD3YIz3cUowejJnrGP/fxcBq1F6FJipPAiAg7tYILMqKUZQUVegLvOdLCA6l/z3nY5/J4GFbCqvbEQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIB/oPebAvgqDMuecFrbsMsQsevEf+wSpi8G56D3G9rV/AiBDax9PGg/uGQVog1ONbZnaSvaAWb2BxFODSjG8N9Id2g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@standard-server%2fnode@0.9.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":42259},"type":"module","exports":{".":{"types":"./dist/index.d.mts","import":"./dist/index.mjs","default":"./dist/index.mjs"},"./package.json":"./package.json"},"funding":["https://github.com/sponsors/dinwwwh","https://opencollective.com/middleapi"],"scripts":{"build":"unbuild","type:check":"tsc -b"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:712f9a19-6e97-4a4c-ae47-5a1caa8f567d"}},"repository":{"url":"git+https://github.com/middleapi/standard-server.git","type":"git","directory":"packages/node"},"description":"Node.js HTTP and HTTP/2 adapter for Standard Server: transport-agnostic requests, responses, and streaming on top of IncomingMessage and ServerResponse","directories":{},"sideEffects":false,"dependencies":{"@standard-server/core":"0.9.2","@standard-server/fetch":"0.9.2","@standard-server/shared":"0.9.2"},"_hasShrinkwrap":false,"devDependencies":{"supertest":"^7.1.4","@types/node":"^26.4.1","@types/supertest":"^7.2.1"},"_npmOperationalInternal":{"tmp":"tmp/node_0.9.2_1789805770737_0.5082561837127624","host":"s3://npm-registry-packages-npm-production"}},"0.10.0":{"name":"@standard-server/node","version":"0.10.0","keywords":["standard-server","node","nodejs","http","http2","adapter","server","request","response","streaming","sse","typescript"],"license":"MIT","_id":"@standard-server/node@0.10.0","maintainers":[{"name":"dinwwwh","email":"dinwwwh@gmail.com"}],"dist":{"shasum":"649b2c39bed53f38ac5c0dea844526bafa077796","tarball":"https://registry.npmjs.org/@standard-server/node/-/node-0.10.0.tgz","fileCount":6,"integrity":"sha512-Jiqzuo/50kQCuD6ET9kDir3tgq4CpMxKHr1kXP/dFkTaxIWKmsgoAlw9oDTpok8TYVvpHtHrnENTBvAavNJpMg==","signatures":[{"sig":"MEUCIEcKOFroyboez3Rd/xlYO++xWrlvIh4kdVaVLyvCUMkiAiEAyW1QaBmImLLNGm/WYrz3BRZThub+40elHw5Q/O+qbCE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIC5C+Lx7uAMeHZAHxU9ax4dg9MwokiicUtnuPTKwSn7QAiEAjGZpdRa4TylQwYK0Z+J6Ba+0XonWjdfsYd3o2lesiWU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@standard-server%2fnode@0.10.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":44218},"type":"module","exports":{".":{"types":"./dist/index.d.mts","import":"./dist/index.mjs","default":"./dist/index.mjs"},"./package.json":"./package.json"},"funding":["https://github.com/sponsors/dinwwwh","https://opencollective.com/middleapi"],"scripts":{"build":"unbuild","type:check":"tsc -b"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"712f9a19-6e97-4a4c-ae47-5a1caa8f567d"}},"repository":{"url":"git+https://github.com/middleapi/standard-server.git","type":"git","directory":"packages/node"},"description":"Node.js HTTP and HTTP/2 adapter for Standard Server: transport-agnostic requests, responses, and streaming on top of IncomingMessage and ServerResponse","directories":{},"sideEffects":false,"dependencies":{"@standard-server/core":"0.10.0","@standard-server/fetch":"0.10.0","@standard-server/shared":"0.10.0"},"_hasShrinkwrap":false,"devDependencies":{"supertest":"^7.1.4","@types/node":"^26.4.1","@types/supertest":"^7.2.1"},"_npmOperationalInternal":{"tmp":"tmp/node_0.10.0_1790736405136_0.49152095962654574","host":"s3://npm-registry-packages-npm-production"}},"0.10.1":{"name":"@standard-server/node","version":"0.10.1","keywords":["adapter","http","http2","node","nodejs","request","response","server","sse","standard-server","streaming","typescript"],"license":"MIT","_id":"@standard-server/node@0.10.1","maintainers":[{"name":"dinwwwh","email":"dinwwwh@gmail.com"}],"dist":{"shasum":"070d762990fa9b792e70c02ff04281382bff620d","tarball":"https://registry.npmjs.org/@standard-server/node/-/node-0.10.1.tgz","fileCount":6,"integrity":"sha512-tVH85dY/qxflrqoGDXy/BiKmzw7w8ELif8yVbIx8XRGsc1qkTere51jsoJlx3tAQN/AC9SUoGjvgcVXVS6IwYw==","signatures":[{"sig":"MEYCIQD9cqKt6rKGzyQPZnartt4XtxlZobr0zFXkG5m0HHlQLQIhANoamemeDBGTksN/RVAAy19sUw5ikiFrgIg1VfFwjmbL","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIHSbZ0TJKlb68/X6ybvmdNh0bvjbeBrWckUVc/Fkz7UzAiEAhkbjDU03RBZ45b9iCmkSXpuO50iYwMYr2eDXWjUNfno=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@standard-server%2fnode@0.10.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":44198},"type":"module","exports":{".":{"types":"./dist/index.d.mts","import":"./dist/index.mjs","default":"./dist/index.mjs"},"./package.json":"./package.json"},"funding":["https://github.com/sponsors/dinwwwh","https://opencollective.com/middleapi"],"scripts":{},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"712f9a19-6e97-4a4c-ae47-5a1caa8f567d"}},"repository":{"url":"git+https://github.com/middleapi/standard-server.git","type":"git","directory":"packages/node"},"description":"Node.js HTTP and HTTP/2 adapter for Standard Server: transport-agnostic requests, responses, and streaming on top of IncomingMessage and ServerResponse","directories":{},"sideEffects":false,"dependencies":{"@standard-server/core":"0.10.1","@standard-server/fetch":"0.10.1","@standard-server/shared":"0.10.1"},"_hasShrinkwrap":false,"devDependencies":{"supertest":"^7.1.4","@types/node":"^26.4.1","@types/supertest":"^7.2.1"},"_npmOperationalInternal":{"tmp":"tmp/node_0.10.1_1791087528710_0.8862132803449507","host":"s3://npm-registry-packages-npm-production"}},"0.10.2":{"name":"@standard-server/node","version":"0.10.2","keywords":["adapter","http","http2","node","nodejs","request","response","server","sse","standard-server","streaming","typescript"],"license":"MIT","_id":"@standard-server/node@0.10.2","maintainers":[{"name":"dinwwwh","email":"dinwwwh@gmail.com"}],"dist":{"shasum":"a506b6698f3b1ef48e511ab525c4716761960a38","tarball":"https://registry.npmjs.org/@standard-server/node/-/node-0.10.2.tgz","fileCount":6,"integrity":"sha512-9rySfQOD9kR0eOBDdL3kQT8/kdp278A2PXDOgV7v+SB6vrGVSQuvVO4Yi5hcTMTCPTPxght36tLrLc/YlAf19g==","signatures":[{"sig":"MEYCIQDY6Ww72GJI909W+NgsS5hSDhmFEo33dGsrgIwCgMp26wIhANuqC80059jAuXzOVV0S79DU7zHjuj6C1oSJaN/x38a0","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIAYlWl/9Hwm+LUXSY7d45le8RryNmmg1WWx4Ii1jO5OkAiA3uMaPN2b470ShGG4UqWOUi2zmWUWuuqr38MCKpQgroA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@standard-server%2fnode@0.10.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":44260},"type":"module","exports":{".":{"types":"./dist/index.d.mts","import":"./dist/index.mjs","default":"./dist/index.mjs"},"./package.json":"./package.json"},"funding":["https://github.com/sponsors/dinwwwh","https://opencollective.com/middleapi"],"scripts":{},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"712f9a19-6e97-4a4c-ae47-5a1caa8f567d"}},"repository":{"url":"git+https://github.com/middleapi/standard-server.git","type":"git","directory":"packages/node"},"description":"Node.js HTTP and HTTP/2 adapter for Standard Server: transport-agnostic requests, responses, and streaming on top of IncomingMessage and ServerResponse","directories":{},"sideEffects":false,"dependencies":{"@standard-server/core":"0.10.2","@standard-server/fetch":"0.10.2","@standard-server/shared":"0.10.2"},"_hasShrinkwrap":false,"devDependencies":{"supertest":"^7.1.4","@types/node":"^26.4.1","@types/supertest":"^7.2.1"},"_npmOperationalInternal":{"tmp":"tmp/node_0.10.2_1791512741867_0.09932751784860239","host":"s3://npm-registry-packages-npm-production"}},"0.10.3":{"name":"@standard-server/node","version":"0.10.3","keywords":["adapter","http","http2","node","nodejs","request","response","server","sse","standard-server","streaming","typescript"],"license":"MIT","_id":"@standard-server/node@0.10.3","maintainers":[{"name":"dinwwwh","email":"dinwwwh@gmail.com"}],"dist":{"shasum":"2694b3786797e06fc7a1f7e8876f22baac63b09a","tarball":"https://registry.npmjs.org/@standard-server/node/-/node-0.10.3.tgz","fileCount":6,"integrity":"sha512-5AGTXbTcJ/zbFw3BMhfECASXqLALcehSLPusYgDwzpJRn/9Ow03ndQesO32COONW36DqGp44kL6sy9IPYAQZRg==","signatures":[{"sig":"MEQCICLKJhhG2L3G8JdKYRrVqL/EzN8FVeVPZ2OtFjyuKZnaAiBnPUDWuYp8a7/l71xGYarhcY2Cux6Q2Ba5wflSHO6PgA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCs7rWuW3zAYBrPFDwzxZhZjwZWvamU0UkmHg8fiN3cEAIgR7yu+96uvhbUIxzgLl1fvL/mU0OsB2P3DRVBwseCbpg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@standard-server%2fnode@0.10.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":43979},"type":"module","exports":{".":{"types":"./dist/index.d.mts","import":"./dist/index.mjs","default":"./dist/index.mjs"},"./package.json":"./package.json"},"funding":["https://github.com/sponsors/dinwwwh","https://opencollective.com/middleapi"],"scripts":{},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"712f9a19-6e97-4a4c-ae47-5a1caa8f567d"}},"repository":{"url":"git+https://github.com/middleapi/standard-server.git","type":"git","directory":"packages/node"},"description":"Node.js HTTP and HTTP/2 adapter for Standard Server: transport-agnostic requests, responses, and streaming on top of IncomingMessage and ServerResponse","directories":{},"sideEffects":false,"dependencies":{"@standard-server/core":"0.10.3","@standard-server/fetch":"0.10.3","@standard-server/shared":"0.10.3"},"_hasShrinkwrap":false,"devDependencies":{"supertest":"^7.3.1","@types/node":"^26.6.4","@types/supertest":"^7.2.1"},"_npmOperationalInternal":{"tmp":"tmp/node_0.10.3_1791872602000_0.10111793183492179","host":"s3://npm-registry-packages-npm-production"}},"0.11.0":{"name":"@standard-server/node","version":"0.11.0","keywords":["adapter","http","http2","node","nodejs","request","response","server","sse","standard-server","streaming","typescript"],"license":"MIT","_id":"@standard-server/node@0.11.0","maintainers":[{"name":"dinwwwh","email":"dinwwwh@gmail.com"}],"dist":{"shasum":"f4a18ccf6dad71d751d832a8383e020806cd6b2e","tarball":"https://registry.npmjs.org/@standard-server/node/-/node-0.11.0.tgz","fileCount":6,"integrity":"sha512-I4XL5P0g9x7KvGyL5RgYRyt/pmR7GzzJMMABZVnVRQETTeazXPOWhYiVCA0O6aUv9JI9eMj9+N4VRdBQPmvBpQ==","signatures":[{"sig":"MEYCIQDg0VNc54Tn1RXVfnftFX5By+r7BY+nkIMfK0yiSjHcsAIhAJCFn95vYNvDkG/4lVk20XWIYY+0mU4klRkr9GDiZTWB","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDg5eeM7kPe4dhBzCRUecyrchQgUsgzLrO8zMJnHtHbHAIgXc1u04SThOLP3AFJeVsIYWsbThUd55sAhuZDu4CFMVY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@standard-server%2fnode@0.11.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":44405},"type":"module","exports":{".":{"types":"./dist/index.d.mts","import":"./dist/index.mjs","default":"./dist/index.mjs"},"./package.json":"./package.json"},"funding":["https://github.com/sponsors/dinwwwh","https://opencollective.com/middleapi"],"scripts":{},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"712f9a19-6e97-4a4c-ae47-5a1caa8f567d"}},"repository":{"url":"git+https://github.com/middleapi/standard-server.git","type":"git","directory":"packages/node"},"description":"Node.js HTTP and HTTP/2 adapter for Standard Server: transport-agnostic requests, responses, and streaming on top of IncomingMessage and ServerResponse","directories":{},"sideEffects":false,"dependencies":{"@standard-server/core":"0.11.0","@standard-server/fetch":"0.11.0","@standard-server/shared":"0.11.0"},"_hasShrinkwrap":false,"devDependencies":{"supertest":"^7.3.1","@types/node":"^26.6.4","@types/supertest":"^7.2.1"},"_npmOperationalInternal":{"tmp":"tmp/node_0.11.0_1792574984208_0.4913891161932906","host":"s3://npm-registry-packages-npm-production"}},"0.12.0":{"name":"@standard-server/node","version":"0.12.0","keywords":["adapter","http","http2","node","nodejs","request","response","server","sse","standard-server","streaming","typescript"],"license":"MIT","_id":"@standard-server/node@0.12.0","maintainers":[{"name":"dinwwwh","email":"dinwwwh@gmail.com"}],"dist":{"shasum":"f8fbbe188ddff310a6be8a6b33d1866671179071","tarball":"https://registry.npmjs.org/@standard-server/node/-/node-0.12.0.tgz","fileCount":6,"integrity":"sha512-dX5+tdeGfN9m9zxIoVC6x5DosS/5AwKBp6zveeH6ADZ8tkwpHGrnxL1FziX/q4cWl9ZvFdgY0QCETecKaX4SUA==","signatures":[{"sig":"MEQCIF1PC5kTLoD1W9LFkz9lhf5M9QKmIYUG2bAgPgpsQG8JAiBgcGaYFRvlvvaW6M5kpTMrsBfdumfJ2MycB4DFrr3HAA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIAbMsiK53Mo0sNVG748pSfvT4UJ1LpLdpwgkk4Vz2RamAiBnTODd5jVJQmj5w0msEEaTBNvv2I2uvXX7nUwNFskgVA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@standard-server%2fnode@0.12.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":46573},"type":"module","exports":{".":{"types":"./dist/index.d.mts","import":"./dist/index.mjs","default":"./dist/index.mjs"},"./package.json":"./package.json"},"funding":["https://github.com/sponsors/dinwwwh","https://opencollective.com/middleapi"],"scripts":{},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"712f9a19-6e97-4a4c-ae47-5a1caa8f567d"}},"repository":{"url":"git+https://github.com/middleapi/standard-server.git","type":"git","directory":"packages/node"},"description":"Node.js HTTP and HTTP/2 adapter for Standard Server: transport-agnostic requests, responses, and streaming on top of IncomingMessage and ServerResponse","directories":{},"sideEffects":false,"dependencies":{"@standard-server/core":"0.12.0","@standard-server/fetch":"0.12.0","@standard-server/shared":"0.12.0"},"_hasShrinkwrap":false,"devDependencies":{"supertest":"^7.3.1","@types/node":"^26.6.4","@types/supertest":"^7.2.1"},"_npmOperationalInternal":{"tmp":"tmp/node_0.12.0_1792999879677_0.7742015181762154","host":"s3://npm-registry-packages-npm-production"}},"0.13.0":{"_id":"@standard-server/node@0.13.0","dist":{"shasum":"579a9a605b8706a93bcf5a8383ce9fde9bcf8fdd","tarball":"https://registry.npmjs.org/@standard-server/node/-/node-0.13.0.tgz","fileCount":6,"integrity":"sha512-WO/gQnH+hTSG1LuWko+bjcJJ1QGCb555RyMbYDbwSkyOnq5BTY5QJyMfUh7LzEwbgQpcfyAKfB4FrDlD6be4/g==","signatures":[{"sig":"MEQCIALosI8ixsNTC/sjzyxXaaCoBx1ljuDDWuRoZnG9A0jvAiBpKp3xCcwwvO8LR0bJxWD3OGYfsfBMX069WjfG6zdTQw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIECspUfj+XZJvrwOCW8aXinxrFCVYCo0osAUPvATsgLMAiAIvMwnYMrsLmMgC2r7MRTKxmZrVNeXp2Io2vyyttBRLw=="}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@standard-server%2fnode@0.13.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":46528},"name":"@standard-server/node","type":"module","exports":{".":{"types":"./dist/index.d.mts","import":"./dist/index.mjs","default":"./dist/index.mjs"},"./package.json":"./package.json"},"funding":["https://github.com/sponsors/dinwwwh","https://opencollective.com/middleapi"],"license":"MIT","scripts":{},"version":"0.13.0","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"712f9a19-6e97-4a4c-ae47-5a1caa8f567d"}},"keywords":["adapter","http","http2","node","nodejs","request","response","server","sse","standard-server","streaming","typescript"],"repository":{"url":"git+https://github.com/middleapi/standard-server.git","type":"git","directory":"packages/node"},"description":"Node.js HTTP and HTTP/2 adapter for Standard Server: transport-agnostic requests, responses, and streaming on top of IncomingMessage and ServerResponse","directories":{},"maintainers":[{"name":"dinwwwh","email":"dinwwwh@gmail.com"}],"sideEffects":false,"dependencies":{"@standard-server/core":"0.13.0","@standard-server/fetch":"0.13.0","@standard-server/shared":"0.13.0"},"_hasShrinkwrap":false,"devDependencies":{"supertest":"^7.3.1","@types/node":"^26.6.4","@types/supertest":"^7.2.1"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/node_0.13.0_1793007542443_0.9326388895392808"}}},"time":{"created":"2026-09-06T08:27:43.876Z","modified":"2026-10-26T09:39:03.955Z","0.8.3":"2026-09-06T08:27:44.231Z","0.9.0":"2026-09-06T08:34:18.229Z","0.9.1":"2026-09-16T08:54:25.123Z","0.9.2":"2026-09-19T08:16:10.835Z","0.10.0":"2026-09-30T02:46:45.216Z","0.10.1":"2026-10-04T04:18:48.804Z","0.10.2":"2026-10-09T02:25:41.971Z","0.10.3":"2026-10-13T06:23:22.108Z","0.11.0":"2026-10-21T09:29:44.300Z","0.12.0":"2026-10-26T07:31:19.764Z","0.13.0":"2026-10-26T09:39:02.532Z"},"license":"MIT","keywords":["adapter","http","http2","node","nodejs","request","response","server","sse","standard-server","streaming","typescript"],"repository":{"url":"git+https://github.com/middleapi/standard-server.git","type":"git","directory":"packages/node"},"description":"Node.js HTTP and HTTP/2 adapter for Standard Server: transport-agnostic requests, responses, and streaming on top of IncomingMessage and ServerResponse","maintainers":[{"name":"dinwwwh","email":"dinwwwh@gmail.com"}],"readme":"# @standard-server/node\n\n<div align=\"center\">\n  <a href=\"https://codecov.io/gh/middleapi/standard-server\">\n    <img alt=\"codecov\" src=\"https://codecov.io/gh/middleapi/standard-server/branch/main/graph/badge.svg\">\n  </a>\n  <a href=\"https://www.npmjs.com/package/@standard-server/node\">\n    <img alt=\"weekly downloads\" src=\"https://img.shields.io/npm/dw/%40standard-server%2Fnode?logo=npm\" />\n  </a>\n  <a href=\"https://app.codspeed.io/middleapi/standard-server?utm_source=badge\">\n    <img src=\"https://img.shields.io/endpoint?url=https://codspeed.io/badge.json\" alt=\"CodSpeed\" />\n  </a>\n  <a href=\"https://github.com/middleapi/standard-server/blob/main/LICENSE\">\n    <img alt=\"MIT License\" src=\"https://img.shields.io/github/license/middleapi/standard-server?logo=open-source-initiative\" />\n  </a>\n  <a href=\"https://discord.gg/TXEbwRBvQn\">\n    <img alt=\"Discord\" src=\"https://img.shields.io/discord/1308966753044398161?color=7389D8&label&logo=discord&logoColor=ffffff\" />\n  </a>\n  <a href=\"https://deepwiki.com/middleapi/standard-server\">\n    <img alt=\"Ask DeepWiki\" src=\"https://img.shields.io/badge/Ask-DeepWiki-blue\" />\n  </a>\n</div>\n\n`@standard-server/node` adapts Node.js HTTP request and response objects to the transport-agnostic request and response model defined by Standard Server.\n\nStandard Server provides a unified interface for client-server communication across HTTP and message-based transports. It lets you write handlers against the same request, response, body, and streaming primitives whether the underlying transport is the Fetch API, Node.js HTTP, HTTP/2, or a peer-style message channel.\n\nStandard Server ships as a small ecosystem of packages:\n\n| Package                                                                                                               | Description                                                                 |\n| --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------- |\n| [`@standard-server/core`](https://github.com/middleapi/standard-server/blob/main/packages/core/README.md)             | The shared contract: types, body parsing rules, validators, and SSE helpers |\n| [`@standard-server/fetch`](https://github.com/middleapi/standard-server/blob/main/packages/fetch/README.md)           | Fetch API adapter for browsers, workers, and other Fetch-based runtimes     |\n| [`@standard-server/node`](https://github.com/middleapi/standard-server/blob/main/packages/node/README.md)             | Node.js HTTP and HTTP/2 adapter                                             |\n| [`@standard-server/fastify`](https://github.com/middleapi/standard-server/blob/main/packages/fastify/README.md)       | Fastify adapter built on the Node.js adapter                                |\n| [`@standard-server/aws-lambda`](https://github.com/middleapi/standard-server/blob/main/packages/aws-lambda/README.md) | AWS Lambda adapter with response streaming                                  |\n| [`@standard-server/peer`](https://github.com/middleapi/standard-server/blob/main/packages/peer/README.md)             | Message-based adapter for WebSocket, MessagePort, and custom transports     |\n| [`@standard-server/shared`](https://github.com/middleapi/standard-server/blob/main/packages/shared/README.md)         | Internal utilities shared across the ecosystem                              |\n\nThis package is the Node.js adapter for that model. It converts between native Node request and response objects and the corresponding Standard Server shapes from [`@standard-server/core`](https://github.com/middleapi/standard-server/blob/main/packages/core/README.md), while also exposing lower-level utilities for body parsing, URL normalization, abort signals, and server-sent events.\n\n## Package overview\n\nThe package exposes four groups of helpers:\n\n| Group                   | Exports                                                                                                                | Purpose                                                            |\n| ----------------------- | ---------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------ |\n| Request and response    | `toStandardLazyRequest()`, `sendStandardResponse()`                                                                    | Adapt Node request and response objects to Standard Server         |\n| Body and event streams  | `toStandardBody()`, `toNodeHttpBody()`, `toAsyncIteratorObject()`, `toEventStream()`                                   | Parse incoming bodies and serialize outgoing bodies, including SSE |\n| Request utilities       | `toStandardMethod()`, `toStandardUrl()`, `toAbortSignal()`                                                             | Normalize Node request metadata and connection lifecycle state     |\n| Types and option shapes | `NodeHttpRequest`, `NodeHttpResponse`, `ToStandardBodyOptions`, `ToNodeHttpBodyOptions`, `SendStandardResponseOptions` | Type request/response inputs and serializer options                |\n\nUse these helpers when you want Standard Server handlers to run in Node runtimes such as `node:http`, `node:http2`, Express-style middleware, or frameworks that expose Node-compatible request and response objects.\n\n## Server-side request handling\n\nUse `toStandardLazyRequest()` to convert an incoming Node request into a `StandardLazyRequest`, then `sendStandardResponse()` to write the resulting `StandardResponse` back to the client.\n\n```ts\nimport { createServer } from 'node:http'\n\nimport type { StandardLazyRequest, StandardResponse } from '@standard-server/core'\nimport { sendStandardResponse, toStandardLazyRequest } from '@standard-server/node'\n\nasync function handle(request: StandardLazyRequest): Promise<StandardResponse> {\n  const body = await request.resolveBody()\n\n  return {\n    status: 200,\n    headers: { 'content-type': 'application/json' },\n    body: {\n      ok: true,\n      method: request.method,\n      url: request.url,\n      received: body,\n    },\n  }\n}\n\ncreateServer(async (req, res) => {\n  const standardRequest = toStandardLazyRequest(req, res)\n  const standardResponse = await handle(standardRequest)\n\n  await sendStandardResponse(res, standardResponse, {/** options */})\n}).listen(3000)\n```\n\n`sendStandardResponse()` resolves once the response is fully flushed or the client disconnects (an HTTP/2 stream reset included), and rejects if sending fails otherwise.\n\n> [!TIP]\n> When sending responses, you can pass additional options such as event-stream keep-alive.\n\n## Resolving Body\n\n`resolveBody(hint?)` follows the shared Standard Server resolution rules: an explicit `hint` wins, then the [`standard-server` header](https://github.com/middleapi/standard-server/blob/main/packages/core/README.md#the-standard-server-header), then inference from the content headers. See [how body parsing works](https://github.com/middleapi/standard-server/blob/main/packages/core/README.md#how-body-parsing-works) in the core README for the full algorithm.\n\n> [!TIP]\n> For efficient communication, set the `standard-server` header to explicitly hint the body type, especially for file or binary streaming. For example, if you upload a file with a common `content-type` such as `application/json` but omit the `standard-server` header, the server may interpret it as JSON and parse it unexpectedly.\n\n## Learn more\n\nFor the project overview and the shared contract this adapter implements, see the [core documentation](https://github.com/middleapi/standard-server/blob/main/packages/core/README.md).\n\n## Sponsors\n\nLike what we build over at [middleapi](https://github.com/middleapi)? You can help keep it going through [GitHub Sponsors](https://github.com/sponsors/dinwwwh) or [Open Collective](https://opencollective.com/middleapi). Every bit helps! 🚀\n\n<table>\n  <tr>\n   <td width=\"2000\"><a href=\"https://screenshotone.com/?ref=middleapi&amp;utm_source=middleapi&amp;utm_medium=sponsor\" target=\"_blank\" rel=\"noopener sponsored\" title=\"The screenshot API for developers\"><img src=\"https://avatars.githubusercontent.com/u/97035603?v=4\" width=\"64\" align=\"left\" hspace=\"12\" alt=\"ScreenshotOne.com\"/><b>ScreenshotOne.com</b></a><br /><sub>The screenshot API for developers</sub></td>\n  </tr>\n  <tr>\n   <td width=\"2000\"><a href=\"https://yuzu.health/careers?ref=middleapi&amp;utm_source=middleapi&amp;utm_medium=sponsor\" target=\"_blank\" rel=\"noopener sponsored\" title=\"We&#39;re hiring NYC based engineers\"><img src=\"https://avatars.githubusercontent.com/u/102488956?v=4\" width=\"64\" align=\"left\" hspace=\"12\" alt=\"Yuzu\"/><b>Yuzu</b></a><br /><sub>We&#39;re hiring NYC based engineers</sub></td>\n  </tr>\n  <tr>\n   <td width=\"2000\"><a href=\"https://misskey.io/?ref=middleapi&amp;utm_source=middleapi&amp;utm_medium=sponsor\" target=\"_blank\" rel=\"noopener sponsored\" title=\"Decentralized microblogging SNS born on Earth\"><img src=\"https://github.com/MisskeyIO.png\" width=\"64\" align=\"left\" hspace=\"12\" alt=\"MisskeyHQ\"/><b>MisskeyHQ</b></a><br /><sub>Decentralized microblogging SNS born on Earth</sub></td>\n  </tr>\n</table>\n\n### Organization Sponsors\n\n<table>\n  <tr>\n   <td align=\"center\"><a href=\"https://lnmarkets.com/?ref=middleapi&amp;utm_source=middleapi&amp;utm_medium=sponsor\" target=\"_blank\" rel=\"noopener sponsored\" title=\"LN Markets\"><img src=\"https://avatars.githubusercontent.com/u/70597625?v=4\" width=\"209\" alt=\"LN Markets\"/><br />LN Markets</a></td>\n  </tr>\n</table>\n\n### Sponsors\n\n<table>\n  <tr>\n   <td align=\"center\"><a href=\"https://github.com/hrmcdonald?ref=middleapi&amp;utm_source=middleapi&amp;utm_medium=sponsor\" target=\"_blank\" rel=\"noopener sponsored\" title=\"Reece McDonald\"><img src=\"https://avatars.githubusercontent.com/u/39349270?v=4\" width=\"167\" alt=\"Reece McDonald\"/><br />Reece McDonald</a></td>\n   <td align=\"center\"><a href=\"https://soymilk.party/?ref=middleapi&amp;utm_source=middleapi&amp;utm_medium=sponsor\" target=\"_blank\" rel=\"noopener sponsored\" title=\"あわわわとーにゅ\"><img src=\"https://avatars.githubusercontent.com/u/17376330?u=de3353804be889f009f7e0a1582daf04d0ab292d&amp;v=4\" width=\"167\" alt=\"あわわわとーにゅ\"/><br />あわわわとーにゅ</a></td>\n   <td align=\"center\"><a href=\"https://github.com/nicognaW?ref=middleapi&amp;utm_source=middleapi&amp;utm_medium=sponsor\" target=\"_blank\" rel=\"noopener sponsored\" title=\"nk\"><img src=\"https://avatars.githubusercontent.com/u/66731869?u=4699bda3a9092d3ec34fbd959450767bcc8b8b6d&amp;v=4\" width=\"167\" alt=\"nk\"/><br />nk</a></td>\n   <td align=\"center\"><a href=\"https://supastarter.dev/?ref=middleapi&amp;utm_source=middleapi&amp;utm_medium=sponsor\" target=\"_blank\" rel=\"noopener sponsored\" title=\"supastarter\"><img src=\"https://avatars.githubusercontent.com/u/110960143?v=4\" width=\"167\" alt=\"supastarter\"/><br />supastarter</a></td>\n   <td align=\"center\"><a href=\"https://github.com/herrfugbaum?ref=middleapi&amp;utm_source=middleapi&amp;utm_medium=sponsor\" target=\"_blank\" rel=\"noopener sponsored\" title=\"herrfugbaum\"><img src=\"https://avatars.githubusercontent.com/u/12859776?u=644dc1666d0220bc0468eb0de3c56b919f635b16&amp;v=4\" width=\"167\" alt=\"herrfugbaum\"/><br />herrfugbaum</a></td>\n  </tr>\n  <tr>\n   <td align=\"center\"><a href=\"https://laststance.io/?ref=middleapi&amp;utm_source=middleapi&amp;utm_medium=sponsor\" target=\"_blank\" rel=\"noopener sponsored\" title=\"Ryota Murakami\"><img src=\"https://avatars.githubusercontent.com/u/5501268?u=599389e03340734325726ca3f8f423c021d47d7f&amp;v=4\" width=\"167\" alt=\"Ryota Murakami\"/><br />Ryota Murakami</a></td>\n   <td align=\"center\"><a href=\"https://cra.mr/?ref=middleapi&amp;utm_source=middleapi&amp;utm_medium=sponsor\" target=\"_blank\" rel=\"noopener sponsored\" title=\"David Cramer\"><img src=\"https://avatars.githubusercontent.com/u/23610?v=4\" width=\"167\" alt=\"David Cramer\"/><br />David Cramer</a></td>\n   <td align=\"center\"><a href=\"https://valerii15298.github.io/?ref=middleapi&amp;utm_source=middleapi&amp;utm_medium=sponsor\" target=\"_blank\" rel=\"noopener sponsored\" title=\"Valerii Petryniak\"><img src=\"https://avatars.githubusercontent.com/u/44531564?u=88ac74d9bacd20401518441907acad21063cd397&amp;v=4\" width=\"167\" alt=\"Valerii Petryniak\"/><br />Valerii Petryniak</a></td>\n   <td align=\"center\"><a href=\"https://letstri.dev/?ref=middleapi&amp;utm_source=middleapi&amp;utm_medium=sponsor\" target=\"_blank\" rel=\"noopener sponsored\" title=\"Valerii Strilets\"><img src=\"https://avatars.githubusercontent.com/u/13253748?u=c7b10399ccc8f8081e24db94ec32cd9858e86ac3&amp;v=4\" width=\"167\" alt=\"Valerii Strilets\"/><br />Valerii Strilets</a></td>\n   <td align=\"center\"><a href=\"https://blacklight.sh/?ref=middleapi&amp;utm_source=middleapi&amp;utm_medium=sponsor\" target=\"_blank\" rel=\"noopener sponsored\" title=\"Kyle Mistele\"><img src=\"https://avatars.githubusercontent.com/u/18430555?u=3afebeb81de666e35aaac3ed46f14159d7603ffb&amp;v=4\" width=\"167\" alt=\"Kyle Mistele\"/><br />Kyle Mistele</a></td>\n  </tr>\n  <tr>\n   <td align=\"center\"><a href=\"https://github.com/christ12938?ref=middleapi&amp;utm_source=middleapi&amp;utm_medium=sponsor\" target=\"_blank\" rel=\"noopener sponsored\" title=\"christ12938\"><img src=\"https://avatars.githubusercontent.com/u/25758598?v=4\" width=\"167\" alt=\"christ12938\"/><br />christ12938</a></td>\n   <td align=\"center\"><a href=\"https://github.com/Ryanjso?ref=middleapi&amp;utm_source=middleapi&amp;utm_medium=sponsor\" target=\"_blank\" rel=\"noopener sponsored\" title=\"Ryan Soderberg\"><img src=\"https://avatars.githubusercontent.com/u/39172778?u=5ed913c31d57e7221b75784abcad48c7ebddde27&amp;v=4\" width=\"167\" alt=\"Ryan Soderberg\"/><br />Ryan Soderberg</a></td>\n   <td align=\"center\"><a href=\"https://github.com/itigoore01?ref=middleapi&amp;utm_source=middleapi&amp;utm_medium=sponsor\" target=\"_blank\" rel=\"noopener sponsored\" title=\"shota\"><img src=\"https://avatars.githubusercontent.com/u/11831107?u=c976a6dc7e055eb026304c46c99100ed22b0c8e0&amp;v=4\" width=\"167\" alt=\"shota\"/><br />shota</a></td>\n   <td align=\"center\"><a href=\"https://github.com/Nic13Gamer?ref=middleapi&amp;utm_source=middleapi&amp;utm_medium=sponsor\" target=\"_blank\" rel=\"noopener sponsored\" title=\"Nicholas\"><img src=\"https://avatars.githubusercontent.com/u/54724556?u=56a7ab430ce7a80d648ab6eba051d454a818ed0b&amp;v=4\" width=\"167\" alt=\"Nicholas\"/><br />Nicholas</a></td>\n   <td align=\"center\"><a href=\"https://github.com/ellis-driscoll?ref=middleapi&amp;utm_source=middleapi&amp;utm_medium=sponsor\" target=\"_blank\" rel=\"noopener sponsored\" title=\"Ellis Driscoll\"><img src=\"https://avatars.githubusercontent.com/u/70685966?u=c5f95bc33b5991d9744abe00052542e4a2ed3cb9&amp;v=4\" width=\"167\" alt=\"Ellis Driscoll\"/><br />Ellis Driscoll</a></td>\n  </tr>\n  <tr>\n   <td align=\"center\"><a href=\"https://github.com/hoangbn?ref=middleapi&amp;utm_source=middleapi&amp;utm_medium=sponsor\" target=\"_blank\" rel=\"noopener sponsored\" title=\"Hoang Nguyen\"><img src=\"https://avatars.githubusercontent.com/u/38968280?u=c90084c6de65c56facabab7ba13a72a49ddbc3e4&amp;v=4\" width=\"167\" alt=\"Hoang Nguyen\"/><br />Hoang Nguyen</a></td>\n   <td align=\"center\"><a href=\"https://opencollective.com/guest-ac41de3b?ref=middleapi&amp;utm_source=middleapi&amp;utm_medium=sponsor\" target=\"_blank\" rel=\"noopener sponsored\" title=\"Orestis Ioannou\"><img src=\"https://images.opencollective.com/guest-ac41de3b/avatar/460.png\" width=\"167\" alt=\"Orestis Ioannou\"/><br />Orestis Ioannou</a></td>\n   <td align=\"center\"><a href=\"https://automatio.ai/?ref=middleapi&amp;utm_source=middleapi&amp;utm_medium=sponsor\" target=\"_blank\" rel=\"noopener sponsored\" title=\"Stefan Smiljkovic\"><img src=\"https://avatars.githubusercontent.com/u/1984909?u=b7bf5bc40ed49df3c22f69d2da7b8d78709c49ed&amp;v=4\" width=\"167\" alt=\"Stefan Smiljkovic\"/><br />Stefan Smiljkovic</a></td>\n  </tr>\n</table>\n\n### Backers\n\n<table>\n  <tr>\n   <td align=\"center\"><a href=\"https://github.com/rhinodavid?ref=middleapi&amp;utm_source=middleapi&amp;utm_medium=sponsor\" target=\"_blank\" rel=\"noopener sponsored\" title=\"David Walsh\"><img src=\"https://avatars.githubusercontent.com/u/5778036?u=b5521f07d2f88c3db2a0dae62b5f2f8357214af0&amp;v=4\" width=\"139\" alt=\"David Walsh\"/><br />David Walsh</a></td>\n   <td align=\"center\"><a href=\"https://github.com/IPv4Addr?ref=middleapi&amp;utm_source=middleapi&amp;utm_medium=sponsor\" target=\"_blank\" rel=\"noopener sponsored\" title=\"IPv4Addr\"><img src=\"https://avatars.githubusercontent.com/u/100147665?u=59996b72f69bb53063cb7e9ff8b8f898616cd94d&amp;v=4\" width=\"139\" alt=\"IPv4Addr\"/><br />IPv4Addr</a></td>\n   <td align=\"center\"><a href=\"https://robbevaes.be/?ref=middleapi&amp;utm_source=middleapi&amp;utm_medium=sponsor\" target=\"_blank\" rel=\"noopener sponsored\" title=\"Robbe Vaes\"><img src=\"https://avatars.githubusercontent.com/u/44748019?u=e0232402c045ad4eac7cbd217f1f47e083103b89&amp;v=4\" width=\"139\" alt=\"Robbe Vaes\"/><br />Robbe Vaes</a></td>\n   <td align=\"center\"><a href=\"https://github.com/aidansunbury?ref=middleapi&amp;utm_source=middleapi&amp;utm_medium=sponsor\" target=\"_blank\" rel=\"noopener sponsored\" title=\"Aidan Sunbury\"><img src=\"https://avatars.githubusercontent.com/u/64103161?v=4\" width=\"139\" alt=\"Aidan Sunbury\"/><br />Aidan Sunbury</a></td>\n   <td align=\"center\"><a href=\"https://github.com/soonoo?ref=middleapi&amp;utm_source=middleapi&amp;utm_medium=sponsor\" target=\"_blank\" rel=\"noopener sponsored\" title=\"soonoo\"><img src=\"https://avatars.githubusercontent.com/u/5436405?u=5d0b4aa955c87e30e6bda7f0cccae5402da99528&amp;v=4\" width=\"139\" alt=\"soonoo\"/><br />soonoo</a></td>\n   <td align=\"center\"><a href=\"https://kevinporten.dev/?ref=middleapi&amp;utm_source=middleapi&amp;utm_medium=sponsor\" target=\"_blank\" rel=\"noopener sponsored\" title=\"Kevin Porten\"><img src=\"https://avatars.githubusercontent.com/u/1839345?u=dc2263d5cfe0d927ce1a0be04a1d55dd6b55405c&amp;v=4\" width=\"139\" alt=\"Kevin Porten\"/><br />Kevin Porten</a></td>\n  </tr>\n  <tr>\n   <td align=\"center\"><a href=\"https://github.com/pumpkinlink?ref=middleapi&amp;utm_source=middleapi&amp;utm_medium=sponsor\" target=\"_blank\" rel=\"noopener sponsored\" title=\"Denis\"><img src=\"https://avatars.githubusercontent.com/u/11864620?u=5f47bbe6c65d0f6f5cf011021490238e4b0593d0&amp;v=4\" width=\"139\" alt=\"Denis\"/><br />Denis</a></td>\n   <td align=\"center\"><a href=\"https://github.com/christopher-kapic?ref=middleapi&amp;utm_source=middleapi&amp;utm_medium=sponsor\" target=\"_blank\" rel=\"noopener sponsored\" title=\"Christopher Kapic\"><img src=\"https://avatars.githubusercontent.com/u/59740769?u=e7ad4b72b5bf6c9eb1644c26dbf3332a8f987377&amp;v=4\" width=\"139\" alt=\"Christopher Kapic\"/><br />Christopher Kapic</a></td>\n   <td align=\"center\"><a href=\"http://ballingt.com/?ref=middleapi&amp;utm_source=middleapi&amp;utm_medium=sponsor\" target=\"_blank\" rel=\"noopener sponsored\" title=\"Tom Ballinger\"><img src=\"https://avatars.githubusercontent.com/u/458879?u=4b045ac75d721b6ac2b42a74d7d37f61f0414031&amp;v=4\" width=\"139\" alt=\"Tom Ballinger\"/><br />Tom Ballinger</a></td>\n   <td align=\"center\"><a href=\"https://lee-sam.com/?ref=middleapi&amp;utm_source=middleapi&amp;utm_medium=sponsor\" target=\"_blank\" rel=\"noopener sponsored\" title=\"Sam\"><img src=\"https://avatars.githubusercontent.com/u/102863520?u=3c89611f549d5070be232eb4532f690c8f2e7a65&amp;v=4\" width=\"139\" alt=\"Sam\"/><br />Sam</a></td>\n   <td align=\"center\"><a href=\"https://github.com/Titoine?ref=middleapi&amp;utm_source=middleapi&amp;utm_medium=sponsor\" target=\"_blank\" rel=\"noopener sponsored\" title=\"Titoine\"><img src=\"https://avatars.githubusercontent.com/u/3514286?u=1bb1e86b0c99c8a1121372e56d51a177eea12191&amp;v=4\" width=\"139\" alt=\"Titoine\"/><br />Titoine</a></td>\n   <td align=\"center\"><a href=\"https://rigtch.fm/?ref=middleapi&amp;utm_source=middleapi&amp;utm_medium=sponsor\" target=\"_blank\" rel=\"noopener sponsored\" title=\"Igor Makowski\"><img src=\"https://avatars.githubusercontent.com/u/56691628?u=ee8c879478f7c151b9156aef6c74243fa3e247a8&amp;v=4\" width=\"139\" alt=\"Igor Makowski\"/><br />Igor Makowski</a></td>\n  </tr>\n  <tr>\n   <td align=\"center\"><a href=\"https://blog.cwang.io/?ref=middleapi&amp;utm_source=middleapi&amp;utm_medium=sponsor\" target=\"_blank\" rel=\"noopener sponsored\" title=\"hanayashiki\"><img src=\"https://avatars.githubusercontent.com/u/26056783?u=06c3b9205a16fd41a871e82da1cc2a09306d53f5&amp;v=4\" width=\"139\" alt=\"hanayashiki\"/><br />hanayashiki</a></td>\n   <td align=\"center\"><a href=\"https://dubinets.io/?ref=middleapi&amp;utm_source=middleapi&amp;utm_medium=sponsor\" target=\"_blank\" rel=\"noopener sponsored\" title=\"Lev Dubinets\"><img src=\"https://avatars.githubusercontent.com/u/3114081?u=f547f5d5012cab54851f1b1ad72d10e537f78fc2&amp;v=4\" width=\"139\" alt=\"Lev Dubinets\"/><br />Lev Dubinets</a></td>\n   <td align=\"center\"><a href=\"https://kellychan.im/?ref=middleapi&amp;utm_source=middleapi&amp;utm_medium=sponsor\" target=\"_blank\" rel=\"noopener sponsored\" title=\"Kelly Peilin Chan\"><img src=\"https://avatars.githubusercontent.com/u/520852?u=6b0f7105f694e7b5cacf410a3f04c7044b469dc8&amp;v=4\" width=\"139\" alt=\"Kelly Peilin Chan\"/><br />Kelly Peilin Chan</a></td>\n   <td align=\"center\"><a href=\"https://guyariely.com/?ref=middleapi&amp;utm_source=middleapi&amp;utm_medium=sponsor\" target=\"_blank\" rel=\"noopener sponsored\" title=\"Guy Ariely\"><img src=\"https://avatars.githubusercontent.com/u/42813496?u=edb6b7f563bf28e160a290832e7da57c0506f8ca&amp;v=4\" width=\"139\" alt=\"Guy Ariely\"/><br />Guy Ariely</a></td>\n   <td align=\"center\"><a href=\"https://paulsenon.com/?ref=middleapi&amp;utm_source=middleapi&amp;utm_medium=sponsor\" target=\"_blank\" rel=\"noopener sponsored\" title=\"PaulSenon\"><img src=\"https://avatars.githubusercontent.com/u/19531087?u=6385741eb91d200b8c513ec6045482e301767ca6&amp;v=4\" width=\"139\" alt=\"PaulSenon\"/><br />PaulSenon</a></td>\n   <td align=\"center\"><a href=\"https://nakasyou.how/?ref=middleapi&amp;utm_source=middleapi&amp;utm_medium=sponsor\" target=\"_blank\" rel=\"noopener sponsored\" title=\"Shotaro Nakamura\"><img src=\"https://avatars.githubusercontent.com/u/79000684?u=f644df3f29f0e8677a90967115774564f1d9d6ab&amp;v=4\" width=\"139\" alt=\"Shotaro Nakamura\"/><br />Shotaro Nakamura</a></td>\n  </tr>\n  <tr>\n   <td align=\"center\"><a href=\"https://piscis.dev/?ref=middleapi&amp;utm_source=middleapi&amp;utm_medium=sponsor\" target=\"_blank\" rel=\"noopener sponsored\" title=\"Alex\"><img src=\"https://avatars.githubusercontent.com/u/326163?u=b245f368bd940cf51d08c0b6bf55f8257f359437&amp;v=4\" width=\"139\" alt=\"Alex\"/><br />Alex</a></td>\n   <td align=\"center\"><a href=\"https://opensource.gubanov.eu/?ref=middleapi&amp;utm_source=middleapi&amp;utm_medium=sponsor\" target=\"_blank\" rel=\"noopener sponsored\" title=\"Andrey Gubanov\"><img src=\"https://avatars.githubusercontent.com/u/1082083?u=c5f2daf7ebece498e85c83367bb37b4e10e2649d&amp;v=4\" width=\"139\" alt=\"Andrey Gubanov\"/><br />Andrey Gubanov</a></td>\n  </tr>\n</table>\n\nWith thanks to [39 past sponsors](https://htmlpreview.github.io/?https://github.com/middleapi/static/blob/main/sponsors.svg) who helped get us here.\n\n## Open Source Programs\n\n[middleapi](https://github.com/middleapi) is supported by these open source programs:\n\n<table>\n  <tr>\n   <td align=\"center\"><a href=\"https://claude.com/contact-sales/claude-for-oss\" target=\"_blank\" rel=\"noopener\" title=\"Claude for Open Source\"><img src=\"https://cdn.simpleicons.org/claude\" width=\"64\" alt=\"Claude\"/><br />Claude</a></td>\n   <td align=\"center\"><a href=\"https://pullfrog.com/for-oss\" target=\"_blank\" rel=\"noopener\" title=\"Pullfrog for OSS\"><img src=\"https://avatars.githubusercontent.com/in/1768019?s=128&amp;v=4\" width=\"64\" alt=\"Pullfrog\"/><br />Pullfrog</a></td>\n   <td align=\"center\"><a href=\"https://macroscope.com/open-source\" target=\"_blank\" rel=\"noopener\" title=\"Macroscope for Open Source\"><img src=\"https://avatars.githubusercontent.com/in/900172?s=128&amp;v=4\" width=\"64\" alt=\"Macroscope\"/><br />Macroscope</a></td>\n  </tr>\n</table>\n\n## License\n\nDistributed under the MIT License. See [LICENCE](https://github.com/middleapi/standard-server/blob/main/LICENCE) for more information.\n","readmeFilename":""}