Presets Spring Doorstep
Spring Doorstep
Calm, botanical UI for home-service booking: spring-water blue actions on cool green-grey neutrals, soft serif headlines, steady contrast.
Colour
Five ramps, 50 to 950
Semantic tokens
Light and dark
Typography
Fraunces, Instrument Sans and JetBrains Mono
Grow what matters
display-lg · 48/1.08 · 600 · -0.025em
Fraunces
Grow what matters
display-md · 38/1.12 · 600 · -0.02em
Fraunces
A calmer way to work
heading-lg · 30/1.2 · 500 · -0.015em
Fraunces
A calmer way to work
heading-md · 24/1.3 · 600 · -0.01em
Instrument Sans
A calmer way to work
heading-sm · 20/1.35 · 600 · -0.005em
Instrument Sans
Good systems disappear. People notice the product, not the parts.
body-lg · 18/1.6 · 400
Instrument Sans
Good systems disappear. People notice the product, not the parts.
body-md · 16/1.6 · 400
Instrument Sans
Good systems disappear. People notice the product, not the parts.
body-sm · 14/1.5 · 400
Instrument Sans
Save changes
label · 14/1.25 · 500 · 0.005em
Instrument Sans
Updated 2 minutes ago
caption · 12/1.4 · 500 · 0.01em
Instrument Sans
const theme = preset("spring-doorstep")
code · 14/1.5 · 400
JetBrains Mono
Spacing · radius · shadow
The quiet rules
4px
8px
12px
16px
full
Components
Every part, every state
Buttons
Inputs
Navigation
Feedback
Cards, table and overlays
$48,210
74% of the $65k goalWhat changed this quarter, and what to do next.
Product designer
| Customer | Date | Status | Amount | |
|---|---|---|---|---|
| MRMd Rakib Shekh | Mar 12 | Paid | $2,400.00 | |
| NJNusrat Jahan | Mar 11 | Pending | $860.00 | |
| IJIsrat Jahan | Mar 09 | Failed | $1,120.00 |
“Q3 launch” and its 24 files will be removed for everyone. You can’t undo this.
When customers write to you, their messages show up here.
Invite your teamScreens
Spring Doorstep as a real product
Landing page
Spring Doorstep
Calm, botanical UI for home-service booking: spring-water blue actions on cool green-grey neutrals, soft serif headlines, steady contrast.
+24.6%
Dashboard
Good morning, Rakib
Overview
$48,210
+12.4%2,318
+4.1%1.8%
-0.3%| Customer | Date | Status | Amount | |
|---|---|---|---|---|
| MRMd Rakib Shekh | Mar 12 | Paid | $2,400.00 | |
| NJNusrat Jahan | Mar 11 | Pending | $860.00 | |
| IJIsrat Jahan | Mar 09 | Failed | $1,120.00 |
Phone app
Welcome back
Md Rakib Shekh$12,480
Q3 launch
Pricing
$0 /month
For trying things out
Start free- 1 project
- Basic reports
- Email support
$24 /month
For growing teams
Choose Pro- Unlimited projects
- Team workspaces
- Priority support
- Advanced reports
$79 /month
For larger organisations
Choose Business- Everything in Pro
- SSO and audit log
- A dedicated manager
Sign in
Welcome back
Sign in to continue to your workspace.
“We set up our whole workspace in an afternoon.”
NJNusrat JahanHead of operations
Settings
Settings
Use Spring Doorstep
In Figma
Open UIX, go to Presets and search “Spring Doorstep”. Press Use this preset, then Sync to Figma.
Install UIXIn 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 Spring Doorstep preset”.
Get your MCP linkAbout Spring Doorstep
Overview
Spring Doorstep is for homeowners booking gardeners, cleaners, plumbers and handypeople, often while dealing with a problem in their house. Instead of urgent orange or red, the system uses one spring-water blue (brand, hue about 200) for action. Structure comes from cool green-grey neutrals (hue about 160). Fraunces is used only for titles of 30px and larger. Every text pair clears 4.5:1 in both modes, and most pairs clear 5:1.
Color
Fernmark Blue carries every primary button, link and focus ring. Light mode uses primary brand.600 #1f7599 with white text (5.2:1) and ring brand.600 (4.8:1 on background). Dark mode uses brand.400 #55b1d2 with brand.950 text (6.5:1). Neutrals hold a steady green tint from 50 to 950. Neutral.950 is set to #141b19 so dark surfaces stay deep but tinted. Destructive is crimson (hue about 345), roughly 145° away from the blue, so cancellations can't be mistaken for primary actions. Success uses a cool teal-leaning green (hue about 155) to sit beside the blue. Warning uses a muted ochre fill (warning.200 with warning.900 text, 9.7:1) so it reads as caution, not alarm. Muted-foreground is neutral.700 in light mode (6.4:1 on background, 5.8:1 on muted) and neutral.300 in dark mode (7.2:1 on muted #26302e).
Typography
The type scale is a major third (ratio of about 1.25) anchored at 16px: 12, 14, 16, 18, 20, 24, 30, 38 and 48. Fraunces covers display-lg 48/600, display-md 38/600 and heading-lg 30/500. Letter spacing tightens from -0.015em to -0.025em as size grows. Instrument Sans covers heading-md 24, heading-sm 20, all body styles, labels and captions at weights 400, 500 and 600. Body line height is 1.5 to 1.6 so instructions stay readable. JetBrains Mono at 14/400 is reserved for booking references, postcodes in tables and code in developer docs.
Layout
Comfortable density on a 4px base grid. Content columns cap at 1152px. Buttons and inputs are 40px tall. Schedule and quote rows are at least 48px tall, with space.4 (16px) horizontal cell padding.
Elevation
Mostly flat. Cards use a 1px border token plus shadow.sm. Shadow.md is for popovers and date pickers, and shadow.lg is for confirmation dialogs only. In dark mode, elevation comes from surface lift: background #141b19, then card #1c2523, then popover #212b29.
Shapes
Soft but tidy rounding. Buttons and inputs use radius.md (8px), and cards and sheets use radius.lg (12px). Radius.full pills are used only for status badges such as 'Booked' or 'On the way' (22px tall, caption type).
Do
- Use the primary token for exactly one main action per screen, such as 'Book visit'. Give other actions the secondary or ghost button variant.
- Show focus with a 2px ring token outline at a 2px offset on buttons, inputs, date-picker cells and time-slot chips, in both modes.
- Set prices and durations in Instrument Sans with font-feature-settings: 'tnum', right-aligned, in quote and schedule tables.
- Use Fraunces only for display-lg (48px), display-md (38px) and heading-lg (30px). Use weight 600 for display styles and 500 for heading-lg.
- Pair every status color with an icon or text label, such as 'Confirmed' with a check, so meaning never relies on hue alone.
- Keep schedule and quote rows at least 48px tall, and use the muted token as the alternate row fill in lists longer than 10 rows.
- Use the accent token only for selected rows, highlighted time slots and selected chips. Put accent-foreground text on it.
- In dark mode, layer surfaces as background, then card, then popover. Add shadow.md only to popovers and date pickers.
Don’t
- Don't use the primary token for errors, cancellations or failed payments. Use destructive with destructive-foreground for those states.
- Don't put body text longer than three lines on the accent or warning surfaces. Keep it on background or card.
- Don't give cards a shadow above shadow.sm. Separation comes from the 1px border token.
- Don't use #000000 or untinted greys for text, borders or surfaces. Draw them from the neutral ramp or the dark surface tokens.
- Don't set Fraunces below heading-lg (30px) or in all caps, and don't use it for form labels, buttons or table content.
- Don't place muted-foreground text on the secondary or accent surfaces. Use secondary-foreground or accent-foreground there.
- Don't use destructive or warning fills as decoration behind non-status content.
- Access
- Free
- Industries
- home services, property maintenance, landscaping
- Mood
- calm, natural, trustworthy, gentle
- Display font
- Fraunces
- Body font
- Instrument Sans
- Mono font
- JetBrains Mono
- Density
- Comfortable
- Contrast
- Standard
- Corner radius
- 8px