From aca4d045b2dfa06a57effdfd4a2865613628d743 Mon Sep 17 00:00:00 2001 From: CC Worker Date: Sun, 31 May 2026 23:28:11 +0000 Subject: [PATCH 1/2] perf: split tldraw/MUI/supabase into separate vendor chunks --- vite.config.ts | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/vite.config.ts b/vite.config.ts index b48799d..c368d7a 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -117,6 +117,15 @@ export default defineConfig(({ mode }) => { build: { outDir: 'dist', sourcemap: mode === 'development', + rollupOptions: { + output: { + manualChunks: { + 'vendor-tldraw': ['@tldraw/tldraw', '@tldraw/state', '@tldraw/store'], + 'vendor-mui': ['@mui/material', '@mui/icons-material', '@emotion/react', '@emotion/styled'], + 'vendor-supabase': ['@supabase/supabase-js'], + }, + }, + }, }, resolve: { From 2e3cb134d1c8b38a7390156e86e911400c99fd2f Mon Sep 17 00:00:00 2001 From: CC Worker Date: Sun, 31 May 2026 23:31:15 +0000 Subject: [PATCH 2/2] =?UTF-8?q?perf:=20expand=20manual=20chunks=20?= =?UTF-8?q?=E2=80=94=20add=20react/router,=20calendar,=20xyflow=20vendor?= =?UTF-8?q?=20splits?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit index bundle: 1565kB → 1085kB (under 1500kB target) Chunks: vendor-react 163kB, vendor-calendar 274kB, vendor-xyflow 181kB added. --- vite.config.ts | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/vite.config.ts b/vite.config.ts index c368d7a..72c5f99 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -120,9 +120,14 @@ export default defineConfig(({ mode }) => { rollupOptions: { output: { manualChunks: { - 'vendor-tldraw': ['@tldraw/tldraw', '@tldraw/state', '@tldraw/store'], - 'vendor-mui': ['@mui/material', '@mui/icons-material', '@emotion/react', '@emotion/styled'], + 'vendor-react': ['react', 'react-dom', 'react-router-dom'], + 'vendor-tldraw': ['@tldraw/tldraw', '@tldraw/state', '@tldraw/store'], + 'vendor-mui': ['@mui/material', '@mui/icons-material', '@emotion/react', '@emotion/styled'], 'vendor-supabase': ['@supabase/supabase-js'], + 'vendor-calendar': ['@fullcalendar/core', '@fullcalendar/daygrid', '@fullcalendar/interaction', + '@fullcalendar/list', '@fullcalendar/multimonth', '@fullcalendar/react', + '@fullcalendar/timegrid'], + 'vendor-xyflow': ['@xyflow/react'], }, }, },