diff --git a/client/src/hooks/useNewConvo.ts b/client/src/hooks/useNewConvo.ts index d6c3bba8c3..7c4111869f 100644 --- a/client/src/hooks/useNewConvo.ts +++ b/client/src/hooks/useNewConvo.ts @@ -92,6 +92,10 @@ const useNewConvo = (index = 0) => { } if (conversation.conversationId === 'new' && !modelsData) { + const appTitle = localStorage.getItem('appTitle'); + if (appTitle) { + document.title = appTitle; + } navigate('new'); } }, diff --git a/client/src/routes/ChatRoute.tsx b/client/src/routes/ChatRoute.tsx index aaf0e5ab8c..36807d560f 100644 --- a/client/src/routes/ChatRoute.tsx +++ b/client/src/routes/ChatRoute.tsx @@ -4,6 +4,7 @@ import { useParams } from 'react-router-dom'; import { useGetConvoIdQuery, useGetModelsQuery, + useGetStartupConfig, useGetEndpointsQuery, } from 'librechat-data-provider/react-query'; import type { TPreset } from 'librechat-data-provider'; @@ -18,6 +19,8 @@ export default function ChatRoute() { useConfigOverride(); const { conversationId } = useParams(); + const { data: startupConfig } = useGetStartupConfig(); + const { conversation } = store.useCreateConversationAtom(index); const modelsQueryEnabled = useRecoilValue(store.modelsQueryEnabled); const { isAuthenticated } = useAuthRedirect(); @@ -30,6 +33,13 @@ export default function ChatRoute() { }); const endpointsQuery = useGetEndpointsQuery({ enabled: isAuthenticated && modelsQueryEnabled }); + useEffect(() => { + if (startupConfig?.appTitle) { + document.title = startupConfig.appTitle; + localStorage.setItem('appTitle', startupConfig.appTitle); + } + }, [startupConfig]); + useEffect(() => { if ( conversationId === 'new' &&