[{"data":1,"prerenderedAt":391},["ShallowReactive",2],{"navigation_docs":3,"-getting-started-skills":159,"-getting-started-skills-surround":386},[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":25,"body":161,"description":379,"extension":380,"links":381,"meta":382,"navigation":383,"path":26,"seo":384,"stem":27,"__hash__":385},"docs\u002F1.getting-started\u002F4.skills.md",{"type":162,"value":163,"toc":370},"minimark",[164,169,173,180,191,208,216,220,223,243,247,252,258,262,271,281,285,288,314,318,321,346,350,353,359,366],[165,166,168],"h2",{"id":167},"what-are-skills","What are skills?",[170,171,172],"p",{},"Skills are structured knowledge files that give AI coding agents reusable context about a library, framework, or codebase.",[170,174,175,179],{},[176,177,178],"code",{},"phaser-vue"," ships one public usage skill:",[181,182,183],"ul",{},[184,185,186,190],"li",{},[187,188,189],"strong",{},"Phaser best practices",": teaches an agent how to structure Phaser 3 scenes, pick the right physics system, handle assets and UI panels, and avoid common lifecycle and performance mistakes.",[170,192,193,194,203,204,207],{},"The skill lives in the repository at ",[195,196,200],"a",{"href":197,"rel":198},"https:\u002F\u002Fgithub.com\u002Fonmax\u002Fphaser-vue\u002Ftree\u002Fmain\u002Fskills\u002Fphaser-best-practices",[199],"nofollow",[176,201,202],{},"skills\u002Fphaser-best-practices\u002F",". It follows the same top-level ",[176,205,206],{},"skills\u002F"," layout used by Nuxt UI.",[209,210,211,212,215],"note",{},"Once installed, many agents let you invoke the skill directly by name as ",[176,213,214],{},"\u002Fphaser-best-practices",".",[165,217,219],{"id":218},"what-the-skill-covers","What the skill covers",[170,221,222],{},"The skill keeps the top-level file short and loads detailed references only when they are relevant. It covers:",[181,224,225,228,231,234,237,240],{},[184,226,227],{},"project setup and Phaser bootstrap defaults",[184,229,230],{},"scene-first architecture and restart-safe lifecycle patterns",[184,232,233],{},"Arcade vs Matter decision-making",[184,235,236],{},"entities, pooling, and collision handling",[184,238,239],{},"assets, spritesheets, animations, and scalable UI panels",[184,241,242],{},"camera, tilemaps, input, audio, performance, and debugging",[165,244,246],{"id":245},"cursor","Cursor",[248,249,251],"h4",{"id":250},"quick-install","Quick install",[253,254],"u-button",{"color":255,"icon":28,"label":256,"to":257},"neutral","Install Skill","cursor:\u002F\u002Fanysphere.cursor-deeplink\u002Finstall-skill?url=https:\u002F\u002Fgithub.com\u002Fonmax\u002Fphaser-vue\u002Ftree\u002Fmain\u002Fskills\u002Fphaser-best-practices",[248,259,261],{"id":260},"manual-setup","Manual setup",[263,264,265,268],"ol",{},[184,266,267],{},"Open Cursor and go to \"Settings\" > \"Skills\".",[184,269,270],{},"Click \"Add skill\" and enter this URL:",[272,273,279],"pre",{"className":274,"code":276,"language":277,"meta":278},[275],"language-text","https:\u002F\u002Fgithub.com\u002Fonmax\u002Fphaser-vue\u002Ftree\u002Fmain\u002Fskills\u002Fphaser-best-practices\n","text","",[176,280,276],{"__ignoreMap":278},[165,282,284],{"id":283},"claude-code","Claude Code",[170,286,287],{},"Add the skill with the repository URL:",[272,289,293],{"className":290,"code":291,"language":292,"meta":278,"style":278},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","claude skill add https:\u002F\u002Fgithub.com\u002Fonmax\u002Fphaser-vue\u002Ftree\u002Fmain\u002Fskills\u002Fphaser-best-practices\n","bash",[176,294,295],{"__ignoreMap":278},[296,297,300,304,308,311],"span",{"class":298,"line":299},"line",1,[296,301,303],{"class":302},"sBMFI","claude",[296,305,307],{"class":306},"sfazB"," skill",[296,309,310],{"class":306}," add",[296,312,313],{"class":306}," https:\u002F\u002Fgithub.com\u002Fonmax\u002Fphaser-vue\u002Ftree\u002Fmain\u002Fskills\u002Fphaser-best-practices\n",[165,315,317],{"id":316},"other-ai-tools","Other AI tools",[170,319,320],{},"Any tool that supports custom context or remote skill folders can use the same public files:",[181,322,323,336],{},[184,324,325,328,329],{},[187,326,327],{},"Skill entry point",": ",[195,330,333],{"href":331,"rel":332},"https:\u002F\u002Fgithub.com\u002Fonmax\u002Fphaser-vue\u002Ftree\u002Fmain\u002Fskills\u002Fphaser-best-practices\u002FSKILL.md",[199],[176,334,335],{},"skills\u002Fphaser-best-practices\u002FSKILL.md",[184,337,338,328,341],{},[187,339,340],{},"Full skill directory",[195,342,344],{"href":197,"rel":343},[199],[176,345,202],{},[165,347,349],{"id":348},"local-repository-path","Local repository path",[170,351,352],{},"If the agent is already working inside this repository, the local path is:",[272,354,357],{"className":355,"code":356,"language":277,"meta":278},[275],"skills\u002Fphaser-best-practices\n",[176,358,356],{"__ignoreMap":278},[360,361,362,363,365],"tip",{},"Use the public skill when you want stronger Phaser guidance in another project. Use the repository-local docs when you want the ",[176,364,178],{}," API surface itself.",[367,368,369],"style",{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}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":278,"searchDepth":371,"depth":371,"links":372},2,[373,374,375,376,377,378],{"id":167,"depth":371,"text":168},{"id":218,"depth":371,"text":219},{"id":245,"depth":371,"text":246},{"id":283,"depth":371,"text":284},{"id":316,"depth":371,"text":317},{"id":348,"depth":371,"text":349},"Install the Phaser best practices skill to give AI agents direct guidance for Phaser 3 architecture, scenes, physics, assets, and performance work.","md",null,{},{"icon":28},{"title":25,"description":379},"elNGOyq0kKrMSp1avqT1g7FTSXq61I3_BrOpJjQYenI",[387,389],{"title":21,"path":22,"stem":23,"description":388,"children":-1},"Keep Phaser client-only, avoid hydration footguns, and choose the right host component in Vue and Nuxt.",{"title":30,"path":32,"stem":36,"description":390,"children":-1},"Learn the host component, scene layer, primitives, composables, and the raw access patterns in @onmax\u002Fphaser-vue.",1777965860211]