A free, animated product card for sneaker and streetwear drops, pattern clash style. Every colour, text and motion setting is a runtime input.
Updated October 2026
The Pattern Clash Product is a product card with a pattern clash look, made for sneaker and streetwear drops. It animates scrolling stripes, a wiggling checker edge and a bobbing product, and a tap swaps the stripe colours. It also has keyframes you can edit in the ExodeUI timeline: an entrance and an ambient float.
These 25 inputs, plus the replay and tap triggers, can be set from the customizer above, from the ExodeUI studio, or from your code while the element runs.
| Input | What it changes | Type |
|---|---|---|
| product | Product | Text |
| price | Price | Text |
| tag | Tag | Text |
| stripeA | Stripes 1 | Colour |
| stripeB | Stripes 2 | Colour |
| checkA | Checker 1 | Colour |
| checkB | Checker 2 | Colour |
| dotColor | Dots | Colour |
| accent | Accent | Colour |
| stripeWidth | Stripe width | Number |
| wiggle | Frame wiggle | Number |
| radius | Corner radius | Number |
| lift | Hover lift | Number |
| interactive | Mouse interaction | On/off |
| tilt | Hover tilt (deg, 0 = off) | Number |
| press | Press squish | Number |
| float | Extra idle float (px) | Number |
| speed | Animation speed | Number |
| intro | Entrance animation | On/off |
| introStyle | Extra entrance style | Choice |
| introDuration | Entrance duration (s) | Number |
| colorTween | Colour change fade (s) | Number |
| pageMode | Page background | Choice |
| pageTop | Page colour | Colour |
| pageBottom | Page gradient end | Colour |
npm i exodeui.ExodeUICanvas and pass your text, numbers and colours as inputs.import { ExodeUICanvas } from 'exodeui';
export function PatternClashProductSection({ data }) {
return (
<ExodeUICanvas
src="/ui-trends/files/maximalism/02-pattern-clash.bexode"
autoPlay
style={{ width: 600, height: 400 }}
inputs={{
product: data.product,
price: data.price,
// every colour is an input too, for example a brand accent
...data.theme
}}
/>
);
}