20%offEnds in 2d 5h
Autumn studio sale
On orders over $80, everything in Home.
AUTUMN20
Ticket-shaped coupon with a masked perforated edge, mono code with copy, live expiry countdown, terms disclosure, applied and expired states, and a canvas scratch-to-reveal variant with a Reveal button.
On orders over $80, everything in Home.
Your next order, no minimum.
Scratch the foil, or press Reveal.
Free express on orders over $50.
Copy a code, apply it, or scratch the mystery card
Pro source requires Pebble Pro. Try the full preview above.
| Prop | Type | Default | Description |
|---|---|---|---|
| value / unit | string | — / "off" | Big value and small unit on the ticket stub. |
| title / description | string | — | Offer title (names the card) and a short description. |
| code | string | — | Coupon code, shown in mono with a copy button. |
| expiresAt | Date | number | string | — | End time; the stub chip counts down and the card expires. |
| now | Date | number | string | — | Time to count from on first paint (deterministic); ticks advance from it. |
| status / defaultStatus / onStatusChange | "available" | "applied" | "expired" | "available" | Coupon state, controlled or not. |
| onApply | (code: string) => void | — | Called by Apply. |
| terms | string[] | [] | Terms listed in the disclosure. |
| variant | "standard" | "scratch" | "standard" | Scratch hides the code under canvas foil, with a Reveal button. |
| tone | "accent" | "ink" | "accent" | Stub colour. |
Try the full preview above. Editable source and build guides require Pebble Pro.