For the complete documentation index, see llms.txt. This page is also available as Markdown.

How it works under the hood

How your group data reaches the storefront, why changes take a moment to appear, and why the app stays fast.

You don't need this page to use the app — it's here if you're curious why changes take a minute to appear, or whether the app slows your store down (it doesn't).

Data flow

You save in the admin, data publishes automatically, and the theme renders the widgets
Save → published in the background → your theme renders it.

When you save a group or style, the backend publishes in the background:

  1. A shop-wide data file on Shopify's CDN — one JSON file describing all active groups and styles. Collection-card widgets read this.

  2. Per-product data attached directly to each grouped product — so a product page knows its own group instantly, with nothing to fetch.

  3. Pre-rendered widget HTML per product and language — product pages can paint the widget server-side, before JavaScript runs.

This is why storefront changes take a minute or two to appear: publishing is queued and the CDN caches the file.

Performance design

  • Tiny loader — the always-loaded entry script is under 2 KB; everything else loads on demand.

  • Lazy cards — card widgets initialize only when cards scroll into view, and data is fetched once per page.

  • Server-side rendering — with per-product data baked into the page, product-page widgets paint with zero blocking JavaScript.

  • No layout shift by design — pre-rendered markup means the widget doesn't pop in and push content around.

Your theme is never edited

Everything the app publishes is app-owned data that sits alongside your store — the app never modifies your theme code or your products. Turn off the app embed (or uninstall) and the widgets simply stop rendering, leaving your theme exactly as it was.

Last updated

Was this helpful?