diff --git a/webui/vite.config.mts b/webui/vite.config.mts
index 9765931..b212792 100644
--- a/webui/vite.config.mts
+++ b/webui/vite.config.mts
@@ -11,11 +11,13 @@
       include: ["./src/**/*.ts"],
       presets: [presets.lit],
     }),
-    // Custom plugin for handling the root path redirect
+    // Custom plugin for handling the root path redirect and Monaco workers
     {
       name: "configure-server",
       configureServer(server) {
+        // Handle root redirects and Monaco worker proxying
         server.middlewares.use((req, res, next) => {
+          // Root redirect
           if (req.url === "/") {
             res.writeHead(302, {
               Location: "/src/web-components/demo/index.html",
@@ -23,6 +25,74 @@
             res.end();
             return;
           }
+
+          // Monaco worker and asset mapping
+          // This ensures the development paths match the production paths
+
+          // Handle worker URLs
+          if (req.url?.startsWith("/static/editor.worker.js")) {
+            const workerPath =
+              "/node_modules/monaco-editor/esm/vs/editor/editor.worker.js";
+            res.writeHead(302, { Location: workerPath });
+            res.end();
+            return;
+          }
+
+          if (req.url?.startsWith("/static/json.worker.js")) {
+            const workerPath =
+              "/node_modules/monaco-editor/esm/vs/language/json/json.worker.js";
+            res.writeHead(302, { Location: workerPath });
+            res.end();
+            return;
+          }
+
+          if (req.url?.startsWith("/static/css.worker.js")) {
+            const workerPath =
+              "/node_modules/monaco-editor/esm/vs/language/css/css.worker.js";
+            res.writeHead(302, { Location: workerPath });
+            res.end();
+            return;
+          }
+
+          if (req.url?.startsWith("/static/html.worker.js")) {
+            const workerPath =
+              "/node_modules/monaco-editor/esm/vs/language/html/html.worker.js";
+            res.writeHead(302, { Location: workerPath });
+            res.end();
+            return;
+          }
+
+          if (req.url?.startsWith("/static/ts.worker.js")) {
+            const workerPath =
+              "/node_modules/monaco-editor/esm/vs/language/typescript/ts.worker.js";
+            res.writeHead(302, { Location: workerPath });
+            res.end();
+            return;
+          }
+
+          // Handle CSS and font files
+          if (
+            req.url?.startsWith("/static/monaco/min/vs/editor/editor.main.css")
+          ) {
+            const cssPath =
+              "/node_modules/monaco-editor/min/vs/editor/editor.main.css";
+            res.writeHead(302, { Location: cssPath });
+            res.end();
+            return;
+          }
+
+          if (
+            req.url?.startsWith(
+              "/static/monaco/min/vs/base/browser/ui/codicons/codicon/codicon.ttf",
+            )
+          ) {
+            const fontPath =
+              "/node_modules/monaco-editor/min/vs/base/browser/ui/codicons/codicon/codicon.ttf";
+            res.writeHead(302, { Location: fontPath });
+            res.end();
+            return;
+          }
+
           next();
         });
       },
@@ -36,4 +106,40 @@
       allow: ["."],
     },
   },
+  // Configure Monaco Editor
+  resolve: {
+    alias: {
+      "monaco-editor": "monaco-editor/esm/vs/editor/editor.api",
+    },
+  },
+  optimizeDeps: {
+    include: ["monaco-editor"],
+  },
+  // Allow importing CSS as string
+  css: {
+    preprocessorOptions: {
+      additionalData: '@import "monaco-editor/min/vs/editor/editor.main.css";',
+    },
+  },
+  build: {
+    rollupOptions: {
+      output: {
+        manualChunks: {
+          "monaco-editor": ["monaco-editor"],
+          // Add separate chunks for Monaco editor workers
+          "monaco-editor-worker": ["monaco-editor/esm/vs/editor/editor.worker"],
+          "monaco-json-worker": [
+            "monaco-editor/esm/vs/language/json/json.worker",
+          ],
+          "monaco-css-worker": ["monaco-editor/esm/vs/language/css/css.worker"],
+          "monaco-html-worker": [
+            "monaco-editor/esm/vs/language/html/html.worker",
+          ],
+          "monaco-ts-worker": [
+            "monaco-editor/esm/vs/language/typescript/ts.worker",
+          ],
+        },
+      },
+    },
+  },
 });
