Theme Playground

Commerce

ProductRecommendations

Recommendation-section family for related items, complete-the-look modules, and richer cross-sell moments with optional supporting copy, CTAs, and aside content.

Best for

related productscomplete-the-look bundlesrecommendation sections with supporting copy

Import

import { ProductRecommendations } from "@enadhq/enad-react-sdk/client/storefront"

When to use it

Use ProductRecommendations when the page needs a product-led recommendation section, not just a bare horizontal rail.

It is the right family for:

  • related products after a PDP body
  • complete-the-look modules with supporting copy
  • recently viewed sections that still need heading and CTA structure
  • cross-sell moments with a supporting editorial or service aside

If the page only needs the simplest possible rail, the legacy children-based path still works. But when the recommendation area starts needing real section structure, stay in ProductRecommendations rather than inventing a separate recommendation-section export.

Family boundary

ProductRecommendations complements the other storefront families:

  • ProductHeroSection owns the PDP hero entry
  • ProductDetails owns the post-hero product information body
  • ProductRecommendations owns the merchandising section that follows

That separation matters. Recommendation content should still revolve around products and cross-sell intent, not become a generic editorial block.

Composition notes

Lead with the compound path when the recommendation area needs explicit structure.

Available compounds:

  • ProductRecommendations.Header
  • ProductRecommendations.Heading
  • ProductRecommendations.Body
  • ProductRecommendations.Products
  • ProductRecommendations.Aside
  • ProductRecommendations.Footer

Use the convenience props when the recommendation shell fits the common pattern:

  • title for the section heading
  • body for supporting copy
  • children or products for the recommendation cards
  • viewAllHref and viewAllLabel for the browse CTA
  • aside for supporting service or editorial content
  • footer for secondary notes below the main section

Behavior and theming guidance

The inner rail still owns the swipe/arrow behavior and keeps nested ProductCard images in single-image mode by default so the recommendation strip remains the main carousel.

Use showArrows for stronger desktop affordance, and keep delight subtle unless the recommendation section is deliberately hero-adjacent.

When the page has both ProductDetails and ProductRecommendations, keep the recommendation family visually downstream so the shopper can understand that the main product information is complete before the page shifts into merchandising.

Connected companion

Use ProductRecommendations when the page already owns the recommendation products or when the merchandising shell needs custom composition around known product cards.

Use SearchProductRecommendations from @enadhq/enad-react-sdk/client/search when the page wants the SDK to resolve the recommendation products from search-backed inputs such as SKUs, category URLs, tag keys, or brand slugs and then feed them into this same recommendation family.

Examples

Live examples you can edit directly in the sandbox.

2 examples

Compound-first recommendation section

Lead with the richer family path when the recommendation area needs supporting copy, a CTA, or an editorial/service aside around the product rail.

Convenience path

Use the lighter path when the page shell still owns the product cards and only needs a stable recommendation section with heading, body, optional aside, and footer.

Slots

asidebodyfooterheadercontentheadingrootheadingGroupactionLinkproductsrailitemprevButtonnextButton

Component Sets

Preview the first example across the available component-set presets to compare tone, spacing, and structural defaults.

Props

PropTypeDefaultDescription
titlestring
Optional heading for the recommendation section
variantstring
Optional variant label for styling/semantics
bodystring
Optional supporting copy below the heading
productsstring
Optional recommendation cards for the convenience path
asidestring
Optional supporting editorial or utility block alongside the products
footerstring
Optional supporting footer below the recommendation content
childrenstring
Product cards or compound children. Legacy children-only usage still renders the product rail.
viewAllHrefstring
"View all" link
viewAllLabelstring
No description yet.
showArrowsboolean
Show navigation arrows on desktop
delightnumber
Delight level (0-100) for stagger entry animation. 0 = no animation.
classNamesPartial<Record<ProductRecommendationsSlot, string>>
No description yet.
Slot keys
asidebodyfooterheadercontentheadingrootheadingGroupactionLinkproductsrailitemprevButtonnextButton
classNamestring
No description yet.