[{"data":1,"prerenderedAt":837},["ShallowReactive",2],{"navigation":3,"-deploy-providers-heroku":389,"-deploy-providers-heroku-surround":832},[4,83,212,218,374,386],{"title":5,"path":6,"stem":7,"children":8,"icon":82},"","/docs","1.docs/1.index",[9,12,17,22,27,32,37,42,47,52,57,62,67,72,77],{"title":10,"path":6,"stem":7,"icon":11},"Introduction","i-lucide-compass",{"title":13,"path":14,"stem":15,"icon":16},"Quick Start","/docs/quick-start","1.docs/2.quick-start","i-lucide-zap",{"title":18,"path":19,"stem":20,"icon":21},"Renderer","/docs/renderer","1.docs/4.renderer","ri:layout-masonry-line",{"title":23,"path":24,"stem":25,"icon":26},"Routing","/docs/routing","1.docs/5.routing","ri:direction-line",{"title":28,"path":29,"stem":30,"icon":31},"Assets","/docs/assets","1.docs/50.assets","ri:image-2-line",{"title":33,"path":34,"stem":35,"icon":36},"Configuration","/docs/configuration","1.docs/50.configuration","ri:settings-3-line",{"title":38,"path":39,"stem":40,"icon":41},"Database","/docs/database","1.docs/50.database","ri:database-2-line",{"title":43,"path":44,"stem":45,"icon":46},"Lifecycle","/docs/lifecycle","1.docs/50.lifecycle","i-lucide-layers",{"title":48,"path":49,"stem":50,"icon":51},"Plugins","/docs/plugins","1.docs/50.plugins","ri:plug-line",{"title":53,"path":54,"stem":55,"icon":56},"Tasks","/docs/tasks","1.docs/50.tasks","codicon:run-all",{"title":58,"path":59,"stem":60,"icon":61},"Server Entry","/docs/server-entry","1.docs/6.server-entry","ri:server-line",{"title":63,"path":64,"stem":65,"icon":66},"Cache","/docs/cache","1.docs/7.cache","ri:speed-line",{"title":68,"path":69,"stem":70,"icon":71},"KV Storage","/docs/storage","1.docs/8.storage","carbon:datastore",{"title":73,"path":74,"stem":75,"icon":76},"Migration Guide","/docs/migration","1.docs/99.migration","ri:arrow-right-up-line",{"title":78,"path":79,"stem":80,"icon":81},"Nightly Channel","/docs/nightly","1.docs/99.nightly","ri:moon-fill","i-lucide-book-open",{"title":84,"path":85,"stem":86,"children":87,"icon":89},"Deploy","/deploy","2.deploy/0.index",[88,90,111],{"title":84,"path":85,"stem":86,"icon":89},"ri:upload-cloud-2-line",{"title":91,"path":92,"stem":93,"children":94,"page":110},"Runtimes","/deploy/runtimes","2.deploy/10.runtimes",[95,100,105],{"title":96,"path":97,"stem":98,"icon":99},"Node.js","/deploy/runtimes/node","2.deploy/10.runtimes/1.node","akar-icons:node-fill",{"title":101,"path":102,"stem":103,"icon":104},"Bun","/deploy/runtimes/bun","2.deploy/10.runtimes/bun","simple-icons:bun",{"title":106,"path":107,"stem":108,"icon":109},"Deno","/deploy/runtimes/deno","2.deploy/10.runtimes/deno","simple-icons:deno",false,{"title":112,"path":113,"stem":114,"children":115,"page":110},"Providers","/deploy/providers","2.deploy/20.providers",[116,120,124,128,132,136,140,144,148,152,156,160,164,168,172,176,180,184,188,192,196,200,204,208],{"title":117,"path":118,"stem":119},"Alwaysdata","/deploy/providers/alwaysdata","2.deploy/20.providers/alwaysdata",{"title":121,"path":122,"stem":123},"AWS Lambda","/deploy/providers/aws","2.deploy/20.providers/aws",{"title":125,"path":126,"stem":127},"AWS Amplify","/deploy/providers/aws-amplify","2.deploy/20.providers/aws-amplify",{"title":129,"path":130,"stem":131},"Azure","/deploy/providers/azure","2.deploy/20.providers/azure",{"title":133,"path":134,"stem":135},"Cleavr","/deploy/providers/cleavr","2.deploy/20.providers/cleavr",{"title":137,"path":138,"stem":139},"Cloudflare","/deploy/providers/cloudflare","2.deploy/20.providers/cloudflare",{"title":141,"path":142,"stem":143},"Deno Deploy","/deploy/providers/deno-deploy","2.deploy/20.providers/deno-deploy",{"title":145,"path":146,"stem":147},"DigitalOcean","/deploy/providers/digitalocean","2.deploy/20.providers/digitalocean",{"title":149,"path":150,"stem":151},"Firebase","/deploy/providers/firebase","2.deploy/20.providers/firebase",{"title":153,"path":154,"stem":155},"Flightcontrol","/deploy/providers/flightcontrol","2.deploy/20.providers/flightcontrol",{"title":157,"path":158,"stem":159},"Genezio","/deploy/providers/genezio","2.deploy/20.providers/genezio",{"title":161,"path":162,"stem":163},"GitHub Pages","/deploy/providers/github-pages","2.deploy/20.providers/github-pages",{"title":165,"path":166,"stem":167},"GitLab Pages","/deploy/providers/gitlab-pages","2.deploy/20.providers/gitlab-pages",{"title":169,"path":170,"stem":171},"Heroku","/deploy/providers/heroku","2.deploy/20.providers/heroku",{"title":173,"path":174,"stem":175},"IIS","/deploy/providers/iis","2.deploy/20.providers/iis",{"title":177,"path":178,"stem":179},"Koyeb","/deploy/providers/koyeb","2.deploy/20.providers/koyeb",{"title":181,"path":182,"stem":183},"Netlify","/deploy/providers/netlify","2.deploy/20.providers/netlify",{"title":185,"path":186,"stem":187},"Platform.sh","/deploy/providers/platform-sh","2.deploy/20.providers/platform-sh",{"title":189,"path":190,"stem":191},"Render.com","/deploy/providers/render","2.deploy/20.providers/render",{"title":193,"path":194,"stem":195},"StormKit","/deploy/providers/stormkit","2.deploy/20.providers/stormkit",{"title":197,"path":198,"stem":199},"Vercel","/deploy/providers/vercel","2.deploy/20.providers/vercel",{"title":201,"path":202,"stem":203},"Zeabur","/deploy/providers/zeabur","2.deploy/20.providers/zeabur",{"title":205,"path":206,"stem":207},"Zephyr Cloud","/deploy/providers/zephyr","2.deploy/20.providers/zephyr",{"title":209,"path":210,"stem":211},"Zerops","/deploy/providers/zerops","2.deploy/20.providers/zerops",{"title":213,"path":214,"stem":215,"children":216,"icon":36},"Config","/config","3.config/0.index",[217],{"title":213,"path":214,"stem":215,"icon":36},{"title":219,"path":220,"stem":221,"children":222,"icon":224},"Examples","/examples","4.examples/0.index",[223,225,230,235,240,245,249,254,259,264,269,274,279,283,288,292,296,301,306,311,316,321,326,331,336,341,345,350,355,359,364,369],{"title":219,"path":220,"stem":221,"icon":224},"i-lucide-folder-code",{"title":226,"path":227,"stem":228,"icon":229},"API Routes","/examples/api-routes","4.examples/api-routes","i-lucide-route",{"title":231,"path":232,"stem":233,"icon":234},"Auto Imports","/examples/auto-imports","4.examples/auto-imports","i-lucide-import",{"title":236,"path":237,"stem":238,"icon":239},"Cached Handler","/examples/cached-handler","4.examples/cached-handler","i-lucide-clock",{"title":241,"path":242,"stem":243,"icon":244},"Custom Error Handler","/examples/custom-error-handler","4.examples/custom-error-handler","i-lucide-alert-circle",{"title":38,"path":246,"stem":247,"icon":248},"/examples/database","4.examples/database","i-lucide-database",{"title":250,"path":251,"stem":252,"icon":253},"Elysia","/examples/elysia","4.examples/elysia","i-skill-icons-elysia-dark",{"title":255,"path":256,"stem":257,"icon":258},"Express","/examples/express","4.examples/express","i-simple-icons-express",{"title":260,"path":261,"stem":262,"icon":263},"Fastify","/examples/fastify","4.examples/fastify","i-simple-icons-fastify",{"title":265,"path":266,"stem":267,"icon":268},"Hello World","/examples/hello-world","4.examples/hello-world","i-lucide-sparkles",{"title":270,"path":271,"stem":272,"icon":273},"Hono","/examples/hono","4.examples/hono","i-logos-hono",{"title":275,"path":276,"stem":277,"icon":278},"Import Alias","/examples/import-alias","4.examples/import-alias","i-lucide-at-sign",{"title":280,"path":281,"stem":282,"icon":46},"Middleware","/examples/middleware","4.examples/middleware",{"title":284,"path":285,"stem":286,"icon":287},"Mono JSX","/examples/mono-jsx","4.examples/mono-jsx","i-lucide-brackets",{"title":289,"path":290,"stem":291,"icon":287},"Nano JSX","/examples/nano-jsx","4.examples/nano-jsx",{"title":48,"path":293,"stem":294,"icon":295},"/examples/plugins","4.examples/plugins","i-lucide-plug",{"title":297,"path":298,"stem":299,"icon":300},"Custom Renderer","/examples/renderer","4.examples/renderer","i-lucide-code",{"title":302,"path":303,"stem":304,"icon":305},"Runtime Config","/examples/runtime-config","4.examples/runtime-config","i-lucide-settings",{"title":307,"path":308,"stem":309,"icon":310},"Server Fetch","/examples/server-fetch","4.examples/server-fetch","i-lucide-arrow-right-left",{"title":312,"path":313,"stem":314,"icon":315},"Shiki","/examples/shiki","4.examples/shiki","i-lucide-highlighter",{"title":317,"path":318,"stem":319,"icon":320},"Virtual Routes","/examples/virtual-routes","4.examples/virtual-routes","i-lucide-box",{"title":322,"path":323,"stem":324,"icon":325},"Vite Nitro Plugin","/examples/vite-nitro-plugin","4.examples/vite-nitro-plugin","i-logos-vitejs",{"title":327,"path":328,"stem":329,"icon":330},"Vite RSC","/examples/vite-rsc","4.examples/vite-rsc","i-logos-react",{"title":332,"path":333,"stem":334,"icon":335},"Vite SSR HTML","/examples/vite-ssr-html","4.examples/vite-ssr-html","i-logos-html-5",{"title":337,"path":338,"stem":339,"icon":340},"SSR with Preact","/examples/vite-ssr-preact","4.examples/vite-ssr-preact","i-logos-preact",{"title":342,"path":343,"stem":344,"icon":330},"SSR with React","/examples/vite-ssr-react","4.examples/vite-ssr-react",{"title":346,"path":347,"stem":348,"icon":349},"SSR with SolidJS","/examples/vite-ssr-solid","4.examples/vite-ssr-solid","i-logos-solidjs-icon",{"title":351,"path":352,"stem":353,"icon":354},"SSR with TanStack Router","/examples/vite-ssr-tsr-react","4.examples/vite-ssr-tsr-react","i-simple-icons-tanstack",{"title":356,"path":357,"stem":358,"icon":354},"SSR with TanStack Start","/examples/vite-ssr-tss-react","4.examples/vite-ssr-tss-react",{"title":360,"path":361,"stem":362,"icon":363},"SSR with Vue Router","/examples/vite-ssr-vue-router","4.examples/vite-ssr-vue-router","i-logos-vue",{"title":365,"path":366,"stem":367,"icon":368},"Vite + tRPC","/examples/vite-trpc","4.examples/vite-trpc","i-simple-icons-trpc",{"title":370,"path":371,"stem":372,"icon":373},"WebSocket","/examples/websocket","4.examples/websocket","i-lucide-radio",{"title":375,"path":376,"stem":377,"children":378},"Blog","/blog","9.blog",[379,382],{"title":375,"path":376,"stem":380,"icon":381},"9.blog/index","i-lucide-file-text",{"title":383,"path":384,"stem":385,"icon":381},"Nitro v3 Beta is here!","/blog/v3-beta","9.blog/1.v3-beta",{"title":5,"path":387,"stem":388},"/","index",{"id":390,"title":169,"body":391,"description":826,"extension":827,"meta":828,"navigation":829,"path":170,"seo":830,"stem":171,"__hash__":831},"content/2.deploy/20.providers/heroku.md",{"type":392,"value":393,"toc":822},"minimark",[394,406,411,416,550,554,818],[395,396,397,401,402],"p",{},[398,399,400],"strong",{},"Preset:"," ",[403,404,405],"code",{},"heroku",[407,408],"read-more",{"title":409,"to":410},"heroku.com","https://heroku.com/",[412,413,415],"h2",{"id":414},"using-the-heroku-cli","Using the heroku CLI",[417,418,420,447,465,483],"steps",{"level":419},"4",[421,422,423,424],"h4",{},"Create a new Heroku app.",[425,426,430],"pre",{"className":427,"code":428,"language":429,"meta":5,"style":5},"language-bash shiki shiki-themes github-light github-dark github-dark","heroku create myapp\n","bash",[403,431,432],{"__ignoreMap":5},[433,434,437,440,444],"span",{"class":435,"line":436},"line",1,[433,438,405],{"class":439},"shcOC",[433,441,443],{"class":442},"sfrk1"," create",[433,445,446],{"class":442}," myapp\n",[421,448,449,450],{},"Configure Heroku to use the nodejs buildpack.",[425,451,453],{"className":427,"code":452,"language":429,"meta":5,"style":5},"heroku buildpacks:set heroku/nodejs\n",[403,454,455],{"__ignoreMap":5},[433,456,457,459,462],{"class":435,"line":436},[433,458,405],{"class":439},[433,460,461],{"class":442}," buildpacks:set",[433,463,464],{"class":442}," heroku/nodejs\n",[421,466,467,468],{},"Configure your app.",[425,469,471],{"className":427,"code":470,"language":429,"meta":5,"style":5},"heroku config:set NITRO_PRESET=heroku\n",[403,472,473],{"__ignoreMap":5},[433,474,475,477,480],{"class":435,"line":436},[433,476,405],{"class":439},[433,478,479],{"class":442}," config:set",[433,481,482],{"class":442}," NITRO_PRESET=heroku\n",[421,484,485,486,489,490,493,494,497,498],{},"Ensure you have ",[403,487,488],{},"start"," and ",[403,491,492],{},"build"," commands in your ",[403,495,496],{},"package.json"," file.",[425,499,503],{"className":500,"code":501,"language":502,"meta":5,"style":5},"language-json5 shiki shiki-themes github-light github-dark github-dark","\"scripts\": {\n  \"build\": \"nitro build\", // or `nuxt build` if using nuxt\n  \"start\": \"node .output/server/index.mjs\"\n}\n","json5",[403,504,505,514,533,544],{"__ignoreMap":5},[433,506,507,510],{"class":435,"line":436},[433,508,509],{"class":442},"\"scripts\"",[433,511,513],{"class":512},"slsVL",": {\n",[433,515,517,520,523,526,529],{"class":435,"line":516},2,[433,518,519],{"class":442},"  \"build\"",[433,521,522],{"class":512},": ",[433,524,525],{"class":442},"\"nitro build\"",[433,527,528],{"class":512},", ",[433,530,532],{"class":531},"sCsY4","// or `nuxt build` if using nuxt\n",[433,534,536,539,541],{"class":435,"line":535},3,[433,537,538],{"class":442},"  \"start\"",[433,540,522],{"class":512},[433,542,543],{"class":442},"\"node .output/server/index.mjs\"\n",[433,545,547],{"class":435,"line":546},4,[433,548,549],{"class":512},"}\n",[412,551,553],{"id":552},"with-nginx","With nginx",[417,555,556,566,602,613,700,809,815],{"level":419},[421,557,558,559],{},"Add the heroku Nginx buildpack ",[560,561,565],"a",{"href":562,"rel":563},"https://github.com/heroku/heroku-buildpack-nginx.git",[564],"nofollow","here",[421,567,568,569,572],{},"Change to the 'node' preset in your ",[403,570,571],{},"nitro.config",[425,573,575],{"className":500,"code":574,"language":502,"meta":5,"style":5},"\"nitro\": {\n   \"preset\":\"node\",\n}\n",[403,576,577,584,598],{"__ignoreMap":5},[433,578,579,582],{"class":435,"line":436},[433,580,581],{"class":442},"\"nitro\"",[433,583,513],{"class":512},[433,585,586,589,592,595],{"class":435,"line":516},[433,587,588],{"class":442},"   \"preset\"",[433,590,591],{"class":512},":",[433,593,594],{"class":442},"\"node\"",[433,596,597],{"class":512},",\n",[433,599,600],{"class":435,"line":535},[433,601,549],{"class":512},[421,603,604,605,608,609,612],{},"From the ",[398,606,607],{},"Existing app"," section of buildpack doc, 2 key steps are required to get things running",[610,611],"br",{},"Step 1: Listen on a socket at 'tmp/nginx.socket'\nStep 2: Create a file '/tmp/app-initialized' when your app is ready to accept connections",[421,614,615,616],{},"Create custom app runner, eg: apprunner.mjs at the root of the project (or any other preferred location), in this file, create a server, using the listener generated by the node preset, then listen on the socket as detailed in the buildpack doc",[425,617,621],{"className":618,"code":619,"language":620,"meta":5,"style":5},"language-ts shiki shiki-themes github-light github-dark github-dark","import { createServer } from 'node:http'\nimport { listener } from './.output/server/index.mjs'\n\nconst server = createServer(listener)\n\nserver.listen('/tmp/nginx.socket') //following the buildpack doc\n","ts",[403,622,623,638,650,656,674,679],{"__ignoreMap":5},[433,624,625,629,632,635],{"class":435,"line":436},[433,626,628],{"class":627},"so5gQ","import",[433,630,631],{"class":512}," { createServer } ",[433,633,634],{"class":627},"from",[433,636,637],{"class":442}," 'node:http'\n",[433,639,640,642,645,647],{"class":435,"line":516},[433,641,628],{"class":627},[433,643,644],{"class":512}," { listener } ",[433,646,634],{"class":627},[433,648,649],{"class":442}," './.output/server/index.mjs'\n",[433,651,652],{"class":435,"line":535},[433,653,655],{"emptyLinePlaceholder":654},true,"\n",[433,657,658,661,665,668,671],{"class":435,"line":546},[433,659,660],{"class":627},"const",[433,662,664],{"class":663},"suiK_"," server",[433,666,667],{"class":627}," =",[433,669,670],{"class":439}," createServer",[433,672,673],{"class":512},"(listener)\n",[433,675,677],{"class":435,"line":676},5,[433,678,655],{"emptyLinePlaceholder":654},[433,680,682,685,688,691,694,697],{"class":435,"line":681},6,[433,683,684],{"class":512},"server.",[433,686,687],{"class":439},"listen",[433,689,690],{"class":512},"(",[433,692,693],{"class":442},"'/tmp/nginx.socket'",[433,695,696],{"class":512},") ",[433,698,699],{"class":531},"//following the buildpack doc\n",[421,701,702,703],{},"To create the 'tmp/app-initialized' file, use a nitro plugin, create file 'initServer.ts' at the root of the project (or any other preferred location)",[425,704,706],{"className":618,"code":705,"language":620,"meta":5,"style":5},"import fs from \"fs\"\n\nexport default definePlugin((nitroApp) => {\n   if((process.env.NODE_ENV || 'development') != 'development') {\n      fs.openSync('/tmp/app-initialized', 'w')\n   }\n})\n",[403,707,708,720,724,750,777,798,803],{"__ignoreMap":5},[433,709,710,712,715,717],{"class":435,"line":436},[433,711,628],{"class":627},[433,713,714],{"class":512}," fs ",[433,716,634],{"class":627},[433,718,719],{"class":442}," \"fs\"\n",[433,721,722],{"class":435,"line":516},[433,723,655],{"emptyLinePlaceholder":654},[433,725,726,729,732,735,738,742,744,747],{"class":435,"line":535},[433,727,728],{"class":627},"export",[433,730,731],{"class":627}," default",[433,733,734],{"class":439}," definePlugin",[433,736,737],{"class":512},"((",[433,739,741],{"class":740},"sQHwn","nitroApp",[433,743,696],{"class":512},[433,745,746],{"class":627},"=>",[433,748,749],{"class":512}," {\n",[433,751,752,755,758,761,764,767,769,772,774],{"class":435,"line":546},[433,753,754],{"class":627},"   if",[433,756,757],{"class":512},"((process.env.",[433,759,760],{"class":663},"NODE_ENV",[433,762,763],{"class":627}," ||",[433,765,766],{"class":442}," 'development'",[433,768,696],{"class":512},[433,770,771],{"class":627},"!=",[433,773,766],{"class":442},[433,775,776],{"class":512},") {\n",[433,778,779,782,785,787,790,792,795],{"class":435,"line":676},[433,780,781],{"class":512},"      fs.",[433,783,784],{"class":439},"openSync",[433,786,690],{"class":512},[433,788,789],{"class":442},"'/tmp/app-initialized'",[433,791,528],{"class":512},[433,793,794],{"class":442},"'w'",[433,796,797],{"class":512},")\n",[433,799,800],{"class":435,"line":681},[433,801,802],{"class":512},"   }\n",[433,804,806],{"class":435,"line":805},7,[433,807,808],{"class":512},"})\n",[421,810,811,812,814],{},"Finally, create file 'Procfile' at the root of the project, with the Procfile, we tell heroku to start nginx and use the custom apprunner.mjs to start the server",[610,813],{},"web: bin/start-nginx node apprunner.mjs",[421,816,817],{},"Bonus: create file 'config/nginx.conf.erb' to customize your nginx config. With the node preset, by default, static files handlers will not be generated, you can use nginx to server static files, just add the right location rule to the server block(s), or, force the node preset to generate handlers for the static files by setting serveStatic to true.",[819,820,821],"style",{},"html pre.shiki code .shcOC, html code.shiki .shcOC{--shiki-light:#6F42C1;--shiki-default:#B392F0;--shiki-dark:#B392F0}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 .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 .suiK_, html code.shiki .suiK_{--shiki-light:#005CC5;--shiki-default:#79B8FF;--shiki-dark:#79B8FF}html pre.shiki code .sCsY4, html code.shiki .sCsY4{--shiki-light:#6A737D;--shiki-default:#6A737D;--shiki-dark:#6A737D}html pre.shiki code .sQHwn, html code.shiki .sQHwn{--shiki-light:#E36209;--shiki-default:#FFAB70;--shiki-dark:#FFAB70}",{"title":5,"searchDepth":516,"depth":516,"links":823},[824,825],{"id":414,"depth":516,"text":415},{"id":552,"depth":516,"text":553},"Deploy Nitro apps to Heroku.","md",{},{},{"title":169,"description":826},"unaLiamXziImW1Hcdmmq2h7hKgHH4znXJ00z3YAUexg",[833,835],{"title":165,"path":166,"stem":167,"description":834,"children":-1},"Deploy Nitro apps to GitLab Pages.",{"title":173,"path":174,"stem":175,"description":836,"children":-1},"Deploy Nitro apps to IIS.",1775148787615]