[{"data":1,"prerenderedAt":563},["ShallowReactive",2],{"navigation":3,"-api-commands":325,"-api-commands-surround":560},[4,79,198,295],{"title":5,"path":6,"stem":7,"children":8,"icon":77,"header":78},"Getting Started","\u002Fgetting-started","1.getting-started\u002F01.index",[9,12,17,22,27,32,37,42,47,52,57,62,67,72],{"title":10,"path":6,"stem":7,"icon":11},"Introduction","lucide:info",{"title":13,"path":14,"stem":15,"icon":16},"Installation","\u002Fgetting-started\u002Finstallation","1.getting-started\u002F02.installation","lucide:play",{"title":18,"path":19,"stem":20,"icon":21},"Configuration","\u002Fgetting-started\u002Fconfiguration","1.getting-started\u002F03.configuration","lucide:cog",{"title":23,"path":24,"stem":25,"icon":26},"Views","\u002Fgetting-started\u002Fviews","1.getting-started\u002F04.views","lucide:panels-top-left",{"title":28,"path":29,"stem":30,"icon":31},"Assets","\u002Fgetting-started\u002Fassets","1.getting-started\u002F05.assets","lucide:image",{"title":33,"path":34,"stem":35,"icon":36},"Styling","\u002Fgetting-started\u002Fstyling","1.getting-started\u002F06.styling","lucide:palette",{"title":38,"path":39,"stem":40,"icon":41},"Routing","\u002Fgetting-started\u002Frouting","1.getting-started\u002F07.routing","lucide:milestone",{"title":43,"path":44,"stem":45,"icon":46},"Data Loading","\u002Fgetting-started\u002Fdata-loading","1.getting-started\u002F08.data-loading","lucide:cable",{"title":48,"path":49,"stem":50,"icon":51},"Actions","\u002Fgetting-started\u002Factions","1.getting-started\u002F09.actions","lucide:mouse",{"title":53,"path":54,"stem":55,"icon":56},"Pending UI","\u002Fgetting-started\u002Fpending-ui","1.getting-started\u002F10.pending-ui","lucide:loader",{"title":58,"path":59,"stem":60,"icon":61},"SEO and Meta","\u002Fgetting-started\u002Fseo-meta","1.getting-started\u002F11.seo-meta","lucide:file-search-corner",{"title":63,"path":64,"stem":65,"icon":66},"State Management","\u002Fgetting-started\u002Fstate-management","1.getting-started\u002F12.state-management","lucide:database",{"title":68,"path":69,"stem":70,"icon":71},"Transitions","\u002Fgetting-started\u002Ftransitions","1.getting-started\u002F13.transitions","lucide:toggle-right",{"title":73,"path":74,"stem":75,"icon":76},"Error Handling","\u002Fgetting-started\u002Ferror-handling","1.getting-started\u002F14.error-handling","lucide:bug-off","lucide:rocket",true,{"title":80,"icon":81,"path":82,"stem":83,"children":84,"page":149},"Structure","lucide:folder-open","\u002Fdirectory-structure\u002Fhorn","2.directory-structure",[85,89,94,150,155,160,174,179,184,188,193],{"title":86,"path":82,"stem":87,"icon":88},".vuloom","2.directory-structure\u002F01.horn","vscode-icons:folder-type-temp",{"title":90,"path":91,"stem":92,"icon":93},".output","\u002Fdirectory-structure\u002Foutput","2.directory-structure\u002F02.output","vscode-icons:folder-type-package",{"title":95,"icon":96,"path":97,"stem":98,"children":99,"page":149},"app","vscode-icons:folder-type-app","\u002Fdirectory-structure\u002Fapp","2.directory-structure\u002F03.app",[100,105,110,115,120,125,130,135,140,144],{"title":101,"path":102,"stem":103,"icon":104},"assets","\u002Fdirectory-structure\u002Fapp\u002Fassets","2.directory-structure\u002F03.app\u002F01.assets","vscode-icons:folder-type-asset",{"title":106,"path":107,"stem":108,"icon":109},"components","\u002Fdirectory-structure\u002Fapp\u002Fcomponents","2.directory-structure\u002F03.app\u002F02.components","vscode-icons:folder-type-component",{"title":111,"path":112,"stem":113,"icon":114},"composables","\u002Fdirectory-structure\u002Fapp\u002Fcomposables","2.directory-structure\u002F03.app\u002F03.composables","vscode-icons:folder-type-src",{"title":116,"path":117,"stem":118,"icon":119},"middleware","\u002Fdirectory-structure\u002Fapp\u002Fmiddleware","2.directory-structure\u002F03.app\u002F04.middleware","vscode-icons:folder-type-middleware",{"title":121,"path":122,"stem":123,"icon":124},"pages","\u002Fdirectory-structure\u002Fapp\u002Fpages","2.directory-structure\u002F03.app\u002F05.pages","vscode-icons:folder-type-view",{"title":126,"path":127,"stem":128,"icon":129},"utils","\u002Fdirectory-structure\u002Fapp\u002Futils","2.directory-structure\u002F03.app\u002F06.utils","vscode-icons:folder-type-tools",{"title":131,"path":132,"stem":133,"icon":134},"app.vue","\u002Fdirectory-structure\u002Fapp\u002Fapp","2.directory-structure\u002F03.app\u002F07.app","vscode-icons:file-type-vue",{"title":136,"path":137,"stem":138,"icon":139},"app.config.ts","\u002Fdirectory-structure\u002Fapp\u002Fapp-config","2.directory-structure\u002F03.app\u002F08.app-config","vscode-icons:file-type-light-config",{"title":141,"path":142,"stem":143,"icon":134},"error.vue","\u002Fdirectory-structure\u002Fapp\u002Ferror","2.directory-structure\u002F03.app\u002F09.error",{"title":145,"path":146,"stem":147,"icon":148},"loader.ts","\u002Fdirectory-structure\u002Fapp\u002Floader","2.directory-structure\u002F03.app\u002F10.loader","vscode-icons:file-type-typescript",false,{"title":151,"path":152,"stem":153,"icon":154},"node_modules","\u002Fdirectory-structure\u002Fnode_modules","2.directory-structure\u002F04.node_modules","vscode-icons:folder-type-node",{"title":156,"path":157,"stem":158,"icon":159},"public","\u002Fdirectory-structure\u002Fpublic","2.directory-structure\u002F05.public","vscode-icons:folder-type-public",{"title":161,"icon":162,"path":163,"stem":164,"children":165,"page":149},"server","vscode-icons:folder-type-server","\u002Fdirectory-structure\u002Fserver","2.directory-structure\u002F06.server",[166,169],{"title":116,"path":167,"stem":168,"icon":119},"\u002Fdirectory-structure\u002Fserver\u002Fmiddleware","2.directory-structure\u002F06.server\u002F01.middleware",{"title":170,"path":171,"stem":172,"icon":173},"routes","\u002Fdirectory-structure\u002Fserver\u002Froutes","2.directory-structure\u002F06.server\u002F02.routes","vscode-icons:folder-type-route",{"title":175,"path":176,"stem":177,"icon":178},".env","\u002Fdirectory-structure\u002Fenv","2.directory-structure\u002F07.env","vscode-icons:file-type-dotenv",{"title":180,"path":181,"stem":182,"icon":183},".gitignore","\u002Fdirectory-structure\u002Fgitignore","2.directory-structure\u002F08.gitignore","vscode-icons:file-type-git",{"title":185,"path":186,"stem":187,"icon":139},"vuloom.config.ts","\u002Fdirectory-structure\u002Fhorn-config","2.directory-structure\u002F09.horn-config",{"title":189,"path":190,"stem":191,"icon":192},"package.json","\u002Fdirectory-structure\u002Fpackage","2.directory-structure\u002F10.package","vscode-icons:file-type-npm",{"title":194,"path":195,"stem":196,"icon":197},"tsconfig.json","\u002Fdirectory-structure\u002Ftsconfig","2.directory-structure\u002F11.tsconfig","vscode-icons:file-type-tsconfig",{"title":199,"icon":200,"header":78,"path":201,"stem":202,"children":203,"page":149},"API","lucide:code-xml","\u002Fapi\u002Fcomponents\u002Fclient-only","3.api",[204,224,269,290],{"title":205,"icon":206,"path":207,"stem":208,"children":209,"page":149},"Components","lucide:box","\u002Fapi\u002Fcomponents","3.api\u002F01.components",[210,214,219],{"title":211,"path":201,"stem":212,"icon":213},"ClientOnly","3.api\u002F01.components\u002F01.client-only","lucide:monitor",{"title":215,"path":216,"stem":217,"icon":218},"DevOnly","\u002Fapi\u002Fcomponents\u002Fdev-only","3.api\u002F01.components\u002F02.dev-only","lucide:wrench",{"title":220,"path":221,"stem":222,"icon":223},"RouterLink","\u002Fapi\u002Fcomponents\u002Flink","3.api\u002F01.components\u002F03.link","lucide:link",{"title":225,"icon":226,"path":227,"stem":228,"children":229,"page":149},"Composables","lucide:arrow-left-right","\u002Fapi\u002Fcomposables","3.api\u002F02.composables",[230,235,240,245,250,255,260,265],{"title":231,"path":232,"stem":233,"icon":234},"useAppData","\u002Fapi\u002Fcomposables\u002Fuse-app-data","3.api\u002F02.composables\u002F01.use-app-data","lucide:app-window",{"title":236,"path":237,"stem":238,"icon":239},"useLoaderData","\u002Fapi\u002Fcomposables\u002Fuse-loader-data","3.api\u002F02.composables\u002F02.use-loader-data","lucide:database-zap",{"title":241,"path":242,"stem":243,"icon":244},"useActionData","\u002Fapi\u002Fcomposables\u002Fuse-action-data","3.api\u002F02.composables\u002F03.use-action-data","lucide:send",{"title":246,"path":247,"stem":248,"icon":249},"useRoute","\u002Fapi\u002Fcomposables\u002Fuse-route","3.api\u002F02.composables\u002F04.use-route","lucide:route",{"title":251,"path":252,"stem":253,"icon":254},"useRouter","\u002Fapi\u002Fcomposables\u002Fuse-router","3.api\u002F02.composables\u002F05.use-router","lucide:navigation",{"title":256,"path":257,"stem":258,"icon":259},"useNavigation","\u002Fapi\u002Fcomposables\u002Fuse-navigation","3.api\u002F02.composables\u002F06.use-navigation","lucide:loader-circle",{"title":261,"path":262,"stem":263,"icon":264},"useHead","\u002Fapi\u002Fcomposables\u002Fuse-head","3.api\u002F02.composables\u002F07.use-head","lucide:file-search",{"title":266,"path":267,"stem":268,"icon":66},"useState","\u002Fapi\u002Fcomposables\u002Fuse-state","3.api\u002F02.composables\u002F08.use-state",{"title":270,"icon":271,"path":272,"stem":273,"children":274,"page":149},"Utils","lucide:square-function","\u002Fapi\u002Futils","3.api\u002F03.utils",[275,280,285],{"title":276,"path":277,"stem":278,"icon":279},"Response Helpers","\u002Fapi\u002Futils\u002Fresponses","3.api\u002F03.utils\u002F01.responses","lucide:reply",{"title":281,"path":282,"stem":283,"icon":284},"Loaders and Actions","\u002Fapi\u002Futils\u002Floaders-and-actions","3.api\u002F03.utils\u002F02.loaders-and-actions","lucide:workflow",{"title":286,"path":287,"stem":288,"icon":289},"Route Definitions","\u002Fapi\u002Futils\u002Froute-definition","3.api\u002F03.utils\u002F03.route-definition","lucide:file-code",{"title":291,"path":292,"stem":293,"icon":294},"Commands","\u002Fapi\u002Fcommands","3.api\u002F04.commands","lucide:square-terminal",{"title":296,"icon":297,"header":78,"path":298,"stem":299,"children":300,"page":149},"Community","lucide:messages-square","\u002Fcommunity\u002Fgetting-help","4.community",[301,305,310,315,320],{"title":302,"path":298,"stem":303,"icon":304},"Getting Help","4.community\u002F01.getting-help","lucide:life-buoy",{"title":306,"path":307,"stem":308,"icon":309},"Reporting Bugs","\u002Fcommunity\u002Freporting-bugs","4.community\u002F02.reporting-bugs","lucide:bug",{"title":311,"path":312,"stem":313,"icon":314},"Contribution","\u002Fcommunity\u002Fcontribution","4.community\u002F03.contribution","lucide:git-pull-request",{"title":316,"path":317,"stem":318,"icon":319},"Framework Contribution","\u002Fcommunity\u002Fframework-contribution","4.community\u002F04.framework-contribution","lucide:github",{"title":321,"path":322,"stem":323,"icon":324},"Releases","\u002Fcommunity\u002Freleases","4.community\u002F05.releases","lucide:bell-dot",{"id":326,"title":291,"body":327,"description":351,"extension":555,"meta":556,"navigation":557,"path":292,"seo":558,"stem":293,"__hash__":559},"content\u002F3.api\u002F04.commands.md",{"type":328,"value":329,"toc":548,"icon":294},"minimark",[330,334,342,345,391,397,404,416,419,425,428,467,473,478,507,511,528,544],[331,332,333],"p",{},"Vuloom ships a small CLI with four core commands.",[335,336,338],"h2",{"id":337},"vuloom-dev",[339,340,341],"code",{},"vuloom dev",[331,343,344],{},"Start the development server.",[346,347,352],"pre",{"className":348,"code":349,"language":350,"meta":351,"style":351},"language-bash shiki shiki-themes github-light github-dark github-dark","vuloom dev\nvuloom dev . --port 3000 --host 0.0.0.0\n","bash","",[339,353,354,367],{"__ignoreMap":351},[355,356,359,363],"span",{"class":357,"line":358},"line",1,[355,360,362],{"class":361},"shcOC","vuloom",[355,364,366],{"class":365},"sfrk1"," dev\n",[355,368,370,372,375,378,382,385,388],{"class":357,"line":369},2,[355,371,362],{"class":361},[355,373,374],{"class":365}," dev",[355,376,377],{"class":365}," .",[355,379,381],{"class":380},"suiK_"," --port",[355,383,384],{"class":380}," 3000",[355,386,387],{"class":380}," --host",[355,389,390],{"class":380}," 0.0.0.0\n",[335,392,394],{"id":393},"vuloom-prepare",[339,395,396],{},"vuloom prepare",[331,398,399,400,403],{},"Generate ",[339,401,402],{},".vuloom\u002Ftypes\u002F",".",[346,405,407],{"className":348,"code":406,"language":350,"meta":351,"style":351},"vuloom prepare\n",[339,408,409],{"__ignoreMap":351},[355,410,411,413],{"class":357,"line":358},[355,412,362],{"class":361},[355,414,415],{"class":365}," prepare\n",[331,417,418],{},"Use this whenever route files or middleware names change.",[335,420,422],{"id":421},"vuloom-build",[339,423,424],{},"vuloom build",[331,426,427],{},"Build the production client and server output.",[346,429,431],{"className":348,"code":430,"language":350,"meta":351,"style":351},"vuloom build\nvuloom build . --mode production\nvuloom build . --watch\n",[339,432,433,440,455],{"__ignoreMap":351},[355,434,435,437],{"class":357,"line":358},[355,436,362],{"class":361},[355,438,439],{"class":365}," build\n",[355,441,442,444,447,449,452],{"class":357,"line":369},[355,443,362],{"class":361},[355,445,446],{"class":365}," build",[355,448,377],{"class":365},[355,450,451],{"class":380}," --mode",[355,453,454],{"class":365}," production\n",[355,456,458,460,462,464],{"class":357,"line":457},3,[355,459,362],{"class":361},[355,461,446],{"class":365},[355,463,377],{"class":365},[355,465,466],{"class":380}," --watch\n",[335,468,470],{"id":469},"vuloom-start",[339,471,472],{},"vuloom start",[331,474,475,476,403],{},"Serve the result of ",[339,477,424],{},[346,479,481],{"className":348,"code":480,"language":350,"meta":351,"style":351},"vuloom start\nvuloom start . --port 3000 --host 0.0.0.0\n",[339,482,483,490],{"__ignoreMap":351},[355,484,485,487],{"class":357,"line":358},[355,486,362],{"class":361},[355,488,489],{"class":365}," start\n",[355,491,492,494,497,499,501,503,505],{"class":357,"line":369},[355,493,362],{"class":361},[355,495,496],{"class":365}," start",[355,498,377],{"class":365},[355,500,381],{"class":380},[355,502,384],{"class":380},[355,504,387],{"class":380},[355,506,390],{"class":380},[335,508,510],{"id":509},"shared-flags","Shared flags",[512,513,514,518,523],"ul",{},[515,516,517],"li",{},"root path as the first positional argument",[515,519,520],{},[339,521,522],{},"--config",[515,524,525],{},[339,526,527],{},"--mode",[331,529,530,533,534,537,538,533,541,403],{},[339,531,532],{},"dev"," and ",[339,535,536],{},"start"," also support ",[339,539,540],{},"--host",[339,542,543],{},"--port",[545,546,547],"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 pre.shiki code .suiK_, html code.shiki .suiK_{--shiki-light:#005CC5;--shiki-default:#79B8FF;--shiki-dark:#79B8FF}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);}",{"title":351,"searchDepth":369,"depth":369,"links":549},[550,551,552,553,554],{"id":337,"depth":369,"text":341},{"id":393,"depth":369,"text":396},{"id":421,"depth":369,"text":424},{"id":469,"depth":369,"text":472},{"id":509,"depth":369,"text":510},"md",{"icon":294},{"title":291,"icon":294},{"title":291,"description":351},"Nb2DbxP8QftXR29XtB8A-rGBi9f_Fzy2CsI8hwn769I",[561,562],{"title":286,"path":287,"stem":288,"description":351,"icon":289,"children":-1},{"title":302,"path":298,"stem":303,"description":351,"icon":304,"children":-1},1777022954855]