Skip to content

Commit 6dd8e9c

Browse files
committed
docs: optimize build chunk splitting and dependencies
1 parent 31e80d7 commit 6dd8e9c

2 files changed

Lines changed: 35 additions & 4 deletions

File tree

docs/.vitepress/config.mts

Lines changed: 34 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1199,14 +1199,45 @@ export default defineConfig({
11991199

12001200
vite: {
12011201
build: {
1202-
chunkSizeWarningLimit: 1000,
1202+
chunkSizeWarningLimit: 1500,
12031203
rollupOptions: {
12041204
output: {
1205-
manualChunks: {
1206-
'vitepress-core': ['vitepress'],
1205+
manualChunks(id) {
1206+
// Split vitepress into smaller chunks
1207+
if (id.includes('node_modules/vitepress/')) {
1208+
if (id.includes('vitepress/dist/client')) {
1209+
return 'vitepress-client'
1210+
}
1211+
if (id.includes('vitepress/dist/node')) {
1212+
return 'vitepress-node'
1213+
}
1214+
return 'vitepress-core'
1215+
}
1216+
// Split Vue into separate chunk
1217+
if (id.includes('node_modules/vue/') || id.includes('node_modules/@vue/')) {
1218+
return 'vue-vendor'
1219+
}
1220+
// Split markdown-it and related
1221+
if (id.includes('node_modules/markdown-it') || id.includes('node_modules/@mdit-vue')) {
1222+
return 'markdown'
1223+
}
1224+
// Split search
1225+
if (id.includes('node_modules/@vueuse/') || id.includes('node_modules/minisearch')) {
1226+
return 'search'
1227+
}
1228+
// Split Shiki for code highlighting
1229+
if (id.includes('node_modules/shiki/') || id.includes('node_modules/shiki-')) {
1230+
return 'shiki'
1231+
}
12071232
},
12081233
},
12091234
},
12101235
},
1236+
optimizeDeps: {
1237+
include: ['mark.js'],
1238+
},
1239+
ssr: {
1240+
noExternal: ['mark.js'],
1241+
},
12111242
},
12121243
})

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -119,4 +119,4 @@
119119
"registry": "https://registry.npmjs.org",
120120
"access": "public"
121121
}
122-
}
122+
}

0 commit comments

Comments
 (0)