--- title: Search description: "Product search with automatic debouncing via `useProductSearch` hook. Two usage patterns: all-in-one `Search` component (fastest setup, fixed layout) or composable `SearchProvider` + `SearchInput` + `SearchResultsList` (custom layouts, shared search state). The all-in-one component handles input, loading skeletons, empty states, and infinite scroll. Use composable approach when you need custom result rendering or multiple search-dependent sections." api_name: shop-minis source_url: html: https://shopify.dev/docs/api/shop-minis/components/commerce/search md: https://shopify.dev/docs/api/shop-minis/components/commerce/search.md --- # Search Product search with automatic debouncing via `useProductSearch` hook. Two usage patterns: all-in-one `Search` component (fastest setup, fixed layout) or composable `SearchProvider` + `SearchInput` + `SearchResultsList` (custom layouts, shared search state). The all-in-one component handles input, loading skeletons, empty states, and infinite scroll. Use composable approach when you need custom result rendering or multiple search-dependent sections. ## Props * **children** **React.ReactNode** **required** * **initialQuery** **string** Examples ## Preview  ### Examples * #### Search ##### Default ```tsx import React from 'react' import {Search} from '@shopify/shop-minis-react' export default function MyComponent() { return (