[{"data":1,"prerenderedAt":965},["ShallowReactive",2],{"navigation":3,"-deploy-providers-zerops":402,"-deploy-providers-zerops-surround":961},[4,93,226,232,387,399],{"title":5,"path":6,"stem":7,"children":8,"icon":92},"","\u002Fdocs","1.docs\u002F1.index",[9,12,17,22,27,32,37,42,47,52,57,62,67,72,77,82,87],{"title":10,"path":6,"stem":7,"icon":11},"Introduction","i-lucide-compass",{"title":13,"path":14,"stem":15,"icon":16},"Quick Start","\u002Fdocs\u002Fquick-start","1.docs\u002F2.quick-start","i-lucide-zap",{"title":18,"path":19,"stem":20,"icon":21},"Renderer","\u002Fdocs\u002Frenderer","1.docs\u002F4.renderer","ri:layout-masonry-line",{"title":23,"path":24,"stem":25,"icon":26},"Routing","\u002Fdocs\u002Frouting","1.docs\u002F5.routing","ri:direction-line",{"title":28,"path":29,"stem":30,"icon":31},"Assets","\u002Fdocs\u002Fassets","1.docs\u002F50.assets","ri:image-2-line",{"title":33,"path":34,"stem":35,"icon":36},"Configuration","\u002Fdocs\u002Fconfiguration","1.docs\u002F50.configuration","ri:settings-3-line",{"title":38,"path":39,"stem":40,"icon":41},"Database","\u002Fdocs\u002Fdatabase","1.docs\u002F50.database","ri:database-2-line",{"title":43,"path":44,"stem":45,"icon":46},"Lifecycle","\u002Fdocs\u002Flifecycle","1.docs\u002F50.lifecycle","i-lucide-layers",{"title":48,"path":49,"stem":50,"icon":51},"OpenAPI","\u002Fdocs\u002Fopenapi","1.docs\u002F50.openapi","ri:contract-line",{"title":53,"path":54,"stem":55,"icon":56},"Plugins","\u002Fdocs\u002Fplugins","1.docs\u002F50.plugins","ri:plug-line",{"title":58,"path":59,"stem":60,"icon":61},"Tasks","\u002Fdocs\u002Ftasks","1.docs\u002F50.tasks","codicon:run-all",{"title":63,"path":64,"stem":65,"icon":66},"WebSocket","\u002Fdocs\u002Fwebsocket","1.docs\u002F50.websocket","ri:broadcast-fill",{"title":68,"path":69,"stem":70,"icon":71},"Server Entry","\u002Fdocs\u002Fserver-entry","1.docs\u002F6.server-entry","ri:server-line",{"title":73,"path":74,"stem":75,"icon":76},"Cache","\u002Fdocs\u002Fcache","1.docs\u002F7.cache","ri:speed-line",{"title":78,"path":79,"stem":80,"icon":81},"KV Storage","\u002Fdocs\u002Fstorage","1.docs\u002F8.storage","carbon:datastore",{"title":83,"path":84,"stem":85,"icon":86},"Migration Guide","\u002Fdocs\u002Fmigration","1.docs\u002F99.migration","ri:arrow-right-up-line",{"title":88,"path":89,"stem":90,"icon":91},"Nightly Channel","\u002Fdocs\u002Fnightly","1.docs\u002F99.nightly","ri:moon-fill","i-lucide-book-open",{"title":94,"path":95,"stem":96,"children":97,"icon":99},"Deploy","\u002Fdeploy","2.deploy\u002F0.index",[98,100,121],{"title":94,"path":95,"stem":96,"icon":99},"ri:upload-cloud-2-line",{"title":101,"path":102,"stem":103,"children":104,"page":120},"Runtimes","\u002Fdeploy\u002Fruntimes","2.deploy\u002F10.runtimes",[105,110,115],{"title":106,"path":107,"stem":108,"icon":109},"Node.js","\u002Fdeploy\u002Fruntimes\u002Fnode","2.deploy\u002F10.runtimes\u002F1.node","akar-icons:node-fill",{"title":111,"path":112,"stem":113,"icon":114},"Bun","\u002Fdeploy\u002Fruntimes\u002Fbun","2.deploy\u002F10.runtimes\u002Fbun","simple-icons:bun",{"title":116,"path":117,"stem":118,"icon":119},"Deno","\u002Fdeploy\u002Fruntimes\u002Fdeno","2.deploy\u002F10.runtimes\u002Fdeno","simple-icons:deno",false,{"title":122,"path":123,"stem":124,"children":125,"page":120},"Providers","\u002Fdeploy\u002Fproviders","2.deploy\u002F20.providers",[126,130,134,138,142,146,150,154,158,162,166,170,174,178,182,186,190,194,198,202,206,210,214,218,222],{"title":127,"path":128,"stem":129},"Alwaysdata","\u002Fdeploy\u002Fproviders\u002Falwaysdata","2.deploy\u002F20.providers\u002Falwaysdata",{"title":131,"path":132,"stem":133},"AWS Lambda","\u002Fdeploy\u002Fproviders\u002Faws","2.deploy\u002F20.providers\u002Faws",{"title":135,"path":136,"stem":137},"AWS Amplify","\u002Fdeploy\u002Fproviders\u002Faws-amplify","2.deploy\u002F20.providers\u002Faws-amplify",{"title":139,"path":140,"stem":141},"Azure","\u002Fdeploy\u002Fproviders\u002Fazure","2.deploy\u002F20.providers\u002Fazure",{"title":143,"path":144,"stem":145},"Cleavr","\u002Fdeploy\u002Fproviders\u002Fcleavr","2.deploy\u002F20.providers\u002Fcleavr",{"title":147,"path":148,"stem":149},"Cloudflare","\u002Fdeploy\u002Fproviders\u002Fcloudflare","2.deploy\u002F20.providers\u002Fcloudflare",{"title":151,"path":152,"stem":153},"Deno Deploy","\u002Fdeploy\u002Fproviders\u002Fdeno-deploy","2.deploy\u002F20.providers\u002Fdeno-deploy",{"title":155,"path":156,"stem":157},"DigitalOcean","\u002Fdeploy\u002Fproviders\u002Fdigitalocean","2.deploy\u002F20.providers\u002Fdigitalocean",{"title":159,"path":160,"stem":161},"EdgeOne Pages","\u002Fdeploy\u002Fproviders\u002Fedgeone","2.deploy\u002F20.providers\u002Fedgeone",{"title":163,"path":164,"stem":165},"Firebase","\u002Fdeploy\u002Fproviders\u002Ffirebase","2.deploy\u002F20.providers\u002Ffirebase",{"title":167,"path":168,"stem":169},"Flightcontrol","\u002Fdeploy\u002Fproviders\u002Fflightcontrol","2.deploy\u002F20.providers\u002Fflightcontrol",{"title":171,"path":172,"stem":173},"Genezio","\u002Fdeploy\u002Fproviders\u002Fgenezio","2.deploy\u002F20.providers\u002Fgenezio",{"title":175,"path":176,"stem":177},"GitHub Pages","\u002Fdeploy\u002Fproviders\u002Fgithub-pages","2.deploy\u002F20.providers\u002Fgithub-pages",{"title":179,"path":180,"stem":181},"GitLab Pages","\u002Fdeploy\u002Fproviders\u002Fgitlab-pages","2.deploy\u002F20.providers\u002Fgitlab-pages",{"title":183,"path":184,"stem":185},"Heroku","\u002Fdeploy\u002Fproviders\u002Fheroku","2.deploy\u002F20.providers\u002Fheroku",{"title":187,"path":188,"stem":189},"IIS","\u002Fdeploy\u002Fproviders\u002Fiis","2.deploy\u002F20.providers\u002Fiis",{"title":191,"path":192,"stem":193},"Koyeb","\u002Fdeploy\u002Fproviders\u002Fkoyeb","2.deploy\u002F20.providers\u002Fkoyeb",{"title":195,"path":196,"stem":197},"Netlify","\u002Fdeploy\u002Fproviders\u002Fnetlify","2.deploy\u002F20.providers\u002Fnetlify",{"title":199,"path":200,"stem":201},"Platform.sh","\u002Fdeploy\u002Fproviders\u002Fplatform-sh","2.deploy\u002F20.providers\u002Fplatform-sh",{"title":203,"path":204,"stem":205},"Render.com","\u002Fdeploy\u002Fproviders\u002Frender","2.deploy\u002F20.providers\u002Frender",{"title":207,"path":208,"stem":209},"StormKit","\u002Fdeploy\u002Fproviders\u002Fstormkit","2.deploy\u002F20.providers\u002Fstormkit",{"title":211,"path":212,"stem":213},"Vercel","\u002Fdeploy\u002Fproviders\u002Fvercel","2.deploy\u002F20.providers\u002Fvercel",{"title":215,"path":216,"stem":217},"Zeabur","\u002Fdeploy\u002Fproviders\u002Fzeabur","2.deploy\u002F20.providers\u002Fzeabur",{"title":219,"path":220,"stem":221},"Zephyr Cloud","\u002Fdeploy\u002Fproviders\u002Fzephyr","2.deploy\u002F20.providers\u002Fzephyr",{"title":223,"path":224,"stem":225},"Zerops","\u002Fdeploy\u002Fproviders\u002Fzerops","2.deploy\u002F20.providers\u002Fzerops",{"title":227,"path":228,"stem":229,"children":230,"icon":36},"Config","\u002Fconfig","3.config\u002F0.index",[231],{"title":227,"path":228,"stem":229,"icon":36},{"title":233,"path":234,"stem":235,"children":236,"icon":238},"Examples","\u002Fexamples","4.examples\u002F0.index",[237,239,244,249,254,259,263,268,273,278,283,288,293,297,302,306,310,315,320,325,330,335,340,345,350,355,359,364,369,373,378,383],{"title":233,"path":234,"stem":235,"icon":238},"i-lucide-folder-code",{"title":240,"path":241,"stem":242,"icon":243},"API Routes","\u002Fexamples\u002Fapi-routes","4.examples\u002Fapi-routes","i-lucide-route",{"title":245,"path":246,"stem":247,"icon":248},"Auto Imports","\u002Fexamples\u002Fauto-imports","4.examples\u002Fauto-imports","i-lucide-import",{"title":250,"path":251,"stem":252,"icon":253},"Cached Handler","\u002Fexamples\u002Fcached-handler","4.examples\u002Fcached-handler","i-lucide-clock",{"title":255,"path":256,"stem":257,"icon":258},"Custom Error Handler","\u002Fexamples\u002Fcustom-error-handler","4.examples\u002Fcustom-error-handler","i-lucide-alert-circle",{"title":38,"path":260,"stem":261,"icon":262},"\u002Fexamples\u002Fdatabase","4.examples\u002Fdatabase","i-lucide-database",{"title":264,"path":265,"stem":266,"icon":267},"Elysia","\u002Fexamples\u002Felysia","4.examples\u002Felysia","i-skill-icons-elysia-dark",{"title":269,"path":270,"stem":271,"icon":272},"Express","\u002Fexamples\u002Fexpress","4.examples\u002Fexpress","i-simple-icons-express",{"title":274,"path":275,"stem":276,"icon":277},"Fastify","\u002Fexamples\u002Ffastify","4.examples\u002Ffastify","i-simple-icons-fastify",{"title":279,"path":280,"stem":281,"icon":282},"Hello World","\u002Fexamples\u002Fhello-world","4.examples\u002Fhello-world","i-lucide-sparkles",{"title":284,"path":285,"stem":286,"icon":287},"Hono","\u002Fexamples\u002Fhono","4.examples\u002Fhono","i-logos-hono",{"title":289,"path":290,"stem":291,"icon":292},"Import Alias","\u002Fexamples\u002Fimport-alias","4.examples\u002Fimport-alias","i-lucide-at-sign",{"title":294,"path":295,"stem":296,"icon":46},"Middleware","\u002Fexamples\u002Fmiddleware","4.examples\u002Fmiddleware",{"title":298,"path":299,"stem":300,"icon":301},"Mono JSX","\u002Fexamples\u002Fmono-jsx","4.examples\u002Fmono-jsx","i-lucide-brackets",{"title":303,"path":304,"stem":305,"icon":301},"Nano JSX","\u002Fexamples\u002Fnano-jsx","4.examples\u002Fnano-jsx",{"title":53,"path":307,"stem":308,"icon":309},"\u002Fexamples\u002Fplugins","4.examples\u002Fplugins","i-lucide-plug",{"title":311,"path":312,"stem":313,"icon":314},"Custom Renderer","\u002Fexamples\u002Frenderer","4.examples\u002Frenderer","i-lucide-code",{"title":316,"path":317,"stem":318,"icon":319},"Runtime Config","\u002Fexamples\u002Fruntime-config","4.examples\u002Fruntime-config","i-lucide-settings",{"title":321,"path":322,"stem":323,"icon":324},"Server Fetch","\u002Fexamples\u002Fserver-fetch","4.examples\u002Fserver-fetch","i-lucide-arrow-right-left",{"title":326,"path":327,"stem":328,"icon":329},"Shiki","\u002Fexamples\u002Fshiki","4.examples\u002Fshiki","i-lucide-highlighter",{"title":331,"path":332,"stem":333,"icon":334},"Virtual Routes","\u002Fexamples\u002Fvirtual-routes","4.examples\u002Fvirtual-routes","i-lucide-box",{"title":336,"path":337,"stem":338,"icon":339},"Vite Nitro Plugin","\u002Fexamples\u002Fvite-nitro-plugin","4.examples\u002Fvite-nitro-plugin","i-logos-vitejs",{"title":341,"path":342,"stem":343,"icon":344},"Vite RSC","\u002Fexamples\u002Fvite-rsc","4.examples\u002Fvite-rsc","i-logos-react",{"title":346,"path":347,"stem":348,"icon":349},"Vite SSR HTML","\u002Fexamples\u002Fvite-ssr-html","4.examples\u002Fvite-ssr-html","i-logos-html-5",{"title":351,"path":352,"stem":353,"icon":354},"SSR with Preact","\u002Fexamples\u002Fvite-ssr-preact","4.examples\u002Fvite-ssr-preact","i-logos-preact",{"title":356,"path":357,"stem":358,"icon":344},"SSR with React","\u002Fexamples\u002Fvite-ssr-react","4.examples\u002Fvite-ssr-react",{"title":360,"path":361,"stem":362,"icon":363},"SSR with SolidJS","\u002Fexamples\u002Fvite-ssr-solid","4.examples\u002Fvite-ssr-solid","i-logos-solidjs-icon",{"title":365,"path":366,"stem":367,"icon":368},"SSR with TanStack Router","\u002Fexamples\u002Fvite-ssr-tsr-react","4.examples\u002Fvite-ssr-tsr-react","i-simple-icons-tanstack",{"title":370,"path":371,"stem":372,"icon":368},"SSR with TanStack Start","\u002Fexamples\u002Fvite-ssr-tss-react","4.examples\u002Fvite-ssr-tss-react",{"title":374,"path":375,"stem":376,"icon":377},"SSR with Vue Router","\u002Fexamples\u002Fvite-ssr-vue-router","4.examples\u002Fvite-ssr-vue-router","i-logos-vue",{"title":379,"path":380,"stem":381,"icon":382},"Vite + tRPC","\u002Fexamples\u002Fvite-trpc","4.examples\u002Fvite-trpc","i-simple-icons-trpc",{"title":63,"path":384,"stem":385,"icon":386},"\u002Fexamples\u002Fwebsocket","4.examples\u002Fwebsocket","i-lucide-radio",{"title":388,"path":389,"stem":390,"children":391},"Blog","\u002Fblog","9.blog",[392,395],{"title":388,"path":389,"stem":393,"icon":394},"9.blog\u002Findex","i-lucide-file-text",{"title":396,"path":397,"stem":398,"icon":394},"Nitro v3 Beta is here!","\u002Fblog\u002Fv3-beta","9.blog\u002F1.v3-beta",{"title":5,"path":400,"stem":401},"\u002F","index",{"id":403,"title":223,"body":404,"description":955,"extension":956,"meta":957,"navigation":958,"path":224,"seo":959,"stem":225,"__hash__":960},"content\u002F2.deploy\u002F20.providers\u002Fzerops.md",{"type":405,"value":406,"toc":950},"minimark",[407,419,424,430,433,438,459,463,476,603,610,883,903,907,916,919,923,929,932,942,946],[408,409,410,414,415],"p",{},[411,412,413],"strong",{},"Preset:"," ",[416,417,418],"code",{},"zerops",[420,421],"read-more",{"title":422,"to":423},"zerops.io","https:\u002F\u002Fzerops.io",[425,426,427],"important",{},[408,428,429],{},"\n🚧 This preset is currently experimental.",[408,431,432],{},"Zerops supports deploying both static and server-side rendered apps with a simple configuration file in your project root.",[434,435,437],"h2",{"id":436},"starter-templates","Starter templates",[408,439,440,441,450,451,458],{},"If you want to quckly get started with zerops and nitro you can use repositories ",[442,443,447],"a",{"href":444,"rel":445},"https:\u002F\u002Fgithub.com\u002Fzeropsio\u002Frecipe-nitro-nodejs",[446],"nofollow",[416,448,449],{},"zeropsio\u002Frecipe-nitro-nodejs"," and ",[442,452,455],{"href":453,"rel":454},"https:\u002F\u002Fgithub.com\u002Fzeropsio\u002Frecipe-nitro-static",[446],[416,456,457],{},"zeropsio\u002Frecipe-nitro-static"," starter templates.",[434,460,462],{"id":461},"project-setup","Project setup",[408,464,465,466,471,472,475],{},"Projects and services can be added either through ",[442,467,470],{"href":468,"rel":469},"https:\u002F\u002Fapp.zerops.io\u002Fdashboard\u002Fproject-add",[446],"project add wizard"," or imported using ",[416,473,474],{},"zerops-project-import.yml",".",[477,478,479,554],"code-group",{},[480,481,486],"pre",{"className":482,"code":483,"filename":484,"language":485,"meta":5,"style":5},"language-yml shiki shiki-themes github-light github-dark github-dark","project:\n  name: nitro-app\n\nservices:\n  - hostname: app\n    type: nodejs@20\n","zerops-project-import.yml (node.js)","yml",[416,487,488,501,514,521,529,543],{"__ignoreMap":5},[489,490,493,497],"span",{"class":491,"line":492},"line",1,[489,494,496],{"class":495},"sByVh","project",[489,498,500],{"class":499},"slsVL",":\n",[489,502,504,507,510],{"class":491,"line":503},2,[489,505,506],{"class":495},"  name",[489,508,509],{"class":499},": ",[489,511,513],{"class":512},"sfrk1","nitro-app\n",[489,515,517],{"class":491,"line":516},3,[489,518,520],{"emptyLinePlaceholder":519},true,"\n",[489,522,524,527],{"class":491,"line":523},4,[489,525,526],{"class":495},"services",[489,528,500],{"class":499},[489,530,532,535,538,540],{"class":491,"line":531},5,[489,533,534],{"class":499},"  - ",[489,536,537],{"class":495},"hostname",[489,539,509],{"class":499},[489,541,542],{"class":512},"app\n",[489,544,546,549,551],{"class":491,"line":545},6,[489,547,548],{"class":495},"    type",[489,550,509],{"class":499},[489,552,553],{"class":512},"nodejs@20\n",[480,555,558],{"className":482,"code":556,"filename":557,"language":485,"meta":5,"style":5},"project:\n  name: nitro-app\n\nservices:\n  - hostname: app\n    type: static\n","zerops-project-import.yml (static)",[416,559,560,566,574,578,584,594],{"__ignoreMap":5},[489,561,562,564],{"class":491,"line":492},[489,563,496],{"class":495},[489,565,500],{"class":499},[489,567,568,570,572],{"class":491,"line":503},[489,569,506],{"class":495},[489,571,509],{"class":499},[489,573,513],{"class":512},[489,575,576],{"class":491,"line":516},[489,577,520],{"emptyLinePlaceholder":519},[489,579,580,582],{"class":491,"line":523},[489,581,526],{"class":495},[489,583,500],{"class":499},[489,585,586,588,590,592],{"class":491,"line":531},[489,587,534],{"class":499},[489,589,537],{"class":495},[489,591,509],{"class":499},[489,593,542],{"class":512},[489,595,596,598,600],{"class":491,"line":545},[489,597,548],{"class":495},[489,599,509],{"class":499},[489,601,602],{"class":512},"static\n",[408,604,605,606,609],{},"Then create a ",[416,607,608],{},"zerops.yml"," config in your project root:",[477,611,612,786],{},[480,613,616],{"className":482,"code":614,"filename":615,"language":485,"meta":5,"style":5},"zerops:\n  - setup: app\n    build:\n      base: nodejs@20\n      envVariables:\n        NITRO_PRESET: zerops\n      buildCommands:\n        - pnpm i\n        - pnpm run build\n      deployFiles:\n        - .output\n        - package.json\n        - node_modules\n    run:\n      base: nodejs@20\n      ports:\n        - port: 3000\n          httpSupport: true\n      start: node .output\u002Fserver\u002Findex.mjs\n","zerops.yml (node.js)",[416,617,618,624,635,642,651,658,668,676,685,693,701,709,717,725,733,742,750,764,775],{"__ignoreMap":5},[489,619,620,622],{"class":491,"line":492},[489,621,418],{"class":495},[489,623,500],{"class":499},[489,625,626,628,631,633],{"class":491,"line":503},[489,627,534],{"class":499},[489,629,630],{"class":495},"setup",[489,632,509],{"class":499},[489,634,542],{"class":512},[489,636,637,640],{"class":491,"line":516},[489,638,639],{"class":495},"    build",[489,641,500],{"class":499},[489,643,644,647,649],{"class":491,"line":523},[489,645,646],{"class":495},"      base",[489,648,509],{"class":499},[489,650,553],{"class":512},[489,652,653,656],{"class":491,"line":531},[489,654,655],{"class":495},"      envVariables",[489,657,500],{"class":499},[489,659,660,663,665],{"class":491,"line":545},[489,661,662],{"class":495},"        NITRO_PRESET",[489,664,509],{"class":499},[489,666,667],{"class":512},"zerops\n",[489,669,671,674],{"class":491,"line":670},7,[489,672,673],{"class":495},"      buildCommands",[489,675,500],{"class":499},[489,677,679,682],{"class":491,"line":678},8,[489,680,681],{"class":499},"        - ",[489,683,684],{"class":512},"pnpm i\n",[489,686,688,690],{"class":491,"line":687},9,[489,689,681],{"class":499},[489,691,692],{"class":512},"pnpm run build\n",[489,694,696,699],{"class":491,"line":695},10,[489,697,698],{"class":495},"      deployFiles",[489,700,500],{"class":499},[489,702,704,706],{"class":491,"line":703},11,[489,705,681],{"class":499},[489,707,708],{"class":512},".output\n",[489,710,712,714],{"class":491,"line":711},12,[489,713,681],{"class":499},[489,715,716],{"class":512},"package.json\n",[489,718,720,722],{"class":491,"line":719},13,[489,721,681],{"class":499},[489,723,724],{"class":512},"node_modules\n",[489,726,728,731],{"class":491,"line":727},14,[489,729,730],{"class":495},"    run",[489,732,500],{"class":499},[489,734,736,738,740],{"class":491,"line":735},15,[489,737,646],{"class":495},[489,739,509],{"class":499},[489,741,553],{"class":512},[489,743,745,748],{"class":491,"line":744},16,[489,746,747],{"class":495},"      ports",[489,749,500],{"class":499},[489,751,753,755,758,760],{"class":491,"line":752},17,[489,754,681],{"class":499},[489,756,757],{"class":495},"port",[489,759,509],{"class":499},[489,761,763],{"class":762},"suiK_","3000\n",[489,765,767,770,772],{"class":491,"line":766},18,[489,768,769],{"class":495},"          httpSupport",[489,771,509],{"class":499},[489,773,774],{"class":762},"true\n",[489,776,778,781,783],{"class":491,"line":777},19,[489,779,780],{"class":495},"      start",[489,782,509],{"class":499},[489,784,785],{"class":512},"node .output\u002Fserver\u002Findex.mjs\n",[480,787,790],{"className":482,"code":788,"filename":789,"language":485,"meta":5,"style":5},"zerops:\n  - setup: app\n    build:\n      base: nodejs@20\n      envVariables:\n        NITRO_PRESET: zerops-static\n      buildCommands:\n        - pnpm i\n        - pnpm build\n      deployFiles:\n        - .zerops\u002Foutput\u002Fstatic\u002F~\n    run:\n      base: static\n","zerops.yml (static)",[416,791,792,798,808,814,822,828,837,843,849,856,862,869,875],{"__ignoreMap":5},[489,793,794,796],{"class":491,"line":492},[489,795,418],{"class":495},[489,797,500],{"class":499},[489,799,800,802,804,806],{"class":491,"line":503},[489,801,534],{"class":499},[489,803,630],{"class":495},[489,805,509],{"class":499},[489,807,542],{"class":512},[489,809,810,812],{"class":491,"line":516},[489,811,639],{"class":495},[489,813,500],{"class":499},[489,815,816,818,820],{"class":491,"line":523},[489,817,646],{"class":495},[489,819,509],{"class":499},[489,821,553],{"class":512},[489,823,824,826],{"class":491,"line":531},[489,825,655],{"class":495},[489,827,500],{"class":499},[489,829,830,832,834],{"class":491,"line":545},[489,831,662],{"class":495},[489,833,509],{"class":499},[489,835,836],{"class":512},"zerops-static\n",[489,838,839,841],{"class":491,"line":670},[489,840,673],{"class":495},[489,842,500],{"class":499},[489,844,845,847],{"class":491,"line":678},[489,846,681],{"class":499},[489,848,684],{"class":512},[489,850,851,853],{"class":491,"line":687},[489,852,681],{"class":499},[489,854,855],{"class":512},"pnpm build\n",[489,857,858,860],{"class":491,"line":695},[489,859,698],{"class":495},[489,861,500],{"class":499},[489,863,864,866],{"class":491,"line":703},[489,865,681],{"class":499},[489,867,868],{"class":512},".zerops\u002Foutput\u002Fstatic\u002F~\n",[489,870,871,873],{"class":491,"line":711},[489,872,730],{"class":495},[489,874,500],{"class":499},[489,876,877,879,881],{"class":491,"line":719},[489,878,646],{"class":495},[489,880,509],{"class":499},[489,882,602],{"class":512},[408,884,885,886,890,891,896,897,902],{},"Now you can trigger the ",[442,887,889],{"href":888},"#building-deploying-your-app","build & deploy pipeline using the Zerops CLI"," or by connecting the app service with your ",[442,892,895],{"href":893,"rel":894},"https:\u002F\u002Fdocs.zerops.io\u002Freferences\u002Fgithub-integration\u002F",[446],"GitHub"," \u002F ",[442,898,901],{"href":899,"rel":900},"https:\u002F\u002Fdocs.zerops.io\u002Freferences\u002Fgitlab-integration",[446],"GitLab"," repository from inside the service detail.",[434,904,906],{"id":905},"build-and-deploy","Build and deploy",[408,908,909,910,915],{},"Open ",[442,911,914],{"href":912,"rel":913},"https:\u002F\u002Fapp.zerops.io\u002Fsettings\u002Ftoken-management",[446],"Settings > Access Token Management"," in the Zerops app and generate a new access token.",[408,917,918],{},"Log in using your access token with the following command:",[920,921],"pm-x",{"command":922},"@zerops\u002Fzcli login \u003Ctoken>",[408,924,925,926,928],{},"Navigate to the root of your app (where ",[416,927,608],{}," is located) and run the following command to trigger the deploy:",[920,930],{"command":931},"@zerops\u002Fzcli push",[408,933,934,935,896,938,941],{},"Your code can be deployed automatically on each commit or a new tag by connecting the service with your ",[442,936,895],{"href":899,"rel":937},[446],[442,939,901],{"href":899,"rel":940},[446]," repository. This connection can be set up in the service detail.",[420,943],{"title":944,"to":945},"Zerops Documentation","https:\u002F\u002Fdocs.zerops.io\u002F",[947,948,949],"style",{},"html pre.shiki code .sByVh, html code.shiki .sByVh{--shiki-light:#22863A;--shiki-default:#85E89D;--shiki-dark:#85E89D}html pre.shiki code .slsVL, html code.shiki .slsVL{--shiki-light:#24292E;--shiki-default:#E1E4E8;--shiki-dark:#E1E4E8}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":5,"searchDepth":503,"depth":503,"links":951},[952,953,954],{"id":436,"depth":503,"text":437},{"id":461,"depth":503,"text":462},{"id":905,"depth":503,"text":906},"Deploy Nitro apps to Zerops.","md",{},{},{"title":223,"description":955},"8mVdRqwtqcDJ7I2yoBeUH4SzfJattJC5yXLynVR_wY0",[962,964],{"title":219,"path":220,"stem":221,"description":963,"children":-1},"Deploy Nitro apps to Zephyr Cloud.",{"title":227,"path":228,"stem":229,"description":5,"icon":36,"children":-1},1776863253964]