# Haven & Hearth

[Haven & Hearth](https://furniture.mock.shop/llms.txt) is a [mock.shop](https://www.mock.shop/) sample store for building against a furniture catalog with collections and product-specific options before a real Shopify store is ready. It includes dining tables, sectional sofas, rugs, floor lamps, beds, and storage cabinets. The catalog has 30 products across 4 collections. All 30 products require shipping and have three variants from one option. No product has variant-dependent pricing.

mock.shop is an auth-free Shopify Storefront GraphQL API backed by sample reference stores. Find out more about [mock.shop sample stores](https://www.shopify.com/blog/mock-shop).

## When to use this store

Choose Haven & Hearth when you’re building a furniture shop with product choices, collection browsing, and price sorting.

Use Haven & Hearth for:

- Furniture storefronts with paginated, price-sorted collection views
- Cursor-based pagination that passes `endCursor` unchanged rather than filtering by price
- Furniture product pages with three choices per item

Choose another mock.shop store if you need multi-option products or nonshipping digital goods. Browse <https://mock.shop/llms.txt> to find a store that matches your catalog.

## Example Haven & Hearth query

Here’s an example GraphQL `POST` request that retrieves the first page of the Quiet Living Spaces collection sorted by price, using a cursor variable for continuation from <https://furniture.mock.shop/api>:

```bash
curl https://furniture.mock.shop/api \
  -H 'Content-Type: application/json' \
  --data '{"query":"query($after: String) { collection(handle: \"quiet-living-spaces\") { title products(first: 2, after: $after, sortKey: PRICE) { pageInfo { hasNextPage endCursor } nodes { id handle title priceRange { minVariantPrice { amount currencyCode } } } } } }","variables":{"after":null}}'
```

This query returns collection title, pagination metadata, and the first two product IDs, handles, titles, and minimum variant prices. Passing `variables: {"after": null}` returns the walnut floor lamp at USD 179.99 and the olive-brown rug at USD 1,150.00, with `hasNextPage: true` and an `endCursor` to pass on the next call. Adapt the query for your storefront needs.

The endpoint doesn't require authentication or an access token. Read <https://furniture.mock.shop/llms.txt> for catalog details and store-specific instructions.

## What this catalog lets you test

Build a furniture storefront with product pages, collection navigation, price sorting, and a “load more” control. The example query lets you test loading a sorted collection in two-product pages: start with `variables: {"after": null}`, then pass the returned `endCursor` as the next `after` value. The first two pages contain four distinct products, including two priced at USD 1,150.00.

A "load more" implementation that filters with `price > lastPrice` instead of passing the cursor would drop the second USD 1,150.00 product entirely. The observed sort order within the tie isn't a guaranteed secondary-sort contract; use product IDs to verify that both USD 1,150.00 products appear regardless of their position within the tie.

Preview the catalog in a storefront by opening <https://furniture.hydrogen.mock.shop> in a browser.

![Haven & Hearth's Smoked Bronze Floor Lamp with Minimalist Stem product page with a product image and an Add to cart button.](images/haven-and-hearth-smoked-bronze-floor-lamp-with-minimalist-stem-20260911.webp)

## Build with an AI coding tool

To build a furniture storefront with Haven & Hearth using Claude, ChatGPT, Cursor, Lovable, or another AI assistant, copy the prompt below. It gives the assistant the store domain and directs it to the catalog instructions before it starts writing code.

```text
Build me a Hydrogen storefront using furniture.mock.shop as the store domain. Setup instructions: furniture.mock.shop/llms.txt
```

Shopify also provides a [mock.shop starter project](https://github.com/Shopify/mock-shop-starter): a Hydrogen storefront with product pages, collection browsing, and a working cart already connected to mock.shop. You or your AI coding tool can customize this code instead of building those pieces from scratch.

Follow the repository’s setup instructions, then set `PUBLIC_STORE_DOMAIN=furniture.mock.shop` in `.env` and restart the dev server to use Haven & Hearth’s catalog. Leave `PUBLIC_STOREFRONT_API_TOKEN` empty; mock.shop doesn’t require a token.

## Move to a real Shopify store

mock.shop uses fictional, read-only catalog data. Cart operations work, and checkout is mocked: no payment is taken and no real order is placed. The Customer Account API isn’t supported.

When you’re ready to launch, point your storefront at a Shopify store and add that store’s public Storefront API token. If you don’t have a Shopify store yet, [start a Shopify free trial](https://www.shopify.com/free-trial) to create one.

Read the [mock.shop developer documentation](https://shopify.dev/docs/storefronts/headless/mock-shop) for setup and migration details.

## Store facts

| | |
|---|---|
| Store handle | `furniture` |
| Catalog model | Furniture organized into collections, with three variants per product |
| Products | 30 |
| Collections | 4 |
| Categories | 10 |
| Variants per product | 3 |
| Compare-at prices | 8 products |
| Requires shipping | All products |
| API endpoint | <https://furniture.mock.shop/api> |
| Store instructions | <https://furniture.mock.shop/llms.txt> |
| Browser preview | <https://furniture.hydrogen.mock.shop> |
