[{"data":1,"prerenderedAt":721},["ShallowReactive",2],{"navigation":3,"-guide":51,"-guide-surround":717},[4],{"title":5,"path":6,"stem":7,"children":8,"icon":10},"Getting Started","/guide","1.guide/1.index",[9,11,16,21,26,31,36,41,46],{"title":5,"path":6,"stem":7,"icon":10},"ph:book-open-duotone",{"title":12,"path":13,"stem":14,"icon":15},"Fetch Handler","/guide/handler","1.guide/2.handler","i-fluent:target-24-regular",{"title":17,"path":18,"stem":19,"icon":20},"Server Instance","/guide/server","1.guide/3.server","radix-icons:component-instance",{"title":22,"path":23,"stem":24,"icon":25},"Middleware","/guide/middleware","1.guide/4.middleware","clarity:plugin-line",{"title":27,"path":28,"stem":29,"icon":30},"Server Options","/guide/options","1.guide/5.options","ri:settings-3-line",{"title":32,"path":33,"stem":34,"icon":35},"Bundler Usage","/guide/bundler","1.guide/6.bundler","clarity:bundle-line",{"title":37,"path":38,"stem":39,"icon":40},"Node.js Support","/guide/node","1.guide/7.node","akar-icons:node-fill",{"title":42,"path":43,"stem":44,"icon":45},"AWS Lambda","/guide/aws-lambda","1.guide/8.aws-lambda","clarity:cloud-traffic-line",{"title":47,"path":48,"stem":49,"icon":50},"Using CLI","/guide/cli","1.guide/9.cli","garden:terminal-cli-stroke-12",{"id":52,"title":5,"body":53,"description":711,"extension":712,"meta":713,"navigation":714,"path":6,"seo":715,"stem":7,"__hash__":716},"content/1.guide/1.index.md",{"type":54,"value":55,"toc":706,"icon":10},"minimark",[56,61,65,149,152,233,237,250,254,265,267,348,354,357,359,409,413,702],[57,58,60],"h2",{"id":59},"quick-start-cli","Quick Start (CLI)",[62,63,64],"p",{},"Create a server entry:",[66,67,73],"pre",{"className":68,"code":69,"filename":70,"language":71,"meta":72,"style":72},"language-js shiki shiki-themes github-light github-dark github-dark","export default {\n  fetch(req: Request) {\n    return Response.json({ hello: \"world!\" });\n  },\n};\n","server.ts","js","",[74,75,76,92,115,137,143],"code",{"__ignoreMap":72},[77,78,81,85,88],"span",{"class":79,"line":80},"line",1,[77,82,84],{"class":83},"so5gQ","export",[77,86,87],{"class":83}," default",[77,89,91],{"class":90},"slsVL"," {\n",[77,93,95,99,102,106,109,112],{"class":79,"line":94},2,[77,96,98],{"class":97},"shcOC","  fetch",[77,100,101],{"class":90},"(",[77,103,105],{"class":104},"sQHwn","req",[77,107,108],{"class":83},":",[77,110,111],{"class":97}," Request",[77,113,114],{"class":90},") {\n",[77,116,118,121,124,127,130,134],{"class":79,"line":117},3,[77,119,120],{"class":83},"    return",[77,122,123],{"class":90}," Response.",[77,125,126],{"class":97},"json",[77,128,129],{"class":90},"({ hello: ",[77,131,133],{"class":132},"sfrk1","\"world!\"",[77,135,136],{"class":90}," });\n",[77,138,140],{"class":79,"line":139},4,[77,141,142],{"class":90},"  },\n",[77,144,146],{"class":79,"line":145},5,[77,147,148],{"class":90},"};\n",[62,150,151],{},"Then, run the server using your favorite runtime:",[153,154,155,171,184,199,217],"CodeGroup",{},[66,156,161],{"className":157,"code":158,"filename":159,"language":160,"meta":72,"style":72},"language-bash shiki shiki-themes github-light github-dark github-dark","npx srvx\n","npm","bash",[74,162,163],{"__ignoreMap":72},[77,164,165,168],{"class":79,"line":80},[77,166,167],{"class":97},"npx",[77,169,170],{"class":132}," srvx\n",[66,172,175],{"className":157,"code":173,"filename":174,"language":160,"meta":72,"style":72},"pnpx srvx\n","pnpm",[74,176,177],{"__ignoreMap":72},[77,178,179,182],{"class":79,"line":80},[77,180,181],{"class":97},"pnpx",[77,183,170],{"class":132},[66,185,188],{"className":157,"code":186,"filename":187,"language":160,"meta":72,"style":72},"yarn dlx srvx\n","yarn",[74,189,190],{"__ignoreMap":72},[77,191,192,194,197],{"class":79,"line":80},[77,193,187],{"class":97},[77,195,196],{"class":132}," dlx",[77,198,170],{"class":132},[66,200,203],{"className":157,"code":201,"filename":202,"language":160,"meta":72,"style":72},"deno -A npm:srvx\n","Deno",[74,204,205],{"__ignoreMap":72},[77,206,207,210,214],{"class":79,"line":80},[77,208,209],{"class":97},"deno",[77,211,213],{"class":212},"suiK_"," -A",[77,215,216],{"class":132}," npm:srvx\n",[66,218,221],{"className":157,"code":219,"filename":220,"language":160,"meta":72,"style":72},"bunx --bun srvx\n","Bun",[74,222,223],{"__ignoreMap":72},[77,224,225,228,231],{"class":79,"line":80},[77,226,227],{"class":97},"bunx",[77,229,230],{"class":212}," --bun",[77,232,170],{"class":132},[234,235],"read-more",{"title":47,"to":236},"/guide/cli#usage",[238,239,240],"tip",{},[62,241,242,243],{},"\nYou can also try examples in the ",[244,245,249],"a",{"href":246,"rel":247},"https://stackblitz.com/fork/github/h3js/srvx/tree/main/examples/stackblitz?startScript=dev&file=server.mjs",[248],"nofollow","online playground",[57,251,253],{"id":252},"quick-start-api","Quick Start (API)",[62,255,256,257,260,261,264],{},"Instead of using the ",[74,258,259],{},"srvx"," CLI, you can directly import the ",[74,262,263],{},"serve"," method to define a self-listening server entry.",[62,266,64],{},[66,268,270],{"className":68,"code":269,"filename":70,"language":71,"meta":72,"style":72},"import { serve } from \"srvx\";\n\nconst server = serve({\n  fetch(request) {\n    return Response.json({ hello: \"world!\" });\n  },\n});\n",[74,271,272,289,295,312,323,337,342],{"__ignoreMap":72},[77,273,274,277,280,283,286],{"class":79,"line":80},[77,275,276],{"class":83},"import",[77,278,279],{"class":90}," { serve } ",[77,281,282],{"class":83},"from",[77,284,285],{"class":132}," \"srvx\"",[77,287,288],{"class":90},";\n",[77,290,291],{"class":79,"line":94},[77,292,294],{"emptyLinePlaceholder":293},true,"\n",[77,296,297,300,303,306,309],{"class":79,"line":117},[77,298,299],{"class":83},"const",[77,301,302],{"class":212}," server",[77,304,305],{"class":83}," =",[77,307,308],{"class":97}," serve",[77,310,311],{"class":90},"({\n",[77,313,314,316,318,321],{"class":79,"line":139},[77,315,98],{"class":97},[77,317,101],{"class":90},[77,319,320],{"class":104},"request",[77,322,114],{"class":90},[77,324,325,327,329,331,333,335],{"class":79,"line":145},[77,326,120],{"class":83},[77,328,123],{"class":90},[77,330,126],{"class":97},[77,332,129],{"class":90},[77,334,133],{"class":132},[77,336,136],{"class":90},[77,338,340],{"class":79,"line":339},6,[77,341,142],{"class":90},[77,343,345],{"class":79,"line":344},7,[77,346,347],{"class":90},"});\n",[62,349,350,351,353],{},"Install ",[74,352,259],{}," as a dependency:",[355,356],"pm-install",{"name":259},[62,358,151],{},[360,361,362,375,395],"code-group",{},[66,363,366],{"className":157,"code":364,"filename":365,"language":160,"meta":72,"style":72},"node server.mjs\n","node",[74,367,368],{"__ignoreMap":72},[77,369,370,372],{"class":79,"line":80},[77,371,365],{"class":97},[77,373,374],{"class":132}," server.mjs\n",[66,376,378],{"className":157,"code":377,"filename":209,"language":160,"meta":72,"style":72},"deno run --allow-env --allow-net server.mjs\n",[74,379,380],{"__ignoreMap":72},[77,381,382,384,387,390,393],{"class":79,"line":80},[77,383,209],{"class":97},[77,385,386],{"class":132}," run",[77,388,389],{"class":212}," --allow-env",[77,391,392],{"class":212}," --allow-net",[77,394,374],{"class":132},[66,396,399],{"className":157,"code":397,"filename":398,"language":160,"meta":72,"style":72},"bun run server.mjs\n","bun",[74,400,401],{"__ignoreMap":72},[77,402,403,405,407],{"class":79,"line":80},[77,404,398],{"class":97},[77,406,386],{"class":132},[77,408,374],{"class":132},[57,410,412],{"id":411},"starter-examples","Starter Examples",[414,415,416,432],"table",{},[417,418,419],"thead",{},[420,421,422,426,429],"tr",{},[423,424,425],"th",{},"Example",[423,427,428],{},"Source",[423,430,431],{},"Try",[433,434,435,455,474,493,512,531,550,569,588,607,626,645,664,683],"tbody",{},[420,436,437,443,450],{},[438,439,440],"td",{},[74,441,442],{},"aws-lambda",[438,444,445],{},[244,446,449],{"href":447,"rel":448},"https://github.com/h3js/srvx/tree/main/examples/aws-lambda/",[248],"examples/aws-lambda",[438,451,452],{},[74,453,454],{},"npx giget gh:h3js/srvx/examples/aws-lambda srvx-aws-lambda",[420,456,457,462,469],{},[438,458,459],{},[74,460,461],{},"bunny",[438,463,464],{},[244,465,468],{"href":466,"rel":467},"https://github.com/h3js/srvx/tree/main/examples/bunny/",[248],"examples/bunny",[438,470,471],{},[74,472,473],{},"npx giget gh:h3js/srvx/examples/bunny srvx-bunny",[420,475,476,481,488],{},[438,477,478],{},[74,479,480],{},"elysia",[438,482,483],{},[244,484,487],{"href":485,"rel":486},"https://github.com/h3js/srvx/tree/main/examples/elysia/",[248],"examples/elysia",[438,489,490],{},[74,491,492],{},"npx giget gh:h3js/srvx/examples/elysia srvx-elysia",[420,494,495,500,507],{},[438,496,497],{},[74,498,499],{},"express",[438,501,502],{},[244,503,506],{"href":504,"rel":505},"https://github.com/h3js/srvx/tree/main/examples/express/",[248],"examples/express",[438,508,509],{},[74,510,511],{},"npx giget gh:h3js/srvx/examples/express srvx-express",[420,513,514,519,526],{},[438,515,516],{},[74,517,518],{},"fastify",[438,520,521],{},[244,522,525],{"href":523,"rel":524},"https://github.com/h3js/srvx/tree/main/examples/fastify/",[248],"examples/fastify",[438,527,528],{},[74,529,530],{},"npx giget gh:h3js/srvx/examples/fastify srvx-fastify",[420,532,533,538,545],{},[438,534,535],{},[74,536,537],{},"h3",[438,539,540],{},[244,541,544],{"href":542,"rel":543},"https://github.com/h3js/srvx/tree/main/examples/h3/",[248],"examples/h3",[438,546,547],{},[74,548,549],{},"npx giget gh:h3js/srvx/examples/h3 srvx-h3",[420,551,552,557,564],{},[438,553,554],{},[74,555,556],{},"hello-world",[438,558,559],{},[244,560,563],{"href":561,"rel":562},"https://github.com/h3js/srvx/tree/main/examples/hello-world/",[248],"examples/hello-world",[438,565,566],{},[74,567,568],{},"npx giget gh:h3js/srvx/examples/hello-world srvx-hello-world",[420,570,571,576,583],{},[438,572,573],{},[74,574,575],{},"hono",[438,577,578],{},[244,579,582],{"href":580,"rel":581},"https://github.com/h3js/srvx/tree/main/examples/hono/",[248],"examples/hono",[438,584,585],{},[74,586,587],{},"npx giget gh:h3js/srvx/examples/hono srvx-hono",[420,589,590,595,602],{},[438,591,592],{},[74,593,594],{},"jsx",[438,596,597],{},[244,598,601],{"href":599,"rel":600},"https://github.com/h3js/srvx/tree/main/examples/jsx/",[248],"examples/jsx",[438,603,604],{},[74,605,606],{},"npx giget gh:h3js/srvx/examples/jsx srvx-jsx",[420,608,609,614,621],{},[438,610,611],{},[74,612,613],{},"node-handler",[438,615,616],{},[244,617,620],{"href":618,"rel":619},"https://github.com/h3js/srvx/tree/main/examples/node-handler/",[248],"examples/node-handler",[438,622,623],{},[74,624,625],{},"npx giget gh:h3js/srvx/examples/node-handler srvx-node-handler",[420,627,628,633,640],{},[438,629,630],{},[74,631,632],{},"service-worker",[438,634,635],{},[244,636,639],{"href":637,"rel":638},"https://github.com/h3js/srvx/tree/main/examples/service-worker/",[248],"examples/service-worker",[438,641,642],{},[74,643,644],{},"npx giget gh:h3js/srvx/examples/service-worker srvx-service-worker",[420,646,647,652,659],{},[438,648,649],{},[74,650,651],{},"streaming",[438,653,654],{},[244,655,658],{"href":656,"rel":657},"https://github.com/h3js/srvx/tree/main/examples/streaming/",[248],"examples/streaming",[438,660,661],{},[74,662,663],{},"npx giget gh:h3js/srvx/examples/streaming srvx-streaming",[420,665,666,671,678],{},[438,667,668],{},[74,669,670],{},"tracing",[438,672,673],{},[244,674,677],{"href":675,"rel":676},"https://github.com/h3js/srvx/tree/main/examples/tracing/",[248],"examples/tracing",[438,679,680],{},[74,681,682],{},"npx giget gh:h3js/srvx/examples/tracing srvx-tracing",[420,684,685,690,697],{},[438,686,687],{},[74,688,689],{},"websocket",[438,691,692],{},[244,693,696],{"href":694,"rel":695},"https://github.com/h3js/srvx/tree/main/examples/websocket/",[248],"examples/websocket",[438,698,699],{},[74,700,701],{},"npx giget gh:h3js/srvx/examples/websocket srvx-websocket",[703,704,705],"style",{},"html pre.shiki code .so5gQ, html code.shiki .so5gQ{--shiki-light:#D73A49;--shiki-default:#F97583;--shiki-dark:#F97583}html pre.shiki code .slsVL, html code.shiki .slsVL{--shiki-light:#24292E;--shiki-default:#E1E4E8;--shiki-dark:#E1E4E8}html pre.shiki code .shcOC, html code.shiki .shcOC{--shiki-light:#6F42C1;--shiki-default:#B392F0;--shiki-dark:#B392F0}html pre.shiki code .sQHwn, html code.shiki .sQHwn{--shiki-light:#E36209;--shiki-default:#FFAB70;--shiki-dark:#FFAB70}html pre.shiki code .sfrk1, html code.shiki .sfrk1{--shiki-light:#032F62;--shiki-default:#9ECBFF;--shiki-dark:#9ECBFF}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .suiK_, html code.shiki .suiK_{--shiki-light:#005CC5;--shiki-default:#79B8FF;--shiki-dark:#79B8FF}",{"title":72,"searchDepth":94,"depth":94,"links":707},[708,709,710],{"id":59,"depth":94,"text":60},{"id":252,"depth":94,"text":253},{"id":411,"depth":94,"text":412},"Build HTTP servers with web standard APIs like fetch, Request, and Response.","md",{"automd":293,"icon":10},{"icon":10},{"title":5,"description":711},"UK4mNRkCttQ3ctAYBVkioIN4xFa6XxXB_M8kExHkQXw",[718,719],null,{"title":12,"path":13,"stem":14,"description":720,"icon":15,"children":-1},"Get familiar with srvx fetch server handler and ServerRequest.",1771317513503]