A comprehensive design system crafted for the Zocal website redesign. Engineered with polymorphic box components, dynamic variable typography, and Apple-grade aesthetic precision.
Adjust the continuous wght (Weight) and opsz (Optical Size) axes in real time.
Zocal: Discover the Best Local Treasures
Versatile container primitives: Surface Cards, GlassBox, Grids, Stacks, Callouts, and Sections.
Crisp modern card with subtle border and default shadow.
Perfect for directory listings, search results, and standard information cards.
Layered float shadow creating depth and hierarchy.
Ideal for highlighted content, featured promotions, and prominent CTAs.
Hover over me to see the spring lift and shadow projection.
Tailored for clickable shop listings, deal vouchers, and navigation cards.
Features optical reflection highlight line, backdrop-filter blur, and specular shine.
Recessed well surface for controls and preview bays.
Push Notifications
Dashed container variant ideal for empty states or dropzones.
Bricolage Grotesque headings, editorial display text, gradient banners, and microcopy.
Lead text: Connect with your neighborhood like never before with verified local discounts.
Body paragraph: Zocal surfaces hidden gems across food, lifestyle, fashion, and services directly from neighborhood merchants.
Small note: Terms & conditions apply. Deals valid till stock lasts.
Overline category indicator
"Bricolage Grotesque is an expressive typeface with historical French attitude."
Press ⌘ + K to open the universal search palette.
Import directly from @/design-system in any component.
Interactive components featuring micro-interactions, spring presses, and accessible states.
Try searching by dish or café name
Open Now Only
Include Verified Listings
Import any component directly from @/design-system across the Next.js app.
import { Heading, Text, Card, Button } from '@/design-system';
export function ShopHero({ shop }) {
return (
<Card variant="interactive" padding="lg">
<Heading size="h2">{shop.name}</Heading>
<Text variant="muted">{shop.category} · {shop.city}</Text>
<Button variant="brand" rightIcon={<ArrowRight size={16} />}>
Explore Offers
</Button>
</Card>
);
}