diff --git a/apps/www/components/CommandMenu/CommandMenu.tsx b/apps/www/components/CommandMenu/CommandMenu.tsx
new file mode 100644
index 00000000000..0079aa41977
--- /dev/null
+++ b/apps/www/components/CommandMenu/CommandMenu.tsx
@@ -0,0 +1,23 @@
+import { CommandHeader, CommandInput, CommandList, CommandMenu } from 'ui-patterns/CommandMenu'
+import { useChangelogCommand } from 'ui-patterns/CommandMenu/prepackaged/Changelog'
+import { useDocsAiCommands } from 'ui-patterns/CommandMenu/prepackaged/DocsAi'
+import { useDocsSearchCommands } from 'ui-patterns/CommandMenu/prepackaged/DocsSearch'
+import { useSupportCommands } from 'ui-patterns/CommandMenu/prepackaged/Support'
+import { useThemeSwitcherCommands } from 'ui-patterns/CommandMenu/prepackaged/ThemeSwitcher'
+
+export default function WwwCommandMenuEager() {
+ useDocsSearchCommands()
+ useDocsAiCommands()
+ useChangelogCommand()
+ useSupportCommands()
+ useThemeSwitcherCommands()
+
+ return (
+
+
+
+
+
+
+ )
+}
diff --git a/apps/www/components/CommandMenu/index.tsx b/apps/www/components/CommandMenu/index.tsx
new file mode 100644
index 00000000000..d04903e4aa2
--- /dev/null
+++ b/apps/www/components/CommandMenu/index.tsx
@@ -0,0 +1,12 @@
+'use client'
+
+import dynamic from 'next/dynamic'
+
+import { useCommandMenuInitiated } from 'ui-patterns/CommandMenu'
+
+const LazyCommandMenu = dynamic(() => import('./CommandMenu'), { ssr: false })
+
+export function WwwCommandMenu() {
+ const isInitiated = useCommandMenuInitiated()
+ return isInitiated &&
+}
diff --git a/apps/www/pages/_app.tsx b/apps/www/pages/_app.tsx
index 8fb29e74f75..525d3a33b4c 100644
--- a/apps/www/pages/_app.tsx
+++ b/apps/www/pages/_app.tsx
@@ -10,13 +10,14 @@ import Head from 'next/head'
import { useRouter } from 'next/router'
import { useEffect } from 'react'
import { PortalToast, themes } from 'ui'
-import { CommandMenuProvider } from 'ui-patterns/Cmdk'
+import { CommandProvider } from 'ui-patterns/CommandMenu'
import { useConsent } from 'ui-patterns/ConsentToast'
import MetaFaviconsPagesRouter, {
DEFAULT_FAVICON_ROUTE,
DEFAULT_FAVICON_THEME_COLOR,
} from 'common/MetaFavicons/pages-router'
+import { WwwCommandMenu } from '~/components/CommandMenu'
import { API_URL, APP_NAME, DEFAULT_META_DESCRIPTION } from '~/lib/constants'
import { post } from '~/lib/fetchWrapper'
import supabase from '~/lib/supabase'
@@ -124,10 +125,11 @@ export default function App({ Component, pageProps }: AppProps) {
disableTransitionOnChange
forcedTheme={forceDarkMode ? 'dark' : undefined}
>
-
+
-
+
+
diff --git a/apps/www/pages/support.tsx b/apps/www/pages/support.tsx
index 57556152d49..c9ba1ec6de2 100644
--- a/apps/www/pages/support.tsx
+++ b/apps/www/pages/support.tsx
@@ -4,7 +4,7 @@ import { useRouter } from 'next/router'
import { NextSeo } from 'next-seo'
import Typed from 'typed.js'
import { Button, ButtonProps, cn, IconCommand, IconSearch } from 'ui'
-import { SearchButton } from 'ui-patterns/Cmdk'
+import { CommandMenuTrigger } from 'ui-patterns/CommandMenu'
import DefaultLayout from '~/components/Layouts/Default'
import Panel from '~/components/Panel'
@@ -53,9 +53,12 @@ const Index = () => {
{data.hero.h1}
{data.hero.title}
-
-
+
-
-
+
+
diff --git a/packages/ui-patterns/CommandMenu/prepackaged/shared/constants.ts b/packages/ui-patterns/CommandMenu/prepackaged/shared/constants.ts
index feb7f5706b3..a121a225aa4 100644
--- a/packages/ui-patterns/CommandMenu/prepackaged/shared/constants.ts
+++ b/packages/ui-patterns/CommandMenu/prepackaged/shared/constants.ts
@@ -1,3 +1,3 @@
-const BASE_PATH = process.env.NEXT_PUBLIC_BASE_PATH
+const BASE_PATH = process.env.NEXT_PUBLIC_BASE_PATH ?? ''
export { BASE_PATH }