[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M71NWT3WT08HTE4CZK37AMQR":3,"skill-same:01M71NWT3WT08HTE4CZK37AMQR":90},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":18,"publishedAt":39,"linkOnly":40,"markdownContent":41,"markdownBody":42,"frontMatter":43,"refName":45,"commitSha":46,"skillDirectory":47,"forksCount":14,"repositoryHtmlUrl":48,"repositoryHomepageUrl":49,"ownerHtmlUrl":50,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":51,"install":52,"resources":65},"01M71NWT3WT08HTE4CZK37AMQR","nemo-mbridge-perf-tp-dp-comm-overlap",null,"Operational guide for enabling TP, DP, and PP communication overlap in Megatron-Bridge, including config knobs, code anchors, pitfalls, and verification.","pattanation\u002FNorvik","pattanation","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F235419268?v=4","01M71M5THHYYB15ME8R2E4FCZG","Patta","01M71M5TJM1NDM992M8PDKYR2K",0,"Apache-2.0","https:\u002F\u002Fgithub.com\u002Fpattanation\u002FNorvik\u002Fblob\u002Fclaude\u002Finstall-gsd-build-foQdV\u002F.agents\u002Fskills\u002Fnemo-mbridge-perf-tp-dp-comm-overlap\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38],"NeMo","nemo mbridge perf tp dp comm overlap","comm","perf","reduce","tracing","pitfalls","sequence","config","gather","regression","for","bridge","operational","communication","pp","megatron","change","verification","parallel","2026-11-10 10:56:23",false,"---\nname: nemo-mbridge-perf-tp-dp-comm-overlap\ndescription: Operational guide for enabling TP, DP, and PP communication overlap in Megatron-Bridge, including config knobs, code anchors, pitfalls, and verification.\nlicense: Apache-2.0\nwhen_to_use: Enabling TP\u002FDP\u002FPP comm overlap, or tracing a throughput regression to a comm overlap config change; 'overlap_param_gather', 'overlap_grad_reduce', 'sequence-parallel overlap', 'TP overlap', 'DP overlap', 'comm overlap'.\n---\n\n# TP \u002F DP \u002F PP Communication Overlap Skill\n\nFor stable background and recommendation level, see:\n\n- @docs\u002Ftraining\u002Fcommunication-overlap.md\n\n## Enablement\n\nMinimal Bridge override:\n\n```python\nfrom megatron.bridge.training.comm_overlap import CommOverlapConfig\n\ncfg.model.tensor_model_parallel_size = 4\ncfg.model.sequence_parallel = True\ncfg.model.pipeline_model_parallel_size = 4\ncfg.model.virtual_pipeline_model_parallel_size = 2\n\ncfg.comm_overlap = CommOverlapConfig(\n    tp_comm_overlap=True,\n)\n\ncfg.ddp.use_distributed_optimizer = True\ncfg.ddp.overlap_grad_reduce = True\ncfg.ddp.overlap_param_gather = True\n```\n\nOptional TP preset:\n\n```python\nfrom megatron.bridge.training.comm_overlap import userbuffers_bf16_h100_h12288_tp4_mbs1_seqlen2048\n\ncfg.comm_overlap.tp_comm_overlap_cfg = userbuffers_bf16_h100_h12288_tp4_mbs1_seqlen2048\n```\n\nPrecision knobs belong to mixed precision:\n\n```python\ncfg.mixed_precision.grad_reduce_in_fp32 = False\ncfg.mixed_precision.fp8_param_gather = False\n```\n\n## Code Anchors\n\nBridge overlap gating:\n\n```439:449:src\u002Fmegatron\u002Fbridge\u002Ftraining\u002Fcomm_overlap.py\nif self.user_comm_overlap_cfg.tp_comm_overlap is True:\n    if model_cfg.tensor_model_parallel_size \u003C 2:\n        ...\n    elif not model_cfg.sequence_parallel:\n        ...\n    elif not HAVE_TE:\n        ...\n```\n\nPP overlap selection:\n\n```451:458:src\u002Fmegatron\u002Fbridge\u002Ftraining\u002Fcomm_overlap.py\nif model_cfg.pipeline_model_parallel_size > 1:\n    if vp_size > 1:\n        comm_overlap_cfg.overlap_p2p_comm = True\n        comm_overlap_cfg.batch_p2p_comm = False\n    else:\n        comm_overlap_cfg.overlap_p2p_comm = False\n        comm_overlap_cfg.batch_p2p_comm = True\n```\n\nDP overlap defaults:\n\n```572:579:src\u002Fmegatron\u002Fbridge\u002Ftraining\u002Fcomm_overlap.py\nif self.data_parallel_size > 1:\n    comm_overlap_cfg.bucket_size = 128 * 1024 * 1024\n    comm_overlap_cfg.overlap_grad_reduce = True\n    comm_overlap_cfg.overlap_param_gather = True\n```\n\nLaunch-time env tuning:\n\n```570:609:src\u002Fmegatron\u002Fbridge\u002Frecipes\u002Frun_plugins.py\nexecutor.env_vars[\"CUDA_DEVICE_MAX_CONNECTIONS\"] = str(cuda_device_max_connections)\n...\nexecutor.env_vars[\"NVTE_FWD_LAYERNORM_SM_MARGIN\"] = str(self.layernorm_sm_margin)\nexecutor.env_vars[\"NVTE_BWD_LAYERNORM_SM_MARGIN\"] = str(self.layernorm_sm_margin)\n```\n\n## Pitfalls\n\n1. TP overlap silently disables itself if `sequence_parallel=False` or Transformer Engine is unavailable.\n2. PP overlap is not enabled for all PP cases. Bridge only auto-selects `overlap_p2p_comm=True` when `PP > 1` and `VPP > 1`.\n3. `bucket_size` is a parameter-count knob, not a byte-size knob.\n4. `grad_reduce_in_fp32` and `fp8_param_gather` should be set through mixed precision, not as standalone DDP tuning first.\n5. `CUDA_DEVICE_MAX_CONNECTIONS` and LayerNorm SM margin are launch-time plugin settings, not `CommOverlapConfig` fields.\n\n## Verification\n\nUse the checked-in overlap unit coverage first:\n\n```bash\nuv run python -m pytest tests\u002Funit_tests\u002Ftraining\u002Ftest_comm_overlap.py -q\n```\n\nOptional second check if `nemo_run` is available:\n\n```bash\nuv run python -m pytest tests\u002Funit_tests\u002Frecipes\u002Ftest_run_plugins.py -q\n```\n\nSuccess criteria:\n\n- first command reports `26 passed`\n- second command validates plugin-owned env wiring when not skipped\n","# TP \u002F DP \u002F PP Communication Overlap Skill\n\nFor stable background and recommendation level, see:\n\n- @docs\u002Ftraining\u002Fcommunication-overlap.md\n\n## Enablement\n\nMinimal Bridge override:\n\n```python\nfrom megatron.bridge.training.comm_overlap import CommOverlapConfig\n\ncfg.model.tensor_model_parallel_size = 4\ncfg.model.sequence_parallel = True\ncfg.model.pipeline_model_parallel_size = 4\ncfg.model.virtual_pipeline_model_parallel_size = 2\n\ncfg.comm_overlap = CommOverlapConfig(\n    tp_comm_overlap=True,\n)\n\ncfg.ddp.use_distributed_optimizer = True\ncfg.ddp.overlap_grad_reduce = True\ncfg.ddp.overlap_param_gather = True\n```\n\nOptional TP preset:\n\n```python\nfrom megatron.bridge.training.comm_overlap import userbuffers_bf16_h100_h12288_tp4_mbs1_seqlen2048\n\ncfg.comm_overlap.tp_comm_overlap_cfg = userbuffers_bf16_h100_h12288_tp4_mbs1_seqlen2048\n```\n\nPrecision knobs belong to mixed precision:\n\n```python\ncfg.mixed_precision.grad_reduce_in_fp32 = False\ncfg.mixed_precision.fp8_param_gather = False\n```\n\n## Code Anchors\n\nBridge overlap gating:\n\n```439:449:src\u002Fmegatron\u002Fbridge\u002Ftraining\u002Fcomm_overlap.py\nif self.user_comm_overlap_cfg.tp_comm_overlap is True:\n    if model_cfg.tensor_model_parallel_size \u003C 2:\n        ...\n    elif not model_cfg.sequence_parallel:\n        ...\n    elif not HAVE_TE:\n        ...\n```\n\nPP overlap selection:\n\n```451:458:src\u002Fmegatron\u002Fbridge\u002Ftraining\u002Fcomm_overlap.py\nif model_cfg.pipeline_model_parallel_size > 1:\n    if vp_size > 1:\n        comm_overlap_cfg.overlap_p2p_comm = True\n        comm_overlap_cfg.batch_p2p_comm = False\n    else:\n        comm_overlap_cfg.overlap_p2p_comm = False\n        comm_overlap_cfg.batch_p2p_comm = True\n```\n\nDP overlap defaults:\n\n```572:579:src\u002Fmegatron\u002Fbridge\u002Ftraining\u002Fcomm_overlap.py\nif self.data_parallel_size > 1:\n    comm_overlap_cfg.bucket_size = 128 * 1024 * 1024\n    comm_overlap_cfg.overlap_grad_reduce = True\n    comm_overlap_cfg.overlap_param_gather = True\n```\n\nLaunch-time env tuning:\n\n```570:609:src\u002Fmegatron\u002Fbridge\u002Frecipes\u002Frun_plugins.py\nexecutor.env_vars[\"CUDA_DEVICE_MAX_CONNECTIONS\"] = str(cuda_device_max_connections)\n...\nexecutor.env_vars[\"NVTE_FWD_LAYERNORM_SM_MARGIN\"] = str(self.layernorm_sm_margin)\nexecutor.env_vars[\"NVTE_BWD_LAYERNORM_SM_MARGIN\"] = str(self.layernorm_sm_margin)\n```\n\n## Pitfalls\n\n1. TP overlap silently disables itself if `sequence_parallel=False` or Transformer Engine is unavailable.\n2. PP overlap is not enabled for all PP cases. Bridge only auto-selects `overlap_p2p_comm=True` when `PP > 1` and `VPP > 1`.\n3. `bucket_size` is a parameter-count knob, not a byte-size knob.\n4. `grad_reduce_in_fp32` and `fp8_param_gather` should be set through mixed precision, not as standalone DDP tuning first.\n5. `CUDA_DEVICE_MAX_CONNECTIONS` and LayerNorm SM margin are launch-time plugin settings, not `CommOverlapConfig` fields.\n\n## Verification\n\nUse the checked-in overlap unit coverage first:\n\n```bash\nuv run python -m pytest tests\u002Funit_tests\u002Ftraining\u002Ftest_comm_overlap.py -q\n```\n\nOptional second check if `nemo_run` is available:\n\n```bash\nuv run python -m pytest tests\u002Funit_tests\u002Frecipes\u002Ftest_run_plugins.py -q\n```\n\nSuccess criteria:\n\n- first command reports `26 passed`\n- second command validates plugin-owned env wiring when not skipped\n",{"name":5,"license":15,"description":7,"when_to_use":44},"Enabling TP\u002FDP\u002FPP comm overlap, or tracing a throughput regression to a comm overlap config change; 'overlap_param_gather', 'overlap_grad_reduce', 'sequence-parallel overlap', 'TP overlap', 'DP overlap', 'comm overlap'.","claude\u002Finstall-gsd-build-foQdV","d86cd127f527124b5fd0fd0bc679a4d79b7d01d7",".agents\u002Fskills\u002Fnemo-mbridge-perf-tp-dp-comm-overlap","https:\u002F\u002Fgithub.com\u002Fpattanation\u002FNorvik","https:\u002F\u002Fnorvik-orpin.vercel.app","https:\u002F\u002Fgithub.com\u002Fpattanation","2026-07-17 11:17:04",{"source":8,"skillName":5,"commands":53,"prompt":63,"zipAvailable":64},[54,57,60],{"tool":55,"command":56},"npx","npx skills add pattanation\u002FNorvik --skill nemo-mbridge-perf-tp-dp-comm-overlap",{"tool":58,"command":59},"bunx","bunx skills add pattanation\u002FNorvik --skill nemo-mbridge-perf-tp-dp-comm-overlap",{"tool":61,"command":62},"pnpm","pnpm dlx skills add pattanation\u002FNorvik --skill nemo-mbridge-perf-tp-dp-comm-overlap","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fpattanation\u002FNorvik\u002Fblob\u002Fclaude\u002Finstall-gsd-build-foQdV\u002F.agents\u002Fskills\u002Fnemo-mbridge-perf-tp-dp-comm-overlap\u002FSKILL.md",true,[66,72,76,80,84],{"path":67,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":70,"sourceHtmlUrl":71},"BENCHMARK.md","REFERENCE","参考文档",4371,"https:\u002F\u002Fgithub.com\u002Fpattanation\u002FNorvik\u002Fblob\u002Fclaude\u002Finstall-gsd-build-foQdV\u002F.agents\u002Fskills\u002Fnemo-mbridge-perf-tp-dp-comm-overlap\u002FBENCHMARK.md",{"path":73,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":74,"sourceHtmlUrl":75},"card.yaml",2103,"https:\u002F\u002Fgithub.com\u002Fpattanation\u002FNorvik\u002Fblob\u002Fclaude\u002Finstall-gsd-build-foQdV\u002F.agents\u002Fskills\u002Fnemo-mbridge-perf-tp-dp-comm-overlap\u002Fcard.yaml",{"path":77,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":78,"sourceHtmlUrl":79},"evals\u002Fevals.json",1439,"https:\u002F\u002Fgithub.com\u002Fpattanation\u002FNorvik\u002Fblob\u002Fclaude\u002Finstall-gsd-build-foQdV\u002F.agents\u002Fskills\u002Fnemo-mbridge-perf-tp-dp-comm-overlap\u002Fevals\u002Fevals.json",{"path":81,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":82,"sourceHtmlUrl":83},"skill-card.md",3817,"https:\u002F\u002Fgithub.com\u002Fpattanation\u002FNorvik\u002Fblob\u002Fclaude\u002Finstall-gsd-build-foQdV\u002F.agents\u002Fskills\u002Fnemo-mbridge-perf-tp-dp-comm-overlap\u002Fskill-card.md",{"path":85,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":88,"sourceHtmlUrl":89},"skill.oms.sig","OTHER","其他",4833,"https:\u002F\u002Fgithub.com\u002Fpattanation\u002FNorvik\u002Fblob\u002Fclaude\u002Finstall-gsd-build-foQdV\u002F.agents\u002Fskills\u002Fnemo-mbridge-perf-tp-dp-comm-overlap\u002Fskill.oms.sig",[91,124,150,174,196,211],{"skillNo":92,"name":93,"nameZh":6,"description":94,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":95,"sourceHtmlUrl":96,"categories":97,"keywords":106,"publishedAt":123},"01M71QDV4DM8T19HEHWATEF1K4","webapp-testing","Toolkit for interacting with and testing local web applications using Playwright. Supports verifying frontend functionality, debugging UI behavior, capturing browser screenshots, and viewing browser logs.","https:\u002F\u002Fgithub.com\u002Fpattanation\u002FNorvik\u002Fblob\u002Fclaude\u002Finstall-gsd-build-foQdV\u002F.agents\u002Fskills\u002Fwebapp-testing\u002FLICENSE.txt","https:\u002F\u002Fgithub.com\u002Fpattanation\u002FNorvik\u002Fblob\u002Fclaude\u002Finstall-gsd-build-foQdV\u002F.agents\u002Fskills\u002Fwebapp-testing\u002FSKILL.md",[98,103],{"categoryNo":99,"categoryName":100,"taxonomyType":101,"taxonomyTypeDesc":102},"01JBSEEDCAT000000000000008","测试与质量","SCENARIO","使用场景",{"categoryNo":104,"categoryName":105,"taxonomyType":101,"taxonomyTypeDesc":102},"01JBSEEDCAT000000000000009","前端开发",[107,108,109,30,110,111,112,113,114,115,116,117,118,119,120,121,122],"webapp","testing","webapp testing","applications","local","frontend","debugging","toolkit","logs","browser","with","playwright","web","behavior","ui","screenshots","2026-11-10 13:02:02",{"skillNo":125,"name":126,"nameZh":6,"description":127,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":128,"sourceHtmlUrl":129,"categories":130,"keywords":132,"publishedAt":123},"01M71QDH2GGMXGA9105C9W1N7B","web-artifacts-builder","Suite of tools for creating elaborate, multi-component claude.ai HTML artifacts using modern frontend web technologies (React, Tailwind CSS, shadcn\u002Fui). Use for complex artifacts requiring state management, routing, or shadcn\u002Fui components - not for simple single-file HTML\u002FJSX artifacts.","https:\u002F\u002Fgithub.com\u002Fpattanation\u002FNorvik\u002Fblob\u002Fclaude\u002Finstall-gsd-build-foQdV\u002F.agents\u002Fskills\u002Fweb-artifacts-builder\u002FLICENSE.txt","https:\u002F\u002Fgithub.com\u002Fpattanation\u002FNorvik\u002Fblob\u002Fclaude\u002Finstall-gsd-build-foQdV\u002F.agents\u002Fskills\u002Fweb-artifacts-builder\u002FSKILL.md",[131],{"categoryNo":104,"categoryName":105,"taxonomyType":101,"taxonomyTypeDesc":102},[133,134,135,119,136,137,138,30,139,140,112,141,142,143,144,145,146,147,148,149],"builder","artifacts builder","artifacts","web artifacts builder","single-file","css","Tailwind","ui components","single","use","file","components","react","multi","state","routing","state management",{"skillNo":151,"name":152,"nameZh":6,"description":153,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":154,"licenseFileUrl":155,"sourceHtmlUrl":156,"categories":157,"keywords":159,"publishedAt":123},"01M71QD9T2XC3EWMQNN9ACNWQ1","vueuse-functions","Apply VueUse composables where appropriate to build concise, maintainable Vue.js \u002F Nuxt features.","MIT","https:\u002F\u002Fgithub.com\u002Fpattanation\u002FNorvik\u002Fblob\u002Fclaude\u002Finstall-gsd-build-foQdV\u002F.agents\u002Fskills\u002Fvueuse-functions\u002FLICENSE.md","https:\u002F\u002Fgithub.com\u002Fpattanation\u002FNorvik\u002Fblob\u002Fclaude\u002Finstall-gsd-build-foQdV\u002F.agents\u002Fskills\u002Fvueuse-functions\u002FSKILL.md",[158],{"categoryNo":104,"categoryName":105,"taxonomyType":101,"taxonomyTypeDesc":102},[160,161,162,163,164,165,166,167,168,169,170,171,172,173],"functions","vueuse","vueuse functions","project","nuxt","apply","github","concise","build","https","features","vue","js","composables",{"skillNo":175,"name":176,"nameZh":6,"description":177,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":154,"licenseFileUrl":178,"sourceHtmlUrl":179,"categories":180,"keywords":183,"publishedAt":123},"01M71QD51HWSGYMCMB7RW7PGK8","vue-testing-best-practices","Use for Vue.js testing. Covers Vitest, Vue Test Utils, component testing, mocking, testing patterns, and Playwright for E2E testing.","https:\u002F\u002Fgithub.com\u002Fpattanation\u002FNorvik\u002Fblob\u002Fclaude\u002Finstall-gsd-build-foQdV\u002F.agents\u002Fskills\u002Fvue-testing-best-practices\u002FLICENSE.md","https:\u002F\u002Fgithub.com\u002Fpattanation\u002FNorvik\u002Fblob\u002Fclaude\u002Finstall-gsd-build-foQdV\u002F.agents\u002Fskills\u002Fvue-testing-best-practices\u002FSKILL.md",[181,182],{"categoryNo":99,"categoryName":100,"taxonomyType":101,"taxonomyTypeDesc":102},{"categoryNo":104,"categoryName":105,"taxonomyType":101,"taxonomyTypeDesc":102},[184,108,185,171,186,118,187,188,189,166,190,30,191,192,193,142,194,172,195],"vue testing best practices","testing best practices","best practices","test","testing patterns","component","vitest","mocking","e2e","utils","patterns","e2e testing",{"skillNo":197,"name":198,"nameZh":6,"description":199,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":154,"licenseFileUrl":200,"sourceHtmlUrl":201,"categories":202,"keywords":204,"publishedAt":123},"01M71QD358H2DJ9THJRBP77T3T","vue-router-best-practices","Vue Router 4 patterns, navigation guards, route params, and route-component lifecycle interactions.","https:\u002F\u002Fgithub.com\u002Fpattanation\u002FNorvik\u002Fblob\u002Fclaude\u002Finstall-gsd-build-foQdV\u002F.agents\u002Fskills\u002Fvue-router-best-practices\u002FLICENSE.md","https:\u002F\u002Fgithub.com\u002Fpattanation\u002FNorvik\u002Fblob\u002Fclaude\u002Finstall-gsd-build-foQdV\u002F.agents\u002Fskills\u002Fvue-router-best-practices\u002FSKILL.md",[203],{"categoryNo":104,"categoryName":105,"taxonomyType":101,"taxonomyTypeDesc":102},[205,171,206,186,207,189,208,166,194,209,210],"router","vue router best practices","route","guards","navigation","lifecycle",{"skillNo":212,"name":213,"nameZh":6,"description":214,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":154,"licenseFileUrl":215,"sourceHtmlUrl":216,"categories":217,"keywords":219,"publishedAt":123},"01M71QCYPNWDE2MQZ1TF3ED5S4","vue-best-practices","MUST be used for Vue.js tasks. Strongly recommends Composition API with `\u003Cscript setup>` and TypeScript as the standard approach. Covers Vue 3, SSR, Volar, vue-tsc. Load for any Vue, .vue files, Vue Router, Pinia, or Vite with Vue work. ALWAYS use Composition API unless the project explicitly requires Options API.","https:\u002F\u002Fgithub.com\u002Fpattanation\u002FNorvik\u002Fblob\u002Fclaude\u002Finstall-gsd-build-foQdV\u002F.agents\u002Fskills\u002Fvue-best-practices\u002FLICENSE.md","https:\u002F\u002Fgithub.com\u002Fpattanation\u002FNorvik\u002Fblob\u002Fclaude\u002Finstall-gsd-build-foQdV\u002F.agents\u002Fskills\u002Fvue-best-practices\u002FSKILL.md",[218],{"categoryNo":104,"categoryName":105,"taxonomyType":101,"taxonomyTypeDesc":102},[220,171,186,221,163,222,223,224,205,225,226,227,228,229,230,30,231,142,232,233],"vue best practices","Composition","files","tasks","api","pinia","work","options","ssr","typescript","as","vite","load","standard"]