Commerce components

Shopper-facing decision, cart, discovery, product, and checkout-adjacent components.

Shopper-facing decision, cart, discovery, product, and checkout-adjacent components.

Choose the right commerce surface, then move to the guide or component family that matches the job. Exact props and child-part contracts stay in SDK package reference.

When to use this family

Start here when the shopper task is product discovery, PDP composition, cart interaction, or purchase-adjacent UI and you need to choose the right component route.

Common jobs:

  • product cards, product media, variants, price, quantity, and buy-box decisions
  • cart drawers, cart summaries, promo codes, order summaries, and checkout-adjacent flows
  • Search inputs, autocomplete, filter panels, sort controls, listing toolbars, and discovery helpers
  • product recommendations, trust, reviews, and shopper decision support around a purchase flow

When to switch routes

Switch routes when the question becomes page-level composition or another family entirely:

Public import path

Import components from @enadhq/enad-react-sdk/client/storefront.

Common starting points in this family

Use these as common starting points when you already know the shopper flow you are building. The full component list below remains the canonical route inventory for this family:

  • Search and listing discovery -> SearchBar, SearchPanel, SearchAutocomplete, FilterGroup, FilterPanel, ListingToolbar, SortSelect, ToggleListView, InfiniteScroll
  • Product cards and recommendation surfaces -> SearchProductCard, ProductCardSkeleton, ProductRecommendations, SearchProductRecommendations, QuickView
  • PDP and purchase decision UI -> BuyBox, ProductDetails, ProductHeroSection, ProductMedia, ProductTabs, VariantSelector, QuantityPicker, PurchaseActions, Price
  • Cart and checkout-adjacent flows -> CartDrawer, CartSummary, CartTrigger, PromoCodeInput, OrderSummary, CheckoutStepper, AddressForm, ShippingMethodSelector, PaymentMethodSelector

Component docs

Playground

Open the live playground category at sdk.enad.io/components/commerce when you need runtime experimentation or visual verification after you choose a shopper flow or component route.

Commerce components

# Commerce components Shopper-facing decision, cart, discovery, product, and checkout-adjacent components. > Choose the right commerce surface, then move to the guide or component family that matches the job. Exact props and child-part contracts stay in SDK package reference. ## When to use this family Start here when the shopper task is product discovery, PDP composition, cart interaction, or purchase-adjacent UI and you need to choose the right component route. Common jobs: - product cards, product media, variants, price, quantity, and buy-box decisions - cart drawers, cart summaries, promo codes, order summaries, and checkout-adjacent flows - Search inputs, autocomplete, filter panels, sort controls, listing toolbars, and discovery helpers - product recommendations, trust, reviews, and shopper decision support around a purchase flow ## When to switch routes Switch routes when the question becomes page-level composition or another family entirely: - **I need PLP or Search page assembly guidance** -> [Product listing and search](/react-sdk/latest/guides/product-listing-search) - **I need PDP composition guidance** -> [Product detail page](/react-sdk/latest/guides/product-detail-page) - **I need editorial landing-page sections or merchandising blocks** -> [Storefront components](/react-sdk/latest/components/storefront) and [Storefront page guide](/react-sdk/latest/guides/storefront-page) - **I need low-level primitives like dialogs, inputs, tabs, or sheets** -> [Base UI components](/react-sdk/latest/components/base-ui) - **I need exact props, helper signatures, or runtime behavior** -> SDK package reference and [Search GraphQL latest](/search/latest) when the question is query or response shape ## Public import path Import components from @enadhq/enad-react-sdk/client/storefront. ## Common starting points in this family Use these as common starting points when you already know the shopper flow you are building. The full component list below remains the canonical route inventory for this family: - **Search and listing discovery** -> SearchBar, SearchPanel, SearchAutocomplete, FilterGroup, FilterPanel, ListingToolbar, SortSelect, ToggleListView, InfiniteScroll - **Product cards and recommendation surfaces** -> SearchProductCard, ProductCardSkeleton, ProductRecommendations, SearchProductRecommendations, QuickView - **PDP and purchase decision UI** -> BuyBox, ProductDetails, ProductHeroSection, ProductMedia, ProductTabs, VariantSelector, QuantityPicker, PurchaseActions, Price - **Cart and checkout-adjacent flows** -> CartDrawer, CartSummary, CartTrigger, PromoCodeInput, OrderSummary, CheckoutStepper, AddressForm, ShippingMethodSelector, PaymentMethodSelector ## Component docs - [AddressFieldGroup](/react-sdk/latest/components/commerce/address-field-group) - AddressFieldGroup - [AddressForm](/react-sdk/latest/components/commerce/address-form) - AddressForm - [Badge](/react-sdk/latest/components/commerce/badge) - Badge - [BuyBox](/react-sdk/latest/components/commerce/buy-box) - BuyBox - [CartDrawer](/react-sdk/latest/components/commerce/cart-drawer) - CartDrawer - [CartSummary](/react-sdk/latest/components/commerce/cart-summary) - CartSummary - [CartTrigger](/react-sdk/latest/components/commerce/cart-trigger) - CartTrigger - [CheckoutStepper](/react-sdk/latest/components/commerce/checkout-stepper) - CheckoutStepper - [ColorSwatch](/react-sdk/latest/components/commerce/color-swatch) - ColorSwatch - [CountryRedirect](/react-sdk/latest/components/commerce/country-redirect) - CountryRedirect - [EmptyState](/react-sdk/latest/components/commerce/empty-state) - EmptyState - [FilterChip](/react-sdk/latest/components/commerce/filter-chip) - FilterChip - [FilterGroup](/react-sdk/latest/components/commerce/filter-group) - FilterGroup - [FilterPanel](/react-sdk/latest/components/commerce/filter-panel) - FilterPanel - [ImageLightbox](/react-sdk/latest/components/commerce/image-lightbox) - ImageLightbox - [InfiniteScroll](/react-sdk/latest/components/commerce/infinite-scroll) - InfiniteScroll - [LanguageSelector](/react-sdk/latest/components/commerce/language-selector) - LanguageSelector - [ListingToolbar](/react-sdk/latest/components/commerce/listing-toolbar) - ListingToolbar - [MaterialSelector](/react-sdk/latest/components/commerce/material-selector) - MaterialSelector - [NewsletterSignup](/react-sdk/latest/components/commerce/newsletter-signup) - NewsletterSignup - [OrderConfirmation](/react-sdk/latest/components/commerce/order-confirmation) - OrderConfirmation - [OrderSummary](/react-sdk/latest/components/commerce/order-summary) - OrderSummary - [PaymentMethodSelector](/react-sdk/latest/components/commerce/payment-method-selector) - PaymentMethodSelector - [Price](/react-sdk/latest/components/commerce/price) - Price - [ProductCardSkeleton](/react-sdk/latest/components/commerce/product-card-skeleton) - ProductCardSkeleton - [ProductDetails](/react-sdk/latest/components/commerce/product-details) - ProductDetails - [ProductHeroSection](/react-sdk/latest/components/commerce/product-hero-section) - ProductHeroSection - [ProductMedia](/react-sdk/latest/components/commerce/product-media) - ProductMedia - [ProductRecommendations](/react-sdk/latest/components/commerce/product-recommendations) - ProductRecommendations - [ProductTabs](/react-sdk/latest/components/commerce/product-tabs) - ProductTabs - [ProductTrust](/react-sdk/latest/components/commerce/product-trust) - ProductTrust - [ProductUSP](/react-sdk/latest/components/commerce/product-usp) - ProductUSP - [PromoCodeInput](/react-sdk/latest/components/commerce/promo-code-input) - PromoCodeInput - [PurchaseActions](/react-sdk/latest/components/commerce/purchase-actions) - PurchaseActions - [QuantityPicker](/react-sdk/latest/components/commerce/quantity-picker) - QuantityPicker - [QuickView](/react-sdk/latest/components/commerce/quick-view) - QuickView - [ReviewSummary](/react-sdk/latest/components/commerce/review-summary) - ReviewSummary - [SearchAutocomplete](/react-sdk/latest/components/commerce/search-autocomplete) - SearchAutocomplete - [SearchBar](/react-sdk/latest/components/commerce/search-bar) - SearchBar - [SearchPanel](/react-sdk/latest/components/commerce/search-panel) - SearchPanel - [SearchProductCard](/react-sdk/latest/components/commerce/search-product-card) - SearchProductCard - [SearchProductRecommendations](/react-sdk/latest/components/commerce/search-product-recommendations) - SearchProductRecommendations - [SearchProductVariantSelector](/react-sdk/latest/components/commerce/search-product-variant-selector) - SearchProductVariantSelector - [ShareButton](/react-sdk/latest/components/commerce/share-button) - ShareButton - [ShippingMethodSelector](/react-sdk/latest/components/commerce/shipping-method-selector) - ShippingMethodSelector - [Skeleton](/react-sdk/latest/components/commerce/skeleton) - Skeleton - [SortSelect](/react-sdk/latest/components/commerce/sort-select) - SortSelect - [StarRating](/react-sdk/latest/components/commerce/star-rating) - StarRating - [Testimonial](/react-sdk/latest/components/commerce/testimonial) - Testimonial - [ToggleListView](/react-sdk/latest/components/commerce/toggle-list-view) - ToggleListView - [TrustBadges](/react-sdk/latest/components/commerce/trust-badges) - TrustBadges - [VariantSelector](/react-sdk/latest/components/commerce/variant-selector) - VariantSelector - [WishlistDrawer](/react-sdk/latest/components/commerce/wishlist-drawer) - WishlistDrawer - [WishlistToggle](/react-sdk/latest/components/commerce/wishlist-toggle) - WishlistToggle ## Playground Open the live playground category at [sdk.enad.io/components/commerce](https://sdk.enad.io/components/commerce) when you need runtime experimentation or visual verification after you choose a shopper flow or component route.