diff --git a/src/components/code/AdvancedCodeEditor.tsx b/src/components/code/AdvancedCodeEditor.tsx
index 96d49f1e..df843d84 100644
--- a/src/components/code/AdvancedCodeEditor.tsx
+++ b/src/components/code/AdvancedCodeEditor.tsx
@@ -1,6 +1,8 @@
'use client';
-import React, { Suspense } from 'react';
+import React from 'react';
+import dynamic from 'next/dynamic';
+import { loader } from '@monaco-editor/react';
import {
Play,
RotateCcw,
@@ -21,10 +23,18 @@ import { AutoCompletion } from './AutoCompletion';
import { CollaborativeEditing } from './CollaborativeEditing';
import type { CompletionSuggestion } from '@/utils/codeUtils';
-// Lazy-load Monaco to avoid SSR issues in Next.js
-const MonacoEditor = React.lazy(() =>
- import('@monaco-editor/react').then((mod) => ({ default: mod.default })),
-);
+// Configure Monaco Web Worker to use CDN to prevent main-thread blocking
+loader.config({
+ paths: {
+ vs: 'https://cdn.jsdelivr.net/npm/monaco-editor@0.43.0/min/vs'
+ }
+});
+
+// Lazy-load Monaco using Next.js dynamic to avoid SSR issues and improve initial render
+const MonacoEditor = dynamic(() => import('@monaco-editor/react').then((mod) => mod.default), {
+ ssr: false,
+ loading: () =>