+
+
+
+ )}
+
+ );
+};
+
+export default RankingSection;
diff --git a/openmetadata-ui/src/main/resources/ui/src/components/discovery/personal-space/Profile/tabs/platform-settings/search/SearchEntityCards.tsx b/openmetadata-ui/src/main/resources/ui/src/components/discovery/personal-space/Profile/tabs/platform-settings/search/SearchEntityCards.tsx
new file mode 100644
index 000000000000..8705b8a0fbb5
--- /dev/null
+++ b/openmetadata-ui/src/main/resources/ui/src/components/discovery/personal-space/Profile/tabs/platform-settings/search/SearchEntityCards.tsx
@@ -0,0 +1,93 @@
+/*
+ * Copyright 2026 Collate.
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import { Box, Card, Typography } from '@openmetadata/ui-core-components';
+import type { FC } from 'react';
+import { useMemo } from 'react';
+import { useTranslation } from 'react-i18next';
+import { usePermissionProvider } from '../../../../../../../context/PermissionProvider/PermissionProvider';
+import { useAuth } from '../../../../../../../hooks/authHooks';
+import { getSearchSettingCategories } from '../../../../../../../utils/SearchSettingsUtils';
+import type { PlatformSettingsPageProps } from '../PlatformSettings.types';
+import { SearchSectionTitle } from './SearchSection';
+
+/** One card per entity type, opening that entity's search settings. */
+const SearchEntityCards = ({
+ onNavigate,
+}: Pick) => {
+ const { t } = useTranslation();
+ const { permissions } = usePermissionProvider();
+ const { isAdminUser } = useAuth();
+ const entityCategories = useMemo(
+ () => getSearchSettingCategories(permissions, Boolean(isAdminUser)) ?? [],
+ [permissions, isAdminUser]
+ );
+
+ return (
+
+ {t('label.entity-plural')}
+
+
+ );
+};
+
+export default SearchEntityCards;
diff --git a/openmetadata-ui/src/main/resources/ui/src/components/discovery/personal-space/Profile/tabs/platform-settings/search/SearchPreviewPanel.test.tsx b/openmetadata-ui/src/main/resources/ui/src/components/discovery/personal-space/Profile/tabs/platform-settings/search/SearchPreviewPanel.test.tsx
new file mode 100644
index 000000000000..daba9cece632
--- /dev/null
+++ b/openmetadata-ui/src/main/resources/ui/src/components/discovery/personal-space/Profile/tabs/platform-settings/search/SearchPreviewPanel.test.tsx
@@ -0,0 +1,185 @@
+/*
+ * Copyright 2026 Collate.
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import { act, fireEvent, render, screen } from '@testing-library/react';
+import { SearchIndex } from '../../../../../../../enums/search.enum';
+import { searchPreview } from '../../../../../../../rest/searchAPI';
+import { showErrorToast } from '../../../../../../../utils/ToastUtils';
+import SearchPreviewPanel from './SearchPreviewPanel';
+
+jest.mock('react-i18next', () => ({
+ useTranslation: () => ({ t: (key: string) => key }),
+}));
+
+jest.mock('../../../../../../../rest/searchAPI', () => ({
+ searchPreview: jest.fn(),
+}));
+
+jest.mock('../../../../../../../utils/ToastUtils', () => ({
+ showErrorToast: jest.fn(),
+}));
+
+jest.mock(
+ '../../../../../../ExploreV1/ExploreSearchCard/ExploreSearchCard',
+ () =>
+ ({
+ source,
+ score,
+ }: {
+ source: { fullyQualifiedName: string };
+ score?: number;
+ }) =>
+ (
+