[{"data":1,"prerenderedAt":293},["ShallowReactive",2],{"navigation_docs":3,"-vue":159,"-vue-surround":292},[4,29,57,76,100,124,152],{"title":5,"icon":6,"path":7,"stem":8,"children":9},"Getting Started","i-lucide-rocket","\u002Fgetting-started","1.getting-started",[10,12,16,20,24],{"title":5,"path":7,"stem":11},"1.getting-started\u002Findex",{"title":13,"path":14,"stem":15},"Installation","\u002Fgetting-started\u002Finstallation","1.getting-started\u002F1.installation",{"title":17,"path":18,"stem":19},"First Game","\u002Fgetting-started\u002Ffirst-game","1.getting-started\u002F2.first-game",{"title":21,"path":22,"stem":23},"SSR and Mounting","\u002Fgetting-started\u002Fssr-and-mounting","1.getting-started\u002F3.ssr-and-mounting",{"title":25,"path":26,"stem":27,"icon":28},"Skills","\u002Fgetting-started\u002Fskills","1.getting-started\u002F4.skills","i-lucide-sparkles",{"title":30,"icon":31,"path":32,"stem":33,"children":34},"Vue Guide","i-lucide-book-open","\u002Fvue-guide","2.vue-guide",[35,37,41,45,49,53],{"title":30,"path":32,"stem":36},"2.vue-guide\u002Findex",{"title":38,"path":39,"stem":40},"PhaserGame","\u002Fvue-guide\u002Fphaser-game","2.vue-guide\u002F1.phaser-game",{"title":42,"path":43,"stem":44},"Scenes","\u002Fvue-guide\u002Fscenes","2.vue-guide\u002F2.scenes",{"title":46,"path":47,"stem":48},"Primitives","\u002Fvue-guide\u002Fprimitives","2.vue-guide\u002F3.primitives",{"title":50,"path":51,"stem":52},"Composables and Bridge","\u002Fvue-guide\u002Fcomposables-and-bridge","2.vue-guide\u002F4.composables-and-bridge",{"title":54,"path":55,"stem":56},"Escape Hatches","\u002Fvue-guide\u002Fescape-hatches","2.vue-guide\u002F5.escape-hatches",{"title":58,"icon":59,"path":60,"stem":61,"children":62},"Nuxt Module","i-lucide-layers-3","\u002Fnuxt-module","3.nuxt-module",[63,65,68,72],{"title":58,"path":60,"stem":64},"3.nuxt-module\u002Findex",{"title":13,"path":66,"stem":67},"\u002Fnuxt-module\u002Finstallation","3.nuxt-module\u002F1.installation",{"title":69,"path":70,"stem":71},"Runtime Defaults","\u002Fnuxt-module\u002Fruntime-defaults","3.nuxt-module\u002F2.runtime-defaults",{"title":73,"path":74,"stem":75},"Client-only Wrapper","\u002Fnuxt-module\u002Fclient-only-wrapper","3.nuxt-module\u002F3.client-only-wrapper",{"title":77,"icon":78,"path":79,"stem":80,"children":81},"Examples","i-lucide-play-square","\u002Fexamples","4.examples",[82,84,88,92,96],{"title":77,"path":79,"stem":83},"4.examples\u002Findex",{"title":85,"path":86,"stem":87},"Minimal","\u002Fexamples\u002Fminimal","4.examples\u002F1.minimal",{"title":89,"path":90,"stem":91},"Imperative Escape Hatch","\u002Fexamples\u002Fimperative-escape-hatch","4.examples\u002F2.imperative-escape-hatch",{"title":93,"path":94,"stem":95},"Multi-scene","\u002Fexamples\u002Fmulti-scene","4.examples\u002F3.multi-scene",{"title":97,"path":98,"stem":99},"Nuxt Playground","\u002Fexamples\u002Fnuxt-playground","4.examples\u002F4.nuxt-playground",{"title":101,"icon":102,"path":103,"stem":104,"children":105},"API Reference","i-lucide-book-open-text","\u002Fapi-reference","5.api-reference",[106,108,112,116,120],{"title":101,"path":103,"stem":107},"5.api-reference\u002Findex",{"title":109,"path":110,"stem":111},"Vue Components","\u002Fapi-reference\u002Fvue-components","5.api-reference\u002F1.vue-components",{"title":113,"path":114,"stem":115},"Composables","\u002Fapi-reference\u002Fcomposables","5.api-reference\u002F2.composables",{"title":117,"path":118,"stem":119},"Types","\u002Fapi-reference\u002Ftypes","5.api-reference\u002F3.types",{"title":121,"path":122,"stem":123},"Nuxt Module Options","\u002Fapi-reference\u002Fnuxt-module-options","5.api-reference\u002F4.nuxt-module-options",{"title":125,"icon":126,"path":127,"stem":128,"children":129},"Guides","i-lucide-compass","\u002Fguides","6.guides",[130,132,136,140,144,148],{"title":125,"path":127,"stem":131},"6.guides\u002Findex",{"title":133,"path":134,"stem":135},"Performance","\u002Fguides\u002Fperformance","6.guides\u002F1.performance",{"title":137,"path":138,"stem":139},"Scene-first Design","\u002Fguides\u002Fscene-first-design","6.guides\u002F2.scene-first-design",{"title":141,"path":142,"stem":143},"Vue Reactivity vs Phaser Imperative Updates","\u002Fguides\u002Fvue-reactivity-vs-phaser-imperative-updates","6.guides\u002F3.vue-reactivity-vs-phaser-imperative-updates",{"title":145,"path":146,"stem":147},"Testing scene primitives in Vue","\u002Fguides\u002Ftesting-scene-primitives-in-vue","6.guides\u002F4.testing-scene-primitives-in-vue",{"title":149,"path":150,"stem":151},"Testing a Phaser canvas in Nuxt","\u002Fguides\u002Ftesting-a-phaser-canvas-in-nuxt","6.guides\u002F5.testing-a-phaser-canvas-in-nuxt",{"title":153,"path":154,"stem":155,"children":156,"icon":158},"Roadmap","\u002Froadmap","7.roadmap\u002Findex",[157],{"title":153,"path":154,"stem":155},"i-lucide-flag",{"id":160,"title":161,"body":162,"description":283,"extension":284,"links":285,"meta":286,"navigation":287,"path":288,"seo":289,"stem":290,"__hash__":291},"docs\u002Fvue.md","Vue",{"type":163,"value":164,"toc":280},"minimark",[165,173,176,179,276],[166,167,168,172],"p",{},[169,170,171],"code",{},"@onmax\u002Fphaser-vue"," gives you the shared runtime without any Nuxt-specific wiring. Use it in a Vite app, inside a component library preview, or anywhere you want Vue around a Phaser canvas.",[166,174,175],{},"This track covers the host component, scene lifecycle, primitives, composables, and the imperative escape hatches that keep Phaser in control of hot-path behavior.",[166,177,178],{},"Use this section when you already know you want the Vue runtime and you need to decide which part of the API to learn next.",[180,181,183,188],"u-page-section",{"orientation":182},"vertical",[184,185,187],"template",{"v-slot:title":186},"","Start in the Vue layer",[184,189,190,193],{"v-slot:description":186},[166,191,192],{},"Follow the guides in order or jump to the topic you need.",[194,195,200,214,230,238,247,256],"u-page-grid",{"className":196},[197,198,199],"!grid-cols-1","lg:!grid-cols-2","!gap-3",[201,202,205,208],"u-page-card",{":spotlight":203,"icon":204,"to":14},"true","i-lucide-download",[184,206,207],{"v-slot:title":186},"Install the package",[184,209,210,211,213],{"v-slot:description":186},"Install ",[169,212,171],{},", mount the plugin, and verify the first scene.",[201,215,217,220],{":spotlight":203,"icon":216,"to":39},"i-lucide-layout-template",[184,218,219],{"v-slot:title":186},"Host the game",[184,221,222,223,225,226,229],{"v-slot:description":186},"Use ",[169,224,38],{}," as the only place that creates and destroys ",[169,227,228],{},"Phaser.Game",".",[201,231,232,235],{":spotlight":203,"icon":59,"to":43},[184,233,234],{"v-slot:title":186},"Manage scenes",[184,236,237],{"v-slot:description":186},"Register managed scenes, control active and visible state, and keep scene keys explicit.",[201,239,241,244],{":spotlight":203,"icon":240,"to":47},"i-lucide-box",[184,242,243],{"v-slot:title":186},"Use primitives",[184,245,246],{"v-slot:description":186},"Create containers, images, sprites, and text declaratively when the scene setup is simple.",[201,248,250,253],{":spotlight":203,"icon":249,"to":51},"i-lucide-waypoints",[184,251,252],{"v-slot:title":186},"Bridge Vue and Phaser",[184,254,255],{"v-slot:description":186},"Connect DOM controls and scenes with typed bridge events and low-frequency registry state.",[201,257,259,262],{":spotlight":203,"icon":258,"to":55},"i-lucide-zap",[184,260,261],{"v-slot:title":186},"Drop to raw Phaser",[184,263,264,265,268,269,268,272,275],{"v-slot:description":186},"Reach for ",[169,266,267],{},"usePhaserGame",", ",[169,270,271],{},"usePhaserScene",[169,273,274],{},"usePhaserObjectRef",", and raw object access whenever performance matters.",[277,278,279],"important",{},"Use Vue to orchestrate the game. Keep per-frame movement, physics, and animation state in scene code or imperative hooks.",{"title":186,"searchDepth":281,"depth":281,"links":282},2,[],"Use @onmax\u002Fphaser-vue directly in any Vue 3 app for host setup, scenes, primitives, bridge events, and raw Phaser access.","md",null,{},false,"\u002Fvue",{"title":161,"description":283},"vue","FolM_Aw_3p609U-cfyMLiDIamkUdf-6ZpbKgu601B8o",[285,285],1777965858730]