Flutter Flash Sale Countdown Timer Card
A high-urgency flash sale card with a lightning badge, a discount pill, product pricing with a struck-through original price, and a live HH:MM:SS countdown over a warm gradient. Built with Wind UI utility classes and dark mode pairs.
main.dart
WDiv(
className: '''
relative mx-auto w-[400px] overflow-hidden rounded-3xl p-6
bg-gradient-to-br from-rose-600 via-orange-600 to-amber-500
dark:from-rose-700 dark:via-orange-700 dark:to-amber-600
shadow-2xl shadow-black/40 dark:shadow-black/60
''',
children: [
WDiv(
className: 'absolute -top-12 -right-10 w-44 h-44 rounded-full bg-white/15 dark:bg-white/10',
),
WDiv(
className: 'flex flex-col gap-5',
children: [
WDiv(
className: 'flex flex-row items-center justify-between',
children: [
WDiv(
className: '''
inline-flex flex-row items-center gap-1
rounded-full px-3 py-1
bg-white/20 dark:bg-white/15
''',
children: [
WIcon(
Icons.bolt,
className: 'text-base text-white dark:text-white',
),
WText(
'FLASH SALE',
className: 'text-xs font-bold tracking-widest text-white dark:text-white',
),
],
),
WDiv(
className: 'rounded-full px-3 py-1 bg-black/25 dark:bg-black/40',
child: WText(
'-40%',
className: 'text-sm font-extrabold text-white dark:text-white',
),
),
],
),
WDiv(
className: 'flex flex-row items-center gap-4',
children: [
WDiv(
className: '''
w-16 h-16 rounded-2xl
bg-white/25 dark:bg-white/15
border border-white/30 dark:border-white/20
flex flex-row items-center justify-center
''',
child: WIcon(
Icons.favorite,
className: 'text-2xl text-white dark:text-white',
),
),
WDiv(
className: 'flex-1 flex flex-col gap-1',
children: [
WText(
'Aurora Wireless Buds',
className: 'text-lg font-bold text-white dark:text-white',
),
WDiv(
className: 'flex flex-row items-center gap-2',
children: [
WText(
'$59',
className: 'text-xl font-extrabold text-white dark:text-white',
),
WText(
'$99',
className: 'text-sm font-medium line-through text-white/60 dark:text-white/60',
),
],
),
],
),
],
),
WDiv(
className: 'flex flex-row items-center justify-center gap-3',
children: [
WDiv(
className: '''
w-20 h-20 rounded-2xl
bg-white/15 dark:bg-white/10
border border-white/25 dark:border-white/15
flex flex-col items-center justify-center
''',
children: [
WText(
'02',
className: 'text-3xl font-extrabold text-white dark:text-white',
),
WText(
'HRS',
className: 'text-xs font-semibold tracking-wider text-white/70 dark:text-white/70',
),
],
),
WText(
':',
className: 'text-2xl font-extrabold text-white/70 dark:text-white/70',
),
WDiv(
className: '''
w-20 h-20 rounded-2xl
bg-white/15 dark:bg-white/10
border border-white/25 dark:border-white/15
flex flex-col items-center justify-center
''',
children: [
WText(
'45',
className: 'text-3xl font-extrabold text-white dark:text-white',
),
WText(
'MIN',
className: 'text-xs font-semibold tracking-wider text-white/70 dark:text-white/70',
),
],
),
WText(
':',
className: 'text-2xl font-extrabold text-white/70 dark:text-white/70',
),
WDiv(
className: '''
w-20 h-20 rounded-2xl
bg-white/15 dark:bg-white/10
border border-white/25 dark:border-white/15
flex flex-col items-center justify-center
''',
children: [
WText(
'19',
className: 'text-3xl font-extrabold text-white dark:text-white',
),
WText(
'SEC',
className: 'text-xs font-semibold tracking-wider text-white/70 dark:text-white/70',
),
],
),
],
),
WDiv(
className: '''
w-full rounded-2xl py-4
bg-white dark:bg-white
flex flex-row items-center justify-center gap-2
''',
children: [
WIcon(
Icons.bolt,
className: 'text-lg text-rose-600 dark:text-rose-700',
),
WText(
'Grab the deal',
className: 'text-base font-bold text-rose-600 dark:text-rose-700',
),
],
),
],
),
],
)
Stats
- Views
- 23
- Stars
- 0
- Revisions
- 1
- Size
- 5,631 chars
- Created
- Jun 12, 2026