All projects
Shopify2026

Mixly — Product Bundles

Bundle pricing without inventing products.

A Shopify bundling app with frequently-bought-together, build-your-own and BOGO offers, priced by percentage, fixed amount off or fixed bundle price. No new products, variants or SKUs — a bundle is a rule evaluated against the cart.

657

Tests

291,600

Fuzz pairs swept

3

Bundle types

Highlights

  • A differential fuzz test mirrors the storefront’s Liquid eligibility rules against the checkout allocator across 291,600 rule × cart pairs.
  • Bundles are rules evaluated against the cart, so no shadow products, variants or SKUs are ever created.
  • A build-time budget test fails the theme extension at 90% of Shopify’s 100KB Liquid ceiling, with caps on block count and per-locale files.

Stack

Next.jsShopify FunctionsLiquidPrismaVitest
Case study

The problem

A bundle is judged twice. The storefront decides what to advertise in Liquid, rendered inside the merchant’s theme; checkout decides what to actually grant, inside a Shopify Function compiled to WebAssembly. Two codebases, two languages, one set of rules — and when they drift apart the storefront promises a discount the checkout refuses.

01

Mirror one side against the other

liquid-mirror-sweep.test.ts reimplements the storefront’s eligibility decision and runs it against the checkout allocator over every combination of 400 generated offers and 729 synthetic carts — 291,600 rule × cart pairs, each independently recomputed and compared.

02

Let the sweep find the bug

It did. The storefront was advertising BOGO offers the Function would decline to grant — a silent disagreement no hand-written case had thought to construct, and the kind a merchant otherwise discovers through a support ticket about a missing discount.

03

Keep the extension inside its budget

The theme extension is checked at build time against Shopify’s 100KB Liquid limit at a 90% ceiling, a 30-block cap and per-locale file caps, so a translation added months from now fails CI rather than failing review.

Outcome

Three bundle types and three discount modes across roughly 26,700 lines of TypeScript, backed by 580 server tests and 77 extension tests. Registered with Shopify Partners as Solora Mixly and currently in early access rather than public listing.