Shopify on the back.3D on the front.
- Storefronts
- Headless & themed
- API
- Storefront GraphQL
- Data
- Metaobjects
- Checkout
- Shopify native
Shopify on the back.3D on the front.
You do not have to leave Shopify to sell a configurable product in 3D. Shopify stays the commerce backend — the custom Three.js experience is the interactive layer in front of it.
Your finance, inventory and fulfilment teams keep working in the admin they already know. Nothing about the back office changes.
- then
3D Experience
Three.js · WebGLThe scene the customer touches.
- then
Configurator
Rules · Pricing · StateComponents, compatibility, live totals.
- then
Product Data
Metaobjects · MetafieldsComponent catalogue, model URLs, price deltas.
- then
Shopify
Storefront APIProducts, inventory, pricing, customers.
- then
Cart
Line items · AttributesThe configuration travels with the order.
- then
Checkout
Payments · Tax · ShippingShopify's checkout, untouched.
Order
Fulfilment · ERPYour team builds exactly what was configured.
Stays in Shopify
- Products
- Inventory
- Pricing
- Customers
- Orders
- Cart
- Checkout
The configuration travels with the order as line-item attributes, so the person assembling the product reads the exact specification the customer built — case, dial, hands, strap — on the order in the Shopify admin.
Headless or embedded, we build to your setup: a custom Next.js storefront on the Storefront API, or a 3D experience dropped into your existing Liquid theme as an app block.
Two waysto ship it.
Embedded in your theme
The 3D experience ships as a theme app block or an app embed inside your existing Online Store 2.0 theme. Your merchandisers keep the theme editor, your developers keep Liquid, and the configurator appears on the product template where it belongs.
Best when the rest of the store already works and you want 3D on specific products.
Headless storefront
A custom Next.js storefront on the Storefront API, with the 3D experience as a first-class part of the front end rather than an embed. Full control over routing, rendering and performance, with Shopify still handling cart, checkout and orders.
Best when the buying experience itself is the differentiator.
Where the componentsactually live.
| Shopify object | Role | What it holds |
|---|---|---|
| Product | The configurable item | Base price, description, imagery, publication scope. |
| Metaobject: component | One configurable option | Name, swatch, PBR material values, GLB URL, price delta, lead time. |
| Metaobject: group | A configuration stage | Case, dial, hands, strap — ordered, with a default option. |
| Metafield: rules | What cannot combine | Pairs of component handles the factory will not build together. |
| Variant | The sellable unit | Inventory and pricing, referenced by the configured line item. |
| Cart line attributes | The configuration | Human-readable specification carried onto the order. |
This site is not connected to a Shopify store, and it performs no commerce calls. The configurator is written against these shapes anyway — the types and the adapter interface are in the codebase — so connecting a real catalogue is an implementation behind one interface rather than a rewrite.
Have a product that deserves to be experienced?
Let's turn your product into an interactive 3D shopping experience.
Replies in minutes, not days — or email info@mooshfy.com.