registry://designs/voltagent-awesome-design-md-resend
Resend
### Resend - Email API for developers. - Minimal dark theme, monospace accents - Resend's marketing surfaces sit on a near-pure black canvas with off-white
registry://designs/voltagent-awesome-design-md-resend
### Resend - Email API for developers. - Minimal dark theme, monospace accents - Resend's marketing surfaces sit on a near-pure black canvas with off-white
| version | alpha |
| name | Resend |
| description | | Resend's marketing surfaces sit on a near-pure black canvas with off-white text and a single signature color β the deep editorial-serif Domaine Display headline mark β that gives an otherwise utilitarian developer-tool brand its print-magazine confidence. The system pairs Domaine Display (oversized 76pxβ96px serif, ss01/ss04/ss11 features on) with ABC Favorit for body and Inter for UI. Surfaces rely on subtle 6β9% opacity gradient glows, hairline 1px borders made from translucent white, and a strict rounded-12px container vocabulary. There is no decorative chrome β just type, code, and atmospheric depth. |
| colors | primary: "#fcfdff" primary-on: "#000000" ink: "#fcfdff" body: "rgba(252,253,255,0.86)" charcoal: "rgba(252,253,255,0.7)" mute: "#a1a4a5" ash: "#888e90" stone: "#464a4d" on-light: "#000000" on-light-mute: "rgba(0,0,51,0.7)" canvas: "#000000" surface-card: "#0a0a0c" surface-elevated: "#101012" surface-deep: "#06060a" hairline: "rgba(255,255,255,0.06)" hairline-strong: "rgba(255,255,255,0.14)" divider-soft: "rgba(255,255,255,0.04)" accent-orange: "#ff801f" accent-orange-glow: "rgba(255,89,0,0.22)" accent-yellow: "#ffc53d" accent-blue: "#3b9eff" accent-blue-glow: "rgba(0,117,255,0.34)" accent-green: "#11ff99" accent-green-glow: "rgba(34,255,153,0.18)" accent-red: "#ff2047" accent-red-glow: "rgba(255,32,71,0.34)" link: "#3b9eff" surface-light: "#f1f7fe" |
| typography | display-xxl: fontFamily: Domaine Display fontSize: 96px fontWeight: 400 lineHeight: 1.0 letterSpacing: -0.96px fontFeature: "ss01, ss04, ss11" display-xl: fontFamily: Domaine Display fontSize: 76.8px fontWeight: 400 lineHeight: 1.0 letterSpacing: -0.768px fontFeature: "ss01, ss04, ss11" display-lg: fontFamily: ABC Favorit fontSize: 56px fontWeight: 400 lineHeight: 1.2 letterSpacing: -2.8px fontFeature: "ss01, ss04, ss11" heading-md: fontFamily: Inter fontSize: 24px fontWeight: 500 lineHeight: 1.5 letterSpacing: -0.4px heading-sm: fontFamily: Inter fontSize: 20px fontWeight: 500 lineHeight: 1.3 letterSpacing: -0.3px subtitle: fontFamily: ABC Favorit fontSize: 20px fontWeight: 400 lineHeight: 1.3 fontFeature: "ss01, ss04, ss11" body-lg: fontFamily: Inter fontSize: 18px fontWeight: 400 lineHeight: 1.5 body-md: fontFamily: ABC Favorit fontSize: 16px fontWeight: 400 lineHeight: 1.5 letterSpacing: -0.8px fontFeature: "ss01, ss04, ss11" body-sm: fontFamily: Inter fontSize: 14px fontWeight: 400 lineHeight: 1.43 button-md: fontFamily: Inter fontSize: 14px fontWeight: 500 lineHeight: 1.43 button-sm: fontFamily: ABC Favorit fontSize: 14px fontWeight: 500 lineHeight: 1.43 letterSpacing: 0.35px fontFeature: "ss01, ss03, ss04" caption: fontFamily: Inter fontSize: 12px fontWeight: 400 lineHeight: 1.5 caption-emph: fontFamily: Helvetica fontSize: 14px fontWeight: 600 lineHeight: 1.0 code-md: fontFamily: Geist Mono fontSize: 13px fontWeight: 400 lineHeight: 1.6 |
| rounded | none: 0px xs: 4px sm: 6px md: 8px lg: 12px xl: 16px full: 9999px |
| spacing | xxs: 2px xs: 4px sm: 8px md: 12px lg: 16px xl: 24px xxl: 32px xxxl: 48px section: 96px band: 128px |
| components | button-primary: backgroundColor: "{colors.primary}" textColor: "{colors.primary-on}" typography: "{typography.button-md}" rounded: "{rounded.md}" padding: 8px 16px height: 36px button-primary-pressed: backgroundColor: "{colors.surface-light}" textColor: "{colors.primary-on}" typography: "{typography.button-md}" rounded: "{rounded.md}" button-ghost: backgroundColor: "{colors.surface-elevated}" textColor: "{colors.ink}" typography: "{typography.button-md}" rounded: "{rounded.md}" padding: 8px 16px height: 36px button-outline: backgroundColor: "{colors.canvas}" textColor: "{colors.ink}" typography: "{typography.button-md}" rounded: "{rounded.md}" padding: 7px 15px height: 36px text-input: backgroundColor: "{colors.surface-card}" textColor: "{colors.ink}" typography: "{typography.body-sm}" rounded: "{rounded.md}" padding: 10px 14px height: 40px hero-stripe: backgroundColor: "{colors.canvas}" textColor: "{colors.ink}" typography: "{typography.display-xxl}" rounded: "{rounded.none}" padding: 96px 32px feature-card: backgroundColor: "{colors.surface-card}" textColor: "{colors.ink}" typography: "{typography.body-md}" rounded: "{rounded.lg}" padding: 32px feature-card-bordered: backgroundColor: "{colors.surface-card}" textColor: "{colors.ink}" typography: "{typography.body-md}" rounded: "{rounded.lg}" padding: 32px pricing-tier: backgroundColor: "{colors.surface-card}" textColor: "{colors.ink}" typography: "{typography.body-md}" rounded: "{rounded.lg}" padding: 32px pricing-tier-featured: backgroundColor: "{colors.surface-elevated}" textColor: "{colors.ink}" typography: "{typography.body-md}" rounded: "{rounded.lg}" padding: 32px code-window: backgroundColor: "{colors.surface-deep}" textColor: "{colors.body}" typography: "{typography.code-md}" rounded: "{rounded.lg}" padding: 24px code-tab: backgroundColor: "{colors.surface-card}" textColor: "{colors.charcoal}" typography: "{typography.code-md}" rounded: "{rounded.sm}" padding: 6px 12px email-mockup: backgroundColor: "{colors.surface-card}" textColor: "{colors.ink}" typography: "{typography.body-md}" rounded: "{rounded.lg}" padding: 0 badge-pill: backgroundColor: "{colors.surface-elevated}" textColor: "{colors.body}" typography: "{typography.caption}" rounded: "{rounded.full}" padding: 4px 10px status-dot: backgroundColor: "{colors.accent-green}" rounded: "{rounded.full}" size: 8px nav-bar: backgroundColor: "{colors.canvas}" textColor: "{colors.body}" typography: "{typography.button-sm}" rounded: "{rounded.none}" height: 64px sub-nav-pill: backgroundColor: "{colors.surface-elevated}" textColor: "{colors.body}" typography: "{typography.button-sm}" rounded: "{rounded.full}" padding: 6px 14px contributor-avatar: backgroundColor: "{colors.surface-card}" rounded: "{rounded.full}" size: 32px footer: backgroundColor: "{colors.canvas}" textColor: "{colors.charcoal}" typography: "{typography.body-sm}" rounded: "{rounded.none}" padding: 64px 32px |
Resend looks like a developer tool with the typography of an editorial.
Every page opens on {colors.canvas} (#000000), and the loudest element on
the canvas is not a button or a brand stamp β it's a 96px Domaine Display
serif headline ("Email for developers", "Email reimagined") with the
ss01 / ss04 / ss11 stylistic alternates engaged. That single typographic
decision sets the brand tone: confident, considered, slightly literary, and
priced on quality rather than novelty.
The supporting cast is technical. Body copy switches to ABC Favorit for
marketing prose and Inter for UI labels, while code blocks render in
Geist Mono inside {component.code-window} shells with hairline traffic-
light dots. Surface depth is built almost entirely from translucent white β
6% borders, 14% strong borders, 4% dividers β over a deep {colors.surface-deep}
layer that sits just below the canvas black. There are no gradients painted
across full bands, just soft atmospheric glows (orange, blue, green, red,
yellow) anchored at the top of select sections, all at low opacity.
Page rhythm cycles in a single dark register: hero stripe β atmospheric section β code window section β email mockup section β pricing or feature grid β black footer. The brand never warms to a light surface; even secondary email mockups are rendered as compact white cards inside the dark canvas, framed like print insets in a black-bordered magazine page.
Key Characteristics:
{colors.canvas} β #000000) on every public page; off-white text ({colors.ink} β #fcfdff) carries the full read.{colors.accent-orange}, {colors.accent-blue}, {colors.accent-green}, {colors.accent-red}, {colors.accent-yellow}) β never as buttons or solid surfaces.{rounded.lg} (12px) for feature cards, code wells, and email mockups; {rounded.md} (8px) for buttons; {rounded.full} for pills and avatars.{colors.hairline} 6% / {colors.hairline-strong} 14%) replace shadows entirely β the system has no traditional drop-shadow elevation language.{component.button-primary} is a small white rectangle with black text β counterintuitive contrast that becomes the page's brightest pixel and works as a single visual anchor.{colors.primary} β #fcfdff): the brand's de facto accent. Reserved for {component.button-primary} (white pill on black canvas), Domaine display headlines, and the active text colour. White is the loudest possible colour on this canvas β that's the signature.{colors.primary-on} β #000000): label colour on top of {colors.primary} surfaces. Black text on white pill is the brand's CTA pattern.{colors.surface-light} β #f1f7fe): a subtle blue-tinted off-white used as the active/pressed state of {component.button-primary}.{colors.canvas} β #000000): the default page background. True black, never near-black.{colors.surface-card} β #0a0a0c): the standard inset card surface, just lighter than canvas to register a step up in elevation.{colors.surface-elevated} β #101012): a second elevation step used on featured pricing tiers and ghost button surfaces.{colors.surface-deep} β #06060a): code window background β slightly cooler and darker than the canvas itself, suggesting depth via temperature.{colors.hairline} β rgba(255,255,255,0.06)): the soft 1px translucent-white divider used between rows and around feature cards.{colors.hairline-strong} β rgba(255,255,255,0.14)): the structural 1px border on cards, code wells, and form inputs.{colors.divider-soft} β rgba(255,255,255,0.04)): low-contrast dividers between footer columns.{colors.ink} β #fcfdff): primary text colour on the dark canvas. Faintly blue-cool to feel like printed paper rather than pure white pop.{colors.body} β rgba(252,253,255,0.86)): long-form body text where pure ink would feel too sharp.{colors.charcoal} β rgba(252,253,255,0.7)): captions, secondary nav labels.{colors.mute} β #a1a4a5): supporting text and inactive labels.{colors.ash} β #888e90): tertiary text, footer copy.{colors.stone} β #464a4d): disabled foreground.{colors.on-light} β #000000): label colour inside the rare email-mockup white cards.{colors.on-light-mute} β rgba(0,0,51,0.7)): secondary text inside email mockups.{colors.accent-orange} β #ff801f) + glow ({colors.accent-orange-glow} β rgba(255,89,0,0.22)): atmospheric warm wash anchored to "Email reimagined" / customer story sections. Solid orange never appears as a button or surface β only the glow.{colors.accent-yellow} β #ffc53d): used in inline highlight strokes and "first-class developer experience" key callouts.{colors.accent-blue} β #3b9eff) + glow ({colors.accent-blue-glow} β rgba(0,117,255,0.34)): inline link colour and the cool atmospheric wash on the "Integrate this weekend" section.{colors.accent-green} β #11ff99) + glow ({colors.accent-green-glow} β rgba(34,255,153,0.18)): success status dots and the "delivery confirmed" feature glow.{colors.accent-red} β #ff2047) + glow ({colors.accent-red-glow} β rgba(255,32,71,0.34)): inline error red and the "reach humans, not spam folders" attention wash.{colors.link} β #3b9eff): inline link colour β same as accent blue.Resend ships a four-family stack:
ss01 / ss04 / ss11 stylistic sets engaged for a slightly tighter, more print-magazine look.ss01 / ss03 / ss04 features for tabular figures and alternate glyphs.When proprietary families cannot be licensed, SΓΆhne or Tiempos Headline stand in for Domaine Display, and Geist or Inter Tight can replace ABC Favorit. Inter and Geist Mono are open-source and should be used directly.
| Token | Size | Weight | Line Height | Letter Spacing | Use |
|---|---|---|---|---|---|
{typography.display-xxl} | 96px | 400 | 1.0 | -0.96px | Home hero ("Email for developers"). One per page. |
{typography.display-xl} | 76.8px | 400 | 1.0 | -0.768px | Section openers ("Email reimagined", "Available today"). |
{typography.display-lg} | 56px | 400 | 1.2 | -2.8px | ABC Favorit display sub-titles. |
{typography.heading-md} | 24px | 500 | 1.5 | -0.4px | Card titles, section sub-titles. |
{typography.heading-sm} | 20px | 500 | 1.3 | -0.3px | List headers. |
{typography.subtitle} | 20px | 400 | 1.3 | 0 | Hero subtitles. |
{typography.body-lg} | 18px | 400 | 1.5 | 0 | Marketing prose. |
{typography.body-md} | 16px | 400 | 1.5 | -0.8px | ABC Favorit body. |
{typography.body-sm} | 14px | 400 | 1.43 | 0 | Captions, metadata. |
{typography.button-md} | 14px | 500 | 1.43 | 0 | Default button label. |
{typography.button-sm} | 14px | 500 | 1.43 | 0.35px | Pill labels, inline links. |
{typography.caption} | 12px | 400 | 1.5 | 0 | Footer disclosure, copyright. |
{typography.caption-emph} | 14px | 600 | 1.0 | 0 | Emphatic small caption β Helvetica fallback. |
{typography.code-md} | 13px | 400 | 1.6 | 0 | Code blocks, inline code. |
lineHeight: 1.0 with negative letter-spacing β the Domaine Display headlines pack into solid typographic blocks rather than open prose lines.{typography.body-lg} and {typography.body-md}. The serif/sans family change carries hierarchy, not weight bumps.ss01 / ss04 / ss11 engaged; Inter never carries OpenType features. Code in Geist Mono never carries ligatures.{typography.button-sm} with positive letter-spacing (0.35px) and ABC Favorit β the small spacing nudge gives interactive prose its precision.When Domaine Display is unavailable, clamp lineHeight to 1.0 explicitly and apply font-feature-settings: "ss01", "liga" on the substitute serif to mimic the alternate glyphs. SΓΆhne or Tiempos Headline will read closest. ABC Favorit substitutes (Geist, Inter Tight) typically default to looser tracking β apply -0.5% letter-spacing on body sizes to compensate.
{spacing.xxs} 2px Β· {spacing.xs} 4px Β· {spacing.sm} 8px Β· {spacing.md} 12px Β· {spacing.lg} 16px Β· {spacing.xl} 24px Β· {spacing.xxl} 32px Β· {spacing.xxxl} 48px Β· {spacing.section} 96px Β· {spacing.band} 128px.{spacing.section} (96px) vertical between bands; {spacing.band} (128px) on the hero stripe and closing footer transition.{spacing.xxl} (32px) on {component.feature-card}, {component.pricing-tier}, and {component.code-window}.{component.pricing-tier-featured} (one-step-elevated surface).{component.code-window} right β collapsing to stacked at < 1024px.{colors.hairline} and {colors.hairline-strong} carry the role drop shadows would in a brighter system; the dark canvas suppresses traditional shadow depth entirely.| Level | Treatment | Use |
|---|---|---|
| 0 β flat | No shadow, no border | Default canvas, full-bleed bands. |
| 1 β surface card | {colors.surface-card} (#0a0a0c) + 1px {colors.hairline-strong} | Feature cards, pricing tiers, form inputs. |
| 2 β elevated | {colors.surface-elevated} (#101012) + 1px {colors.hairline-strong} | Featured pricing tier, ghost button. |
| 3 β code well | {colors.surface-deep} (#06060a) + 1px {colors.hairline-strong} | Code window, terminal shells. |
| 4 β atmospheric glow | Low-opacity radial gradient ({colors.accent-*-glow}) anchored at section top | Section openers ("Integrate this weekend", "Email reimagined"). |
The system has no traditional drop shadow language. Every surface either gets a translucent-white hairline border or sits inside an atmospheric glow. The dark canvas absorbs shadow naturally; surfaces register depth via temperature and luminance shifts rather than blur.
{component.code-window} shells include a row of three coloured dots (red {colors.accent-red}, yellow {colors.accent-yellow}, green {colors.accent-green}) at the top β the only place all three semantic colours appear together as solid surfaces.| Token | Value | Use |
|---|---|---|
{rounded.none} | 0px | Hero stripe, full-bleed bands, footer. |
{rounded.xs} | 4px | Inline tags inside code wells. |
{rounded.sm} | 6px | Code tabs, mid-size chips. |
{rounded.md} | 8px | Buttons, form inputs. |
{rounded.lg} | 12px | Feature cards, pricing tiers, code wells, email mockups. |
{rounded.xl} | 16px | Larger feature panels. |
{rounded.full} | 9999px | Pills, status dots, contributor avatars. |
{rounded.full}) at 32px, sitting inline with body copy.{rounded.lg} corners.button-primary β white CTA
{colors.primary}, label {colors.primary-on}, type {typography.button-md}, padding 8px 16px, rounded: {rounded.md}, height 36px.button-primary-pressed (background {colors.surface-light}).button-ghost β translucent CTA
{colors.surface-elevated}, label {colors.ink}, 1px {colors.hairline-strong}, type {typography.button-md}, rounded: {rounded.md}, height 36px.{component.button-primary}.button-outline β outlined CTA
{colors.canvas}, label {colors.ink}, 1px {colors.hairline-strong}, type {typography.button-md}, rounded: {rounded.md}, height 36px.hero-stripe β full-bleed hero
{colors.canvas}, text {colors.ink}, type {typography.display-xxl} for the headline, padding 96px 32px, rounded: {rounded.none}.{component.button-primary} CTA. No photography, no atmospheric glow inside the hero itself β the glow appears on the section that follows.feature-card β feature highlight card
{colors.surface-card}, text {colors.ink}, type {typography.body-md}, rounded: {rounded.lg}, padding {spacing.xxl} (32px).feature-card-bordered β outlined feature card
{colors.surface-card}, text {colors.ink}, 1px {colors.hairline-strong}, type {typography.body-md}, rounded: {rounded.lg}, padding {spacing.xxl}.pricing-tier β pricing tier card
{colors.surface-card}, text {colors.ink}, 1px {colors.hairline-strong}, type {typography.body-md}, rounded: {rounded.lg}, padding {spacing.xxl} (32px).{typography.heading-md} + price in {typography.display-lg} (ABC Favorit, 56px).pricing-tier-featured β recommended tier
{colors.surface-elevated}, text {colors.ink}, 1px {colors.hairline-strong}, type {typography.body-md}, rounded: {rounded.lg}, padding {spacing.xxl}.code-window β code well
{colors.surface-deep}, text {colors.body}, type {typography.code-md}, 1px {colors.hairline-strong}, rounded: {rounded.lg}, padding {spacing.xl} (24px).{colors.accent-red} / {colors.accent-yellow} / {colors.accent-green} for chrome, plus a tab strip below it.code-tab β code language tab
{colors.surface-card}, text {colors.charcoal}, type {typography.code-md}, rounded: {rounded.sm}, padding 6px 12px.{colors.ink} and adds a subtle {colors.hairline-strong} underline.email-mockup β email-card inset
{colors.surface-card} (or the rare #ffffff when rendered as a light-island inset), text {colors.ink} (or {colors.on-light} for white insets), type {typography.body-md}, rounded: {rounded.lg}, padding 0.text-input β default input
{colors.surface-card}, text {colors.ink}, type {typography.body-sm}, 1px {colors.hairline-strong}, rounded: {rounded.md}, padding 10px 14px, height 40px.{colors.ink} (no separate ring colour).nav-bar β top nav (desktop)
{colors.canvas}, text {colors.body}, type {typography.button-sm}, height 64px, single hairline {colors.hairline} bottom border.{component.button-primary}.nav-bar (mobile)
sub-nav-pill β pill-style sub-nav
{component.sub-nav-pill} styling.badge-pill β neutral pill
{colors.surface-elevated}, text {colors.body}, type {typography.caption}, rounded: {rounded.full}, padding 4px 10px.status-dot β status indicator
{colors.accent-green}, rounded: {rounded.full}, 8px square.contributor-avatar β testimonial avatar
{colors.surface-card} placeholder, rounded: {rounded.full}, 32Γ32px.footer β global footer
{colors.canvas}, text {colors.charcoal}, type {typography.body-sm}, rounded: {rounded.none}, padding 64px 32px.{colors.divider-soft}.{colors.canvas} (true black) as the default page background. Every public page lives here.{component.button-primary} (white pill) as the only solid bright surface. One per viewport at most.lineHeight: 1.0 and ss01 / ss04 / ss11 features engaged.{colors.accent-*-glow} tokens as low-opacity radial atmospheric washes β never as solid surfaces.{rounded.md} (8px); cards and code wells to {rounded.lg} (12px); pills and avatars to {rounded.full}.#000000, not #0a0a0a.{colors.accent-orange} is for inline highlights only β its glow form is for backdrops.{component.code-window} β even small inline code uses Geist Mono and a {colors.surface-card} background.lineHeight past 1.0. Tight stacking is structural to the brand.| Name | Width | Key Changes |
|---|---|---|
| Desktop XL | β₯ 1440px | Full max-width 1200 body, 3-up feature grid, side-by-side code-story splits. |
| Desktop | 1280β1439px | Container shrinks; xl side padding. |
| Tablet Large | 1024β1279px | Feature grid stays 3-up, code-story remains 2-up. |
| Tablet | 768β1023px | Feature grid 2-up, code-story stacks (narrative on top), pricing stacks vertically. |
| Mobile Large | 426β767px | Feature grid 1-up; nav collapses to hamburger; hero {typography.display-xxl} clamps to 56px. |
| Mobile | β€ 425px | All grids 1-up, hero clamps to 44px, section padding {spacing.section} collapses to 64px. |
{component.text-input} is 40px tall β comfortable but not large. Mobile scales to 48px via padding.{component.sub-nav-pill} stays at 36px on desktop, 40px on mobile.{component.button-primary} stay anchored.{typography.display-xxl} clamps: 96px β 76px β 56px β 44px across the breakpoint ladder.{colors.surface-card} or {colors.surface-elevated} with {rounded.lg} β only the role-specific tokens ({colors.primary}, {component.code-window}) shift between variants.{colors.primary}, {component.button-primary-pressed}, {rounded.lg}) β do not paraphrase.npx @google/design.md lint DESIGN.md after edits; orphaned-tokens warnings will catch unused entries.-pressed, -featured, -disabled) β do not bury them in prose.{typography.body-md}; reach for {typography.subtitle} only on hero subtitles.{colors.primary} (white) scarce β if more than one solid white surface appears per viewport, ask whether one should drop to {component.button-ghost} instead.button-primary-pressed; other components rely on the default focus-ring (browser default) for interactive feedback.Still exploring the format? Browse the full DESIGN.md registry or draft a new system with our DESIGN.md generator.
Community listing for AI design workflowsβnot necessarily affiliated with any brand referenced in the name or summary. For context on the format, see Google Stitch.
Share your design system with AI agents worldwide