Product Quick View
A compact product card with size select, quantity, and add to cart.
Card
Badge
Button
Rating
Select
Numeric Input
Separator
Preview
New Arrival
Premium Wireless Earbuds
(86 reviews)
$89.99
True wireless earbuds with active noise cancellation, transparency mode, and 24hr total battery life.
Code
<div class="w-full max-w-2xl">
<BbCard>
<BbCardContent class="p-6">
<div class="grid md:grid-cols-2 gap-6">
@* Left side - Image placeholder *@
<div class="bg-muted rounded-lg flex items-center justify-center h-full min-h-[280px]">
<!-- package icon SVG -->
</div>
@* Right side - Product details *@
<div class="space-y-4 pt-4">
<BbBadge Variant="BadgeVariant.Secondary">New Arrival</BbBadge>
<h2 class="text-xl font-semibold">Premium Wireless Earbuds</h2>
<div class="flex items-center gap-2">
<BbRating ReadOnly="true" Value="4.3" />
<span class="text-sm text-muted-foreground">(86 reviews)</span>
</div>
<p class="text-2xl font-bold">$89.99</p>
<p class="text-sm text-muted-foreground">
True wireless earbuds with active noise cancellation, transparency mode, and 24hr total battery life.
</p>
<BbSeparator />
<div class="space-y-2">
<label class="text-sm font-medium">Size</label>
<BbSelect @bind-Value="selectedSize">
<BbSelectTrigger>
<BbSelectValue Placeholder="Select size" />
</BbSelectTrigger>
<BbSelectContent>
<BbSelectItem Value="Small">Small</BbSelectItem>
<BbSelectItem Value="Medium">Medium</BbSelectItem>
<BbSelectItem Value="Large">Large</BbSelectItem>
</BbSelectContent>
</BbSelect>
</div>
<div class="space-y-2">
<label class="text-sm font-medium">Quantity</label>
<BbNumericInput @bind-Value="quantity" Min="1" Max="10" />
</div>
<div class="flex gap-2">
<BbButton class="flex-1">
<!-- shopping-cart icon SVG -->
Add to Cart
</BbButton>
<BbButton Variant="ButtonVariant.Outline" Size="ButtonSize.Icon">
<!-- heart icon SVG -->
</BbButton>
</div>
</div>
</div>
</BbCardContent>
</BbCard>
</div>
@code {
private string selectedSize = "Medium";
private int quantity = 1;
}