cimplify

Storefront templates

Six production-shape Next.js storefronts you scaffold with one command. Each one ships with cart drawer wiring, mock-seeded data, a brand-as-config layer, and pre-baked test suites, so the loop from `init` to `deploy` stays inside an afternoon.

Scaffold

# Install once (native binary, ~20ms cold start)
curl -fsSL https://cimplify.io/install | sh

cimplify init my-store --template retail

That writes a Next 16 App Router project, installs dependencies, and boots the local mock. From there, edit lib/brand.ts for content and app/globals.css for the palette; the rest of the storefront re-renders against those two files.

The six templates

TemplateIndustry shapeIndustry-specific surface
bakeryPastries, cakes, custom ordersProduct modal sheet, custom-order CTA
restaurantMenu + takeout / dine-in/reservations page, modifiers
retailVariant-heavy electronics / generalFull /products/[slug] + JSON-LD
servicesBooked appointments/book calendar widget
groceryHigh-SKU staplesQuick-add cards, basket-first UX
fashionEditorial apparel/lookbook, /size-guide, Playwright snapshots

What every template ships with

  • Next 16 App Router scaffold with cacheComponents: true
  • app/layout.tsx with metadata, Organization JSON-LD, and providers wired
  • components/providers.tsx: CimplifyProvider + CartDrawerProvider + the SDK CartDrawer
  • app/cart, app/checkout, app/orders/[id], app/account/* using SDK pages
  • lib/brand.ts: single source of truth for every visible string
  • app/globals.css @theme: palette, radius, fonts in one place
  • __tests__/{brand,cart-flow,contract}.test.ts: three-line suite wrappers
  • Mock seed paired to the brand via brand.mock.seed
  • sitemap.ts, robots.ts, llms.txt generated from brand

The 60-second loop

cimplify init my-store --template retail
cd my-store
bun dev                  # mock + Next dev together
# edit lib/brand.ts
bun run check            # typecheck + lint + brand + cart-flow + contract suites

bun dev boots the in-process Hono mock alongside Next so the full storefront (catalogue, cart, checkout) works offline. The check script runs in <15s, fast enough that an agent edits and tests in the same turn.

File layout

my-store/
├── app/
   ├── layout.tsx
   ├── page.tsx              # home
   ├── shop/                 # CataloguePage
   ├── products/[slug]/      # ProductPage  (retail / fashion)
   ├── cart/, checkout/, orders/[id]/
   ├── account/              # CimplifyAccount
   ├── about/, faq/, terms/, privacy/,
   └── globals.css           # @theme tokens
├── components/
   ├── providers.tsx
   ├── header.tsx, footer.tsx, hero.tsx
   └── cart-pill.tsx, cart-drawer.tsx
├── lib/
   ├── brand.ts              # ⭐ content
   └── cart.ts
└── __tests__/
    ├── brand.test.ts         # 3 lines
    ├── cart-flow.test.ts     # 3 lines
    └── contract.test.ts      # 3 lines

Next

On this page