UIX

Presets Damson Basket

Damson Basket

Warm, soft-edged food delivery UI: fig-violet actions on plum-tinted taupe neutrals, rounded shapes and friendly Geist type.

Color

Five ramps, 50 to 950

brand50f8f3fc100f0e7f8200e0cff0300cbaee4400b088d35009363bd600774aa17005f3a82800482c63900331f469501f1229
neutral50faf7f9100f2edf0200e3dce1300cdc4cb400aea3ad5008f838e600756a757005d535d800453d459002e28309501b161d
success50f3f7ea100e3eed0200c9dfaa300a6c87e40082ad5850063923c6004c772d7003b5e248002c481b9001e3212950111e09
warning50fff8e8100ffedc4200fbdb92300ecc065400d6a232500b88411600976a05700765200800593d009003e2a00950251800
danger50fff3f3100ffe2e2200ffc5c7300ff9a9f400f56d78500dc4455600bb2f4070098222f800741720900530d15950340509

Semantic tokens

Light and dark

Light
background#faf7f9
foreground#1b161d
card#ffffff
card-foreground#1b161d
popover#ffffff
popover-foreground#1b161d
primary#774aa1
primary-foreground#ffffff
secondary#f2edf0
secondary-foreground#2e2830
muted#f2edf0
muted-foreground#5d535d
accent#f0e7f8
accent-foreground#331f46
destructive#bb2f40
destructive-foreground#ffffff
success#3b5e24
success-foreground#ffffff
warning#fbdb92
warning-foreground#3e2a00
border#e3dce1
input#cdc4cb
ring#9363bd
Dark
background#1b161d
foreground#faf7f9
card#2e2830
card-foreground#faf7f9
popover#2e2830
popover-foreground#faf7f9
primary#b088d3
primary-foreground#1f1229
secondary#453d45
secondary-foreground#f2edf0
muted#453d45
muted-foreground#cdc4cb
accent#331f46
accent-foreground#f0e7f8
destructive#f56d78
destructive-foreground#340509
success#82ad58
success-foreground#111e09
warning#d6a232
warning-foreground#251800
border#453d45
input#5d535d
ring#b088d3

Typography

Geist, Geist and Geist Mono

Grow what matters

display-lg · 46/1.1 · 600 · -0.025em
Geist

Grow what matters

display-md · 36/1.14 · 600 · -0.02em
Geist

A calmer way to work

heading-lg · 28/1.2 · 500 · -0.015em
Geist

A calmer way to work

heading-md · 22/1.3 · 600 · -0.01em
Geist

A calmer way to work

heading-sm · 18/1.35 · 600 · -0.005em
Geist

Good systems disappear. People notice the product, not the parts.

body-lg · 18/1.6 · 400
Geist

Good systems disappear. People notice the product, not the parts.

body-md · 16/1.6 · 400
Geist

Good systems disappear. People notice the product, not the parts.

body-sm · 14/1.5 · 400
Geist

Save changes

label · 14/1.3 · 500 · 0.005em
Geist

Updated 2 minutes ago

caption · 12/1.4 · 500 · 0.01em
Geist

const theme = preset("damson-basket")

code · 14/1.5 · 400
Geist Mono

Spacing · radius · shadow

The quiet rules

0.52px
14px
1.56px
28px
312px
416px
520px
624px
832px
1040px
1248px
1664px
2080px
2496px
sm
6px
md
12px
lg
16px
xl
24px
full
full
sm
md
lg

Components

Every part, every state

Buttons

DefaultHoverFocusDisabledPrimarySecondaryOutlineGhostDestructive

Inputs

Placeholder
Focused
Use at least 8 characters
Team
Design
Opens a menu
Disabled

Navigation

ProductPricingCustomersDocs

12 projects, 3 due this week.

Home / Projects / Q3 launch

Feedback

New version availableReload to get the latest features.
Payment received2,400 from Md Rakib Shekh.
Card expires soonUpdate it before Friday.
Sync failedWe will try again in 30 seconds.
NJ
Nusrat JahanCommented on Q3 launch
Invoice sent to Israt Jahan
Undo
PrimarySecondaryOutlineActivePendingFailedNew
Copied to clipboard72%
MRNJIJMRNJIJ+5

Cards, table and overlays

Monthly revenue12.4%

48,210

74% of the 65k goal
The food delivery report

What changed this quarter, and what to do next.

MRMd Rakib Shekh4 min read
IJ
Israt Jahan

Product designer

CustomerDateStatusAmount
MRMd Rakib ShekhMar 12Paid2,400.00
NJNusrat JahanMar 11Pending860.00
IJIsrat JahanMar 09Failed1,120.00
Showing 1–3 of 36
Q3 launch24 files, edited today
Delete project?

“Q3 launch” and its 24 files will be removed for everyone. You can’t undo this.

No messages yet

When customers write to you, their messages show up here.

Screens

Damson Basket as a real product

Landing page

damson-basket.com
ProductPricingCustomersDocs
New · food delivery

Damson Basket

Warm, soft-edged food delivery UI: fig-violet actions on plum-tinted taupe neutrals, rounded shapes and friendly Geist type.

MRNJIJLoved by 2,000+ teams
This week

+24.6%

Dashboard

Good morning, Rakib

Overview

Revenue

48,210

+12.4%
Customers

2,318

+4.1%
Churn

1.8%

-0.3%
Revenue
CustomerDateStatusAmount
MRMd Rakib ShekhMar 12Paid2,400.00
NJNusrat JahanMar 11Pending860.00
IJIsrat JahanMar 09Failed1,120.00

Phone app

9:41●●● 100%

Welcome back

Md Rakib Shekh
MR
Balance

12,480

MR
Md Rakib ShekhPaid
2,400
NJ
Nusrat JahanPending
860
IJ
Israt JahanFailed
1,120
9:41●●● 100%

Q3 launch

1 of 3 doneOn track for Friday.

Pricing

Starter

0 a month

For trying things out

  • 1 project
  • Basic reports
  • Email support
ProPopular

24 a month

For growing teams

  • Unlimited projects
  • Team workspaces
  • Priority support
  • Advanced reports
Business

79 a month

For larger organisations

  • Everything in Pro
  • SSO and audit log
  • A dedicated manager
Can I change plans later?

Yes. Move up or down any time, and we work out the difference for you.

Is there a free trial?

Starter is free for as long as you like. Pro is free for the first 14 days.

Do teams get a discount?

Teams of 20 or more get 20% off. Write to us and we will set it up.

Sign in

Welcome back

Sign in to continue to your workspace.

or

“We set up our whole workspace in an afternoon.”

NJNusrat Jahan
Head of operations

Settings

Settings

MRMd Rakib Shekhrakib@studio.co
Email notificationsA summary every Monday.
Two-factor sign-inProtect your account with a code.
LanguageUsed across the app.
Delete accountThis removes all your data.

Palette and type

Light

  • Primary#774aa1
  • Accent#f0e7f8
  • Background#faf7f9
  • Foreground#1b161d
  • Muted#f2edf0

Dark

  • Primary#b088d3
  • Accent#331f46
  • Background#1b161d
  • Foreground#faf7f9
  • Muted#453d45
  • DisplayGeist
  • BodyGeist
  • MonoGeist Mono

Overview

Damson Basket is for apps that deliver home-cooked and neighborhood food. Most food delivery UIs default to red and orange. This system uses deep fig violet (brand.600) on plum-tinted taupe neutrals instead. Rounded radii (12/16/24px), 44px controls and comfortable spacing make the UI feel handmade, without decorative textures or illustrations.

Color

Fig (brand, violet) is the only action color. It is used for primary buttons, links, selected states and the focus ring. The brand ramp holds chroma highest at 400–600 and tapers evenly toward 50 and 950, so no step looks greyed out. Neutrals carry a low, constant plum tint, so greys read as warm taupe, which flatters food photography. Success was shifted toward olive and warning is ochre; both lean warm to match Fig. Danger is a crimson that stays well apart from Fig in hue: destructive vs primary ΔE2000 is above 18 in both modes. Light mode: primary brand.600 on white is about 6.4:1, muted-foreground neutral.700 on muted is about 6.3:1, and ring brand.500 on background is about 4.2:1. Dark mode is built on its own tokens, not an inversion. The background is neutral.950, a deep aubergine-black. Card and popover sit one step lighter on neutral.900. Primary is a soft lilac (brand.400, about 6.2:1 on background) with brand.950 text, so it glows gently without looking neon.

Typography

Geist covers display, interface and body text. Geist Mono is reserved for order IDs, promo codes and timestamps. The heading scale steps by about 1.27: heading-sm 18, heading-md 22, heading-lg 28, display-md 36, display-lg 46. Tracking tightens as size grows, from -0.005em at 18px to -0.025em at 46px. Display styles use weight 600 and heading-lg uses 500, so headlines read friendly rather than corporate. Body-md is 16px at line height 1.6 for menus and dish descriptions. Labels are 14px/500 and captions are 12px/500. All weights used (400, 500, 600) ship with Geist and Geist Mono.

Layout

Comfortable density on a 4px base grid (space tokens). Mobile gutters are space.4–space.6 (16–24px); desktop content is capped at 1120px. Menu cards use space.5 (20px) padding. Order rows keep a minimum 44px tap height with space.3 (12px) vertical padding.

Elevation

Mostly flat. Cards sit on the background with a 1px border token and shadow-sm, a plum-tinted shadow at 6% opacity. shadow-md is for the sticky cart bar, popovers and dropdown menus. shadow-lg is only for dialogs and bottom sheets. In dark mode, depth comes mainly from the surface step (neutral.950 to neutral.900) and the border (neutral.800), because shadows barely show on dark surfaces.

Shapes

Generously rounded. Use radius.md (12px) on buttons and inputs, radius.lg (16px) on cards and card images, and radius.xl (24px) on bottom sheets, dialogs and hero images. radius.full (pill) is for badges, filter chips and the courier status tag. radius.sm (6px) is only for small inner elements such as checkboxes and tooltips. radius.none is only for dividers.

Do

  • Use one primary button per screen for the main action, such as 'Place order' or 'Add to basket'. Style other actions as secondary (neutral.100 surface) or ghost.
  • Keep buttons and inputs at their 44px height token, and give order rows at least 44px tap height.
  • Show the focus state as a 2px ring token (brand.500 light, brand.400 dark) with a 2px offset on buttons, inputs, chips and cards.
  • Round food photos with radius.lg (16px) inside cards and radius.xl (24px) for hero images and bottom sheets.
  • Set prices and delivery times in label or body-md with font-feature-settings: 'tnum', and right-align them in order summaries.
  • Use the code style (Geist Mono 14px) only for order IDs, promo codes and timestamps.
  • Pair every success, warning and destructive badge or banner with an icon and a text label, for example a check icon plus 'Delivered'.
  • Separate cards from the background with the 1px border token and shadow-sm. Use shadow-md for the sticky cart bar and popovers, and shadow-lg only for dialogs and bottom sheets.

Don’t

  • Don't use destructive (danger.600 / danger.400) for promotions or deals. Reserve it for errors, cancellations and 'Remove item'.
  • Don't use #000000, a #ffffff page background or untinted greys. Use the neutral ramp, and keep #ffffff for light-mode card and popover only.
  • Don't apply radius.none or radius.sm to cards, buttons, inputs or images.
  • Don't set display-lg, display-md or heading-lg below 28px, in all caps, or at weight 400.
  • Don't run body text longer than one line on the accent surface (brand.100 light / brand.900 dark). Use accent for selected rows, active filter chips and highlights.
  • Don't put muted-foreground text on brand or status surfaces. Use the matching *-foreground token.
  • Don't add decorative textures, illustrations or hand-drawn fonts. The warmth comes from the color, radius and spacing tokens.
Access
Free
Industries
food delivery, restaurants, grocery
Mood
warm, approachable, earthy, friendly
Display font
Geist
Body font
Geist
Mono font
Geist Mono
Density
Comfortable
Contrast
Standard
Corner radius
12px

Use Damson Basket

On the web

Open it in Studio, change anything, then use it in your app with one CSS link, the CLI or your AI tool.

Use this preset

In Figma

Open UIX, go to Presets and search “Damson Basket”. Press Use this preset, then Sync to Figma.

Install UIX

In code

Install the theme with shadcn/ui, or download the files.

DESIGN.mdtheme.csstokens.dtcg.jsonfigma-variables.jsonshadcn-theme.jsonpreset.json

Send to your AI agent

Connect the UIX MCP once, then ask Claude Code, Cursor or any MCP client: “Use the Damson Basket preset”.

Get your MCP link