React UI Reference
The Depict Category Page UI React SDK enables seamless integration of Depict Category Page UI into your React web applications. With our developer-friendly components and wrappers, you can effortlessly render all product categories to your eCommerce website.
Please find the guide on how to integrate with depict if you’re using react here.
React component API
The SDK is pre-built with React components and wrappers, making it a perfect fit for React.js and Next.js web applications. The following sections describe these components and their configuration.
The DepictProvider
component
The DepictProvider
is a wrapper component for the root component of your entire application. It provides configuration to all Depict UI components beneath it.
return (
<DepictProvider merchant="MERCHANT_ID" market="MARKET_IDENTIFIER">
<div className="App">...</div>
</DepictProvider>
);
The following table shows all DepictProvider
configuration properties, their types, and descriptions:
This is the unique merchant identifier given by Depict.
This specifies the market identifier.
Configuration object lets you customize your website’s search parameters.
This handles the Depict Search UI translations and price formatting, gotten from the Depict locale object.
This function will be used internally by our components to navigate between Depict Search UI pages.This prop is required in all applications that don’t use Next.JS
Identifies a logged in user, if applicable
A <string, string> map of custom metadata to include in API requests to Depict
A function that can be used to create page_urls inside of the displays and
otherwise modify all displays before the productCard
’s are rendered. See
Creating page URLs and enriching product
data
The CategoryPage
component
The CategoryPage
component renders your site’s different product category pages.
return (
<div>
<CategoryPage
categoryId="CATEGORY_IDENTIFIER"
productCard={ProductCard}
columnsAtSize={[[4], [3, 1024], [2, 901]]}
categoryTitlePlugin={EmbeddedNumProducts}
/>
</div>
);
The following table shows all CategoryPage
configuration properties, their types, and descriptions:
The unique identifier for the current product category that will be sent to depict to get the products to display.
Accepts one of two “plugins” that determines the layout of your category page.
The default value—CategoryTitle
—displays the current category title above
the product cards. Alternatively, you can opt not to show the category title
above the product card by using the EmbeddedNumProducts
function imported
from the @depict-ai/react-ui
SDK. This option is ideal for merchants who
prefer to create their titles on the category page. If the latter, the SDK
will attempt to position it between the sort and filter button on smaller
screens to save space.
Your custom ProductCard
component that receives and renders your category
data
Used to customize breakpoints on category pages. Handles the number of product
card columns displayed at each screen size. Example: [[2, 901], [3, 1024], [4]]
means 2 columns at sizes up to 901px, 3 columns at sizes up to 1024px
and after that 4 columns at any viewport size.
The spacing between products.
Handles whether or not to show the default breadcrumbs on the category page.
Handles whether or not to show the default quick links on the category page.
Whether this page is a collection or a category. If not specified it will be inferred as described here.
When using multiple CategoryPage components on the same page, you need to set a unique stateKey for each one, otherwise leave this unset. We recommend using an incrementing number, such as “1”, “2”, “3”, etc. To associate a certain BreadCrumbs or QuickLinks component with a certain CategoryPage component, set the same stateKey on both.
A sparse array containing content blocks to show (or an empty slot or undefined if there’s no block at that index). See ReactContentBlock for how a content block looks like. The index is the row where the content block should be shown.
The BreadCrumbs
component
Breadcrumb navigation helps users know their location in the category tree by providing a trail back to the root category. By default, the CategoryPage
component contains breadcrumb navigation. You can disable its default breadcrumb navigation by setting the showBreadcrumbs
property to false.
To add a custom breadcrumb navigation, import the BreadCrumbs
component from the SDK and nest it in the desired location on your DOM tree.
import { BreadCrumbs } from "@depict-ai/react-ui";
const CategoryMain = () => {
return (
<>
<BreadCrumbs />
</>
);
};
The following table shows all BreadCrumbs
configuration properties, their types, and descriptions:
When using multiple CategoryPage components on the same page, you need to set a unique stateKey for each one, otherwise leave this unset. We recommend using an incrementing number, such as “1”, “2”, “3”, etc. To associate a certain BreadCrumbs or QuickLinks component with a certain CategoryPage component, set the same stateKey on both.
The QuickLinks
component
The QuickLinks
component shows all available product categories in a carousel for easy navigation. By default, the CategoryPage
component contains quick link navigation. You can disable its default quick link navigation by setting the showQuicklinks
property to false.
To add a custom quick link navigation, import the QuickLinks
component from the SDK and nest it in the desired location on your DOM tree.
import { QuickLinks } from "@depict-ai/react-ui";
const Carousel = () => {
return (
<>
<QuickLinks />
</>
);
};
The following table shows all QuickLinks
configuration properties, their types, and descriptions:
When using multiple CategoryPage components on the same page, you need to set a unique stateKey for each one, otherwise leave this unset. We recommend using an incrementing number, such as “1”, “2”, “3”, etc. To associate a certain BreadCrumbs or QuickLinks component with a certain CategoryPage component, set the same stateKey on both.
Was this page helpful?