Skip to content
weLabsweLabsStorefront Playbook
Live demoQuickstart

Features

Demo Mode

Run the complete storefront, with catalogue, cart, checkout, payments and accounts, with no backend at all, for pitches, design reviews and testing.

Demo Mode runs the whole store from built-in sample data, with no WordPress, no WooCommerce and no payment account. A prospective client can browse, sign in, check out and pay with a test card within minutes of cloning the repository. The same data powers the storefront’s automated tests, so the demo always reflects how the real store behaves.

Where it shows
The whole storefront
Configure in
Leave COMMERCE_SOURCE unset (or set it to mock or fake)
Requires
Only AUTH_SECRET; no backend, no keys
Try it in Demo Mode
Sign in as demo@retail.store with password demo1234
  • A full catalogue: products across nine categories (six top-level, three sub-categories of Fashion), with brands, tags, variations, sale prices, ratings and an out-of-stock item, plus Arabic content for multilingual demos.
  • Seven Journal posts, the five policy pages, and the built-in theme, header and footer.
  • Reviews with photos, threaded replies and helpful votes.
  • A demo customer with order history, invoices and a saved address book.
  • Unpublished drafts for trying product preview.
  • Store settings like a real shop: prices in euros, dates in the Europe/Berlin timezone.
To try Do this
Sign in demo@retail.store / demo1234, or register a new account (no verification email needed)
A coupon Apply DEMO10 in the cart for 10% off
A card payment Choose Credit / Debit card at checkout and use a test card below
A wallet-style payment Choose DemoPay at checkout and approve it in the demo window
Express checkout Use the Demo Express Pay button on a product, the cart or checkout; it opens a demo wallet sheet
Offline payment Cash on delivery, direct bank transfer or check payments
Stock alerts Open Stoneware serving bowls (pair) and click Notify me when available
Product preview Open /api/preview/enter?token=demo-preview-d1
Card number What happens
4242 4242 4242 4242 Approved: the order is placed and paid.
4000 0000 0000 0002 Declined: no order is left behind.
4000 0000 0000 3220 A bank challenge, as with 3-D Secure, then paid.
4000 0000 0000 3238 A challenge where the bank is slow to confirm.
4000 0000 0000 3246 A challenge the bank then refuses.

No real money moves and no payment script is loaded: the demo card form is the storefront’s own.

The storefront talks to every backend through one typed Port. In Demo Mode the Port is served by the Fake Adapter, an in-memory backend that follows the same rules as the WooCommerce one, from coupon maths to order statuses. Every feature that runs through the Port works the same way it would against a real store. See How it works.

Everything you do, such as carts, orders, new accounts, reviews and alerts, is held in the server’s memory. Restarting the storefront resets the demo to its seeded state, which makes it safe to hand to anyone.

  1. Clone the storefront, install dependencies, and set AUTH_SECRET.
  2. Leave COMMERCE_SOURCE unset.
  3. Start the app.

The Quickstart walks through it in a few commands. To switch to a real store later, set COMMERCE_SOURCE=woocommerce and WOO_STORE_URL; see Connect WooCommerce.

  • wp-admin settings don’t apply. Colours, header, home-page blocks and other Companion settings show the demo’s built-in values. Set them up against a real store.
  • Some extras need the Companion plugin. Features that call it directly, such as newsletter sign-up, don’t work in Demo Mode.
  • Turnstile is off by default. Set DEMO_TURNSTILE_SITE_KEY to Cloudflare’s always-pass test key to show the challenge on review, reply and stock-alert forms.
  • Data is per server. On a host that runs several instances, each instance keeps its own demo state.
  • Never for real orders. Nothing is fulfilled or charged. The full list of seeded data is in Demo data.
Storefront Playbook · Built by weLabsFeaturesFAQTalk to us