[{"data":1,"prerenderedAt":817},["ShallowReactive",2],{"navigation_docs":3,"-shipkit-vite-configs":63,"-shipkit-vite-configs-surround":814},[4,26,44],{"title":5,"icon":6,"path":7,"stem":8,"children":9,"page":25},"Getting Started","i-lucide:rocket","\u002Fgetting-started","01.getting-started",[10,14],{"title":11,"path":12,"stem":13,"icon":6},"Introduction","\u002Fgetting-started\u002Fintroduction","01.getting-started\u002F01.introduction",{"title":15,"icon":16,"path":17,"stem":18,"children":19,"page":25},"AI","i-lucide:bot","\u002Fgetting-started\u002Fai","01.getting-started\u002F02.ai",[20],{"title":21,"path":22,"stem":23,"icon":24},"LLMs Integration","\u002Fgetting-started\u002Fai\u002Fllms-txt","01.getting-started\u002F02.ai\u002F01.llms-txt","i-lucide:folder-code",false,{"title":27,"path":28,"stem":29,"children":30},"Video Player","\u002Fvideo-player","02.video-player",[31,34,39],{"title":27,"path":28,"stem":32,"icon":33},"02.video-player\u002Findex","i-lucide:play-circle",{"title":35,"path":36,"stem":37,"icon":38},"Getting started","\u002Fvideo-player\u002Fgetting-started","02.video-player\u002F01.getting-started","i-lucide:download",{"title":40,"path":41,"stem":42,"icon":43},"API reference","\u002Fvideo-player\u002Fapi","02.video-player\u002F02.api","i-lucide:book-open",{"title":45,"icon":46,"path":47,"stem":48,"children":49,"page":25},"Ship Kit","i-lucide:package","\u002Fshipkit","03.shipkit",[50,53,58],{"title":11,"path":51,"stem":52,"icon":46},"\u002Fshipkit\u002Fintroduction","03.shipkit\u002F01.introduction",{"title":54,"path":55,"stem":56,"icon":57},"CLI","\u002Fshipkit\u002Fcli","03.shipkit\u002F02.cli","i-lucide:terminal",{"title":59,"path":60,"stem":61,"icon":62},"Vite Configs","\u002Fshipkit\u002Fvite-configs","03.shipkit\u002F03.vite-configs","i-lucide:code",{"id":64,"title":59,"body":65,"description":807,"extension":808,"links":809,"meta":810,"navigation":811,"path":60,"seo":812,"stem":61,"__hash__":813},"docs\u002F03.shipkit\u002F03.vite-configs.md",{"type":66,"value":67,"toc":797},"minimark",[68,73,86,91,164,168,390,394,400,428,432,439,539,543,546,606,689,693,699,735,793],[69,70,72],"h2",{"id":71},"munsonlabsshipkitvitevueconfig","@munsonlabs\u002Fshipkit\u002Fvite\u002Fvue.config",[74,75,76,77,81,82,85],"p",{},"For all Vue packages, libraries (",[78,79,80],"code",{},"vp pack",") and apps (",[78,83,84],{},"vp build","). Both pipelines coexist in one config.",[87,88,90],"h3",{"id":89},"configuration","Configuration",[92,93,94,110,128,134,140,149],"ul",{},[95,96,97,100,101,103,104,100,107,109],"li",{},[78,98,99],{},"@vitejs\u002Fplugin-vue"," (for ",[78,102,84],{},") + ",[78,105,106],{},"unplugin-vue\u002Frolldown",[78,108,80],{},")",[95,111,112,115,116,119,120,123,124,127],{},[78,113,114],{},"pack.entry"," defaults to ",[78,117,118],{},"{}",", set ",[78,121,122],{},"AUTO_ENTRIES=1"," to auto-detect from ",[78,125,126],{},"package.json"," exports",[95,129,130,133],{},[78,131,132],{},"dts: { vue: true }",": DTS generation including Vue SFC types",[95,135,136,139],{},[78,137,138],{},"vue"," is always external",[95,141,142,145,146],{},[78,143,144],{},"VITE_GIT_VERSION"," injected via ",[78,147,148],{},"define",[95,150,151,152,155,156,159,160,163],{},"oxlint, oxfmt, vitest with ",[78,153,154],{},"happy-dom"," — ",[78,157,158],{},"tests\u002Fsetup.ts"," is picked up automatically as ",[78,161,162],{},"setupFiles"," if it exists",[87,165,167],{"id":166},"usage","Usage",[169,170,175],"pre",{"className":171,"code":172,"language":173,"meta":174,"style":174},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","import { mergeConfig } from 'vite-plus'\nimport type { UserConfig } from 'vite-plus'\nimport base from '@munsonlabs\u002Fshipkit\u002Fvite\u002Fvue.config'\nimport { resolve } from 'node:path'\n\nexport default mergeConfig(base, {\n  pack: {\n    entry: {\n      index: resolve(import.meta.dirname, 'src\u002Findex.ts'),\n    },\n  },\n}) as UserConfig\n","ts","",[78,176,177,210,233,250,271,278,299,311,321,362,368,374],{"__ignoreMap":174},[178,179,182,186,190,194,197,200,203,207],"span",{"class":180,"line":181},"line",1,[178,183,185],{"class":184},"s7zQu","import",[178,187,189],{"class":188},"sMK4o"," {",[178,191,193],{"class":192},"sTEyZ"," mergeConfig",[178,195,196],{"class":188}," }",[178,198,199],{"class":184}," from",[178,201,202],{"class":188}," '",[178,204,206],{"class":205},"sfazB","vite-plus",[178,208,209],{"class":188},"'\n",[178,211,213,215,218,220,223,225,227,229,231],{"class":180,"line":212},2,[178,214,185],{"class":184},[178,216,217],{"class":184}," type",[178,219,189],{"class":188},[178,221,222],{"class":192}," UserConfig",[178,224,196],{"class":188},[178,226,199],{"class":184},[178,228,202],{"class":188},[178,230,206],{"class":205},[178,232,209],{"class":188},[178,234,236,238,241,244,246,248],{"class":180,"line":235},3,[178,237,185],{"class":184},[178,239,240],{"class":192}," base ",[178,242,243],{"class":184},"from",[178,245,202],{"class":188},[178,247,72],{"class":205},[178,249,209],{"class":188},[178,251,253,255,257,260,262,264,266,269],{"class":180,"line":252},4,[178,254,185],{"class":184},[178,256,189],{"class":188},[178,258,259],{"class":192}," resolve",[178,261,196],{"class":188},[178,263,199],{"class":184},[178,265,202],{"class":188},[178,267,268],{"class":205},"node:path",[178,270,209],{"class":188},[178,272,274],{"class":180,"line":273},5,[178,275,277],{"emptyLinePlaceholder":276},true,"\n",[178,279,281,284,287,290,293,296],{"class":180,"line":280},6,[178,282,283],{"class":184},"export",[178,285,286],{"class":184}," default",[178,288,193],{"class":289},"s2Zo4",[178,291,292],{"class":192},"(base",[178,294,295],{"class":188},",",[178,297,298],{"class":188}," {\n",[178,300,302,306,309],{"class":180,"line":301},7,[178,303,305],{"class":304},"swJcz","  pack",[178,307,308],{"class":188},":",[178,310,298],{"class":188},[178,312,314,317,319],{"class":180,"line":313},8,[178,315,316],{"class":304},"    entry",[178,318,308],{"class":188},[178,320,298],{"class":188},[178,322,324,327,329,331,334,336,339,342,344,347,349,351,354,357,359],{"class":180,"line":323},9,[178,325,326],{"class":304},"      index",[178,328,308],{"class":188},[178,330,259],{"class":289},[178,332,333],{"class":192},"(",[178,335,185],{"class":184},[178,337,338],{"class":188},".",[178,340,341],{"class":192},"meta",[178,343,338],{"class":188},[178,345,346],{"class":192},"dirname",[178,348,295],{"class":188},[178,350,202],{"class":188},[178,352,353],{"class":205},"src\u002Findex.ts",[178,355,356],{"class":188},"'",[178,358,109],{"class":192},[178,360,361],{"class":188},",\n",[178,363,365],{"class":180,"line":364},10,[178,366,367],{"class":188},"    },\n",[178,369,371],{"class":180,"line":370},11,[178,372,373],{"class":188},"  },\n",[178,375,377,380,383,386],{"class":180,"line":376},12,[178,378,379],{"class":188},"}",[178,381,382],{"class":192},") ",[178,384,385],{"class":184},"as",[178,387,389],{"class":388},"sBMFI"," UserConfig\n",[87,391,393],{"id":392},"auto-entries","Auto-entries",[74,395,396,397,399],{},"Set in build scripts to auto-detect from ",[78,398,126],{}," exports:",[169,401,405],{"className":402,"code":403,"language":404,"meta":174,"style":174},"language-json shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\"build\": \"AUTO_ENTRIES=1 vp pack\"\n","json",[78,406,407],{"__ignoreMap":174},[178,408,409,412,415,417,420,422,425],{"class":180,"line":181},[178,410,411],{"class":188},"\"",[178,413,414],{"class":205},"build",[178,416,411],{"class":188},[178,418,419],{"class":192},": ",[178,421,411],{"class":188},[178,423,424],{"class":205},"AUTO_ENTRIES=1 vp pack",[178,426,427],{"class":188},"\"\n",[69,429,431],{"id":430},"munsonlabsshipkitvitebaseconfig","@munsonlabs\u002Fshipkit\u002Fvite\u002Fbase.config",[74,433,434,435,438],{},"For plain TypeScript libraries (no Vue). Same ",[78,436,437],{},"AUTO_ENTRIES"," pattern.",[169,440,442],{"className":171,"code":441,"language":173,"meta":174,"style":174},"import { mergeConfig } from 'vite-plus'\nimport base from '@munsonlabs\u002Fshipkit\u002Fvite\u002Fbase.config'\n\nexport default mergeConfig(base, {\n  pack: {\n    entry: { index: '.\u002Fsrc\u002Findex.ts' },\n  },\n}) as UserConfig\n",[78,443,444,462,476,480,494,502,525,529],{"__ignoreMap":174},[178,445,446,448,450,452,454,456,458,460],{"class":180,"line":181},[178,447,185],{"class":184},[178,449,189],{"class":188},[178,451,193],{"class":192},[178,453,196],{"class":188},[178,455,199],{"class":184},[178,457,202],{"class":188},[178,459,206],{"class":205},[178,461,209],{"class":188},[178,463,464,466,468,470,472,474],{"class":180,"line":212},[178,465,185],{"class":184},[178,467,240],{"class":192},[178,469,243],{"class":184},[178,471,202],{"class":188},[178,473,431],{"class":205},[178,475,209],{"class":188},[178,477,478],{"class":180,"line":235},[178,479,277],{"emptyLinePlaceholder":276},[178,481,482,484,486,488,490,492],{"class":180,"line":252},[178,483,283],{"class":184},[178,485,286],{"class":184},[178,487,193],{"class":289},[178,489,292],{"class":192},[178,491,295],{"class":188},[178,493,298],{"class":188},[178,495,496,498,500],{"class":180,"line":273},[178,497,305],{"class":304},[178,499,308],{"class":188},[178,501,298],{"class":188},[178,503,504,506,508,510,513,515,517,520,522],{"class":180,"line":280},[178,505,316],{"class":304},[178,507,308],{"class":188},[178,509,189],{"class":188},[178,511,512],{"class":304}," index",[178,514,308],{"class":188},[178,516,202],{"class":188},[178,518,519],{"class":205},".\u002Fsrc\u002Findex.ts",[178,521,356],{"class":188},[178,523,524],{"class":188}," },\n",[178,526,527],{"class":180,"line":301},[178,528,373],{"class":188},[178,530,531,533,535,537],{"class":180,"line":313},[178,532,379],{"class":188},[178,534,382],{"class":192},[178,536,385],{"class":184},[178,538,389],{"class":388},[69,540,542],{"id":541},"config-fragments","Config fragments",[74,544,545],{},"Cherry-pick individual sections:",[169,547,549],{"className":171,"code":548,"language":173,"meta":174,"style":174},"import { lint, fmt, test } from '@munsonlabs\u002Fshipkit\u002Fvite\u002Fshared'\nimport { pack, plugins } from '@munsonlabs\u002Fshipkit\u002Fvite\u002Fvue'\n",[78,550,551,581],{"__ignoreMap":174},[178,552,553,555,557,560,562,565,567,570,572,574,576,579],{"class":180,"line":181},[178,554,185],{"class":184},[178,556,189],{"class":188},[178,558,559],{"class":192}," lint",[178,561,295],{"class":188},[178,563,564],{"class":192}," fmt",[178,566,295],{"class":188},[178,568,569],{"class":192}," test",[178,571,196],{"class":188},[178,573,199],{"class":184},[178,575,202],{"class":188},[178,577,578],{"class":205},"@munsonlabs\u002Fshipkit\u002Fvite\u002Fshared",[178,580,209],{"class":188},[178,582,583,585,587,590,592,595,597,599,601,604],{"class":180,"line":212},[178,584,185],{"class":184},[178,586,189],{"class":188},[178,588,589],{"class":192}," pack",[178,591,295],{"class":188},[178,593,594],{"class":192}," plugins",[178,596,196],{"class":188},[178,598,199],{"class":184},[178,600,202],{"class":188},[178,602,603],{"class":205},"@munsonlabs\u002Fshipkit\u002Fvite\u002Fvue",[178,605,209],{"class":188},[607,608,609,622],"table",{},[610,611,612],"thead",{},[613,614,615,619],"tr",{},[616,617,618],"th",{},"Fragment",[616,620,621],{},"Description",[623,624,625,640,652,664,677],"tbody",{},[613,626,627,637],{},[628,629,630,633,634],"td",{},[78,631,632],{},"vite\u002Fshared"," → ",[78,635,636],{},"lint",[628,638,639],{},"oxlint configuration",[613,641,642,649],{},[628,643,644,633,646],{},[78,645,632],{},[78,647,648],{},"fmt",[628,650,651],{},"oxfmt configuration",[613,653,654,661],{},[628,655,656,633,658],{},[78,657,632],{},[78,659,660],{},"test",[628,662,663],{},"vitest (happy-dom, globals)",[613,665,666,674],{},[628,667,668,633,671],{},[78,669,670],{},"vite\u002Fvue",[78,672,673],{},"pack",[628,675,676],{},"unplugin-vue, dts, entry",[613,678,679,686],{},[628,680,681,633,683],{},[78,682,670],{},[78,684,685],{},"plugins",[628,687,688],{},"Vue plugins section",[69,690,692],{"id":691},"shared-tsconfigs","Shared tsconfigs",[74,694,695,696,308],{},"Extend in ",[78,697,698],{},"tsconfig.json",[169,700,702],{"className":402,"code":701,"language":404,"meta":174,"style":174},"{\n  \"extends\": \"@munsonlabs\u002Fshipkit\u002Ftsconfig\u002Flib\"\n}\n",[78,703,704,709,730],{"__ignoreMap":174},[178,705,706],{"class":180,"line":181},[178,707,708],{"class":188},"{\n",[178,710,711,714,718,720,722,725,728],{"class":180,"line":212},[178,712,713],{"class":188},"  \"",[178,715,717],{"class":716},"spNyl","extends",[178,719,411],{"class":188},[178,721,308],{"class":188},[178,723,724],{"class":188}," \"",[178,726,727],{"class":205},"@munsonlabs\u002Fshipkit\u002Ftsconfig\u002Flib",[178,729,427],{"class":188},[178,731,732],{"class":180,"line":235},[178,733,734],{"class":188},"}\n",[607,736,737,747],{},[610,738,739],{},[613,740,741,744],{},[616,742,743],{},"Config",[616,745,746],{},"Use case",[623,748,749,766,780],{},[613,750,751,756],{},[628,752,753],{},[78,754,755],{},"tsconfig\u002Fbase",[628,757,758,759,762,763],{},"Strict ESM - ",[78,760,761],{},"nodenext",", ",[78,764,765],{},"noEmit",[613,767,768,773],{},[628,769,770],{},[78,771,772],{},"tsconfig\u002Flib",[628,774,775,776,779],{},"Libraries - ",[78,777,778],{},"bundler"," resolution, DOM, JSX",[613,781,782,787],{},[628,783,784],{},[78,785,786],{},"tsconfig\u002Fapp",[628,788,789,790],{},"Apps - same as lib + ",[78,791,792],{},"isolatedModules",[794,795,796],"style",{},"html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}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 .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}",{"title":174,"searchDepth":212,"depth":212,"links":798},[799,804,805,806],{"id":71,"depth":212,"text":72,"children":800},[801,802,803],{"id":89,"depth":235,"text":90},{"id":166,"depth":235,"text":167},{"id":392,"depth":235,"text":393},{"id":430,"depth":212,"text":431},{"id":541,"depth":212,"text":542},{"id":691,"depth":212,"text":692},"Shared vite configurations for Vue packages and plain TypeScript libraries.","md",null,{},{"icon":62},{"title":59,"description":807},"f0WYOZa4y1V2vFNCsnKal5P8ABE9-LzPaSO4WuNpaLw",[815,809],{"title":54,"path":55,"stem":56,"description":816,"icon":57,"children":-1},"shipkit init, shipkit deploy, and shipkit version commands.",1789409982724]