Layout
The root layout component that wraps all pages.Page content to be rendered within the layout
Features
- Wraps content with Hydrogen’s
LocalizationProvider - Includes
HeaderScroll,Cart, andFootercomponents - Sets up main content area with minimum height and responsive container
Usage Example
src/components/Layout.server.jsx:7
Header
The site header with navigation and cart toggle.Props passed through to the HeaderScroll component
Features
- Logo with link to homepage
- Static navigation menu (About, T-Shirts, Collections, Lifestyle)
- Cart toggle button
- Wrapped in
HeaderScrollfor scroll behavior
Usage Example
src/components/Header.server.jsx:8
Footer
The site footer with links and newsletter signup.Features
- Navigation links organized in columns
- Collection quick links
- Newsletter subscription form
- Responsive layout (mobile to desktop)
Usage Example
src/components/Footer.server.jsx:5
ProductCard
Displays a product card with image, title, price, and quick-add button.Product object containing:
storefront- Shopify storefront product dataslug- Product handle/slugvariantId- Selected variant ID (unencoded)
Features
- Displays selected variant image
- Shows product title and pricing
- Quick add to cart button on hover
- Compares at price display (if available)
- Links to product detail page
Usage Example
src/components/ProductCard.server.jsx:7
ProductListing
Displays a grid of product cards.Array of product objects to display
Features
- Responsive grid layout (1-3 columns)
- Empty state when no products
- Gap spacing between items
Usage Example
src/components/ProductListing.server.jsx:4
Main
Root application component that handles routing.Array of page routes for Hydrogen’s DefaultRoutes
Server state object from Hydrogen
Features
- Sets up React Router switch
- Includes default SEO component
- 404 fallback page
- Hydrogen’s DefaultRoutes integration
Usage Example
src/components/Main.server.jsx:13
DefaultSeo
Server component that fetches and applies default SEO settings from Sanity.Features
- Queries Sanity for global SEO settings
- Passes default title and image to Seo component
- No props required
Usage Example
src/components/DefaultSeo.server.jsx:8
NotFound
404 error page component.Features
- Wrapped in Layout component
- User-friendly error message
- Link back to homepage
Usage Example
src/components/NotFound.server.jsx:4