diff --git a/package.json b/package.json
index 7898c9ef5e..a559045179 100644
--- a/package.json
+++ b/package.json
@@ -21,6 +21,7 @@
"start": "fedx-scripts webpack-dev-server --progress",
"dev": "PUBLIC_PATH=/learning/ MFE_CONFIG_API_URL='http://localhost:8000/api/mfe_config/v1' fedx-scripts webpack-dev-server --progress --host apps.local.openedx.io",
"test": "fedx-scripts jest --coverage --passWithNoTests",
+ "test2": "fedx-scripts jest --passWithNoTests",
"types": "tsc --noEmit"
},
"author": "edX",
diff --git a/src/courseware/course/chat/Chat.jsx b/src/courseware/course/chat/Chat.jsx
index 4dbe81398c..92c30d3d94 100644
--- a/src/courseware/course/chat/Chat.jsx
+++ b/src/courseware/course/chat/Chat.jsx
@@ -1,13 +1,16 @@
+import { React, Suspense, lazy } from 'react';
import { createPortal } from 'react-dom';
import { useSelector } from 'react-redux';
import PropTypes from 'prop-types';
+import { Spinner } from '@openedx/paragon';
-import { Xpert } from '@edx/frontend-lib-learning-assistant';
import { injectIntl } from '@edx/frontend-platform/i18n';
import { VERIFIED_MODES } from '@src/constants';
import { useModel } from '../../../generic/model-store';
+const Xpert = lazy(async () => ({ default: (await import('@edx/frontend-lib-learning-assistant')).Xpert }));
+
const Chat = ({
enabled,
enrollmentMode,
@@ -54,7 +57,11 @@ const Chat = ({
<>
{/* Use a portal to ensure that component overlay does not compete with learning MFE styles. */}
{shouldDisplayChat && (createPortal(
-