Supabase

mint-lit postgres on warm paper

Developer Tools Light light technical minimal precise friendly Built with Next.js, Tailwind CSS, React

Supabase feels like a clean developer tool that is sure of itself. The pages are mostly bright white and hairline-ruled, with one fresh mint-green note for the brand and its main buttons. Small technical touches keep it from looking corporate: a pixel-bracket pattern in the warm announcement bar, uppercase monospace plan names, a dot-matrix star counter and thin line-art diagrams of Postgres elephants and wireframe globes. It reads as serious infrastructure with some playfulness.

The type uses three families. Manrope (500–600) handles headings. Inter at the variable weight 450 handles body copy and UI. Source Code Pro covers prices, plan names and code, and a custom Departure Mono bitmap font draws the decoration. Colour is nearly all neutral: #ffffff pages, #000000 and #525252 text, and a #f8f3ef paper band. Green comes in steps: #72e3ad button fills, #3ecf8e brand strokes and the second headline line, and #0a844e/#00482f for links and text on light backgrounds. Components are small and precise: 6px buttons about 34–38px tall, 8–12px cards with 1px borders and almost no shadow, a 1280px container, a 4px spacing grid and 96px gaps between sections.

https://supabase.com

Colors

Click a swatch to copy

Typography

  • display
    Manrope
    400 · 500 · 600 · falls back to Plus Jakarta Sans, DM Sans, system-ui, sans-serif
    All headings. 500 for the big hero display, 600 for section H1–H3. Letter-spacing is normal, except -0.7px on the 28px auth-page title. The hero puts two lines in black and #3ecf8e green.
  • body
    Inter
    400 · 450 · 500 · falls back to Inter Fallback, system-ui, Helvetica Neue, Arial, sans-serif
    A variable font whose default weight is 450, between regular and medium. Used for body, nav and buttons at 14–16px. Weight 500 is for button labels and FAQ questions.
  • mono
    Source Code Pro
    450 · 500 · 700 · falls back to JetBrains Mono, Menlo, monospace
    Uppercase plan names (FREE, PRO, TEAM), large prices ($0, $25) with -0.9px tracking at 18px, code blocks, email chips and terminal snippets.
  • accent
    Departure Mono Superbase
    400 · falls back to Departure Mono, VT323, monospace
    A bitmap pixel font used only for decoration: the ‹[{( bracket glyph pattern in the announcement bar and the dot-matrix GitHub star counter. Rendered at 15px, line-height 1.01, in pale greens.
Display
46px / 1
500 · normal
Supabase
H1
34px / 1.11
600 · normal
Mint-lit postgres on warm paper
H2
28px / 1.2
600 · normal
Mint-lit postgres on warm paper
H3
22px / 1.33
600 · normal
The quick brown fox jumps over the lazy dog
Lead
22px / 1.33
450 · -0.16px
The quick brown fox jumps over the lazy dog
Card title
16px / 1.5
600 · normal
The quick brown fox jumps over the lazy dog
Body
16px / 1.5
450 · normal
The quick brown fox jumps over the lazy dog
UI / Button
14px / 1.43
500 · normal
The quick brown fox jumps over the lazy dog
Caption
12px / 1.33
450 · normal
The quick brown fox jumps over the lazy dog
Mono price
46px / 1
450 · normal
Supabase

Spacing & Shape

Spacing
Base unit
4px
Density
comfortable
Container
1280px
Section gap
96px
Card padding
24px (feature cards) / 32px (large panels)
4
8
12
16
20
24
32
48
64
96
128
Radius
  • Small badges, code chips 4px
  • Buttons, inputs, nav links 6px
  • Cards, pricing columns, framework tiles 8px
  • Feature bento tiles, docs prompt panel 12px
  • Large media and story cards 16px
  • Pill tabs, blog category chips, terminal command chip 9999px
Shadows
none Default for buttons, cards and nav. Depth comes from 1px borders, not shadows.
none
sm Small lift on the docs AI-prompt panel and active segmented tabs
0 1px 3px 0 rgba(0,0,0,0.1), 0 1px 2px -1px rgba(0,0,0,0.1)
lg Dropdown mega-menus, popovers and floating panels
0 10px 15px -3px rgba(0,0,0,0.1), 0 4px 6px -4px rgba(0,0,0,0.1)
inset-ring-dark Hairline edge on dark cards (customer stories, dark-scheme panels)
inset 0 0 0 1px rgba(255,255,255,0.12)
ring-white Outline on elements placed over dark or gradient media
0 0 0 1px rgba(255,255,255,0.3)

Components

Live previews rendered from recipes
Supabase Get started
Buttons
Inputs
Tags
New Developer Tools light
Ghost nav link
Ghost nav link
Card
Everything in one ledger

Reconcile every account overnight and close the month in an afternoon instead of a fortnight.

Get started
  • Primary button — Hero size is about 38px tall. The nav version is compact (about 26px tall, 12px text, 4px 10px padding). Pricing uses a full-width version about 36px tall. In dark scheme the fill becomes #006239 with #3ecf8e border and white text.
  • Secondary button — Used for 'Request a demo', 'Sign in' and 'Contact Us'. Always placed next to the primary button with an 8px gap.
  • Ghost nav link — Product, Developers and Solutions have small chevrons and open large dropdown menus. Pricing, Docs and Blog are plain links.
  • Text input — About 35px tall. Search fields have a leading magnifier icon, and docs search shows a ⌘K keycap. Placeholder colour is #a0a0a0.
  • Feature card — Layout: icon plus Manrope 600 title, then a muted sentence with key phrases in #000000, then a line-art illustration that bleeds off the card edge. Cards form a bento grid with 16px gaps.
  • Pricing column — The four columns share borders. The featured Pro column is raised above the row with a 2px #525252 border and a dark 'Most Popular' badge. Plan names use uppercase Source Code Pro at 22px, prices Source Code Pro at 46px, and feature lists use #3ecf8e check marks.
  • Pill tab / category chip — Used for Table Editor / SQL Editor / RLS Policies tabs and blog category filters. Blog post tags are tiny uppercase outline pills (about 10px text, 4px radius or full pill).
  • Top nav — Left: logo, then links. Right: GitHub icon with star count in #525252, then Sign in (secondary) and Start your project (primary), both compact. A 54px #f8f3ef announcement bar with the pixel-bracket pattern sits above the nav.

Do / Don't

  • Split hero headlines in two: the first line in #000000, the second in #3ecf8e, both Manrope 500 at 46px with line-height 1.
  • Set body and UI text in Inter at weight 450, and in a muted paragraph make the key phrase #000000 while the rest stays #525252.
  • Use Source Code Pro for anything numeric or technical: prices, uppercase plan names, CLI commands and code chips.
  • Build depth with 1px hairline borders and 6/8/12px radii. Keep shadows for dropdowns and floating panels only.
  • Pair a #72e3ad primary button (1px #3ecf8e border, #001a10 label) with a white bordered secondary button, both 6px radius.
  • Use thin monochrome line-art illustrations that bleed off card edges instead of colourful 3D renders.
  • Save #f8f3ef parchment and the Departure Mono pixel glyphs for the announcement band and small decorative moments.
  • Don't use #3ecf8e as a button fill with white text. Primary fills are the lighter #72e3ad with dark #001a10 text.
  • Don't make headings bold. Manrope stays at 500–600 with normal tracking.
  • Don't add drop shadows to cards or buttons in the resting state.
  • Don't add extra brand hues. Greens carry the brand, and purple and amber are rare accents.
  • Don't use large radii or pill shapes for buttons. Pills are for tabs and category chips only.
  • Don't use gradients on UI surfaces. Gradients appear only inside customer-story media.
  • Don't set long body copy in Manrope or monospace. Inter carries all paragraphs.

Screens

Supabase | The Postgres Development Platform /
Pricing & Fees | Supabase /pricing
Supabase Docs /docs
Supabase Blog: the Postgres development platform /blog
Supabase /dashboard/sign-up
Mobile 390×844
Mobile navigation menu open
Dark mode