CTA and success highlight.
Postgres development platform
A compact, border-led catalog of Supabase visual tokens: green actions, dashboard frames, SQL code panels, pricing pills, and docs-style navigation.
01 / Colors
Supabase hierarchy is built from near-black surfaces, quiet gray borders, and a precise green action scale.
CTA and success highlight.
Green hover support.
Selected dark green UI.
Default dark mode field.
Cards and controls.
Nav and app shells.
Hairline dividers.
Inputs and strong frames.
Headings and values.
Paragraph text.
Caution states.
Invalid and destructive.
02 / Typography
The system avoids heavy display weights. Monospace labels and code create the developer-platform cadence.
Launch scalable Postgres apps
Display — 72px / 400 / 1.00 / 0em / Inter substituteBuild in a weekend
Hero — 60px / 400 / 1.00 / 0em / Inter substituteEvery project is a full Postgres database
Headline-lg — 36px / 400 / 1.20 / 0em / Inter substituteTable Editor
Title-lg — 24px / 400 / 1.33 / 0em / Inter substituteRealtime subscriptions
Title-md — 20px / 400 / 1.40 / 0em / Inter substituteStorage policies
Title-sm — 16px / 500 / 1.50 / 0em / Inter substituteUse muted body copy to explain behavior without overpowering the product UI.
Body — 16px / 400 / 1.50 / 0em / Inter substituteDATABASE / PUBLIC / PROFILES
Label — 12px / 400 / 1.33 / 0.08em / Source Code Pro$25 / month
Pricing display — 48px / 400 / 1.00 / 0em / Inter substituteselect * from auth.users where confirmed_at is not null;
Code — 14px / 400 / 1.36 / 0em / Source Code Pro03 / Buttons
Buttons are low-radius, 34px-ish controls. Green is reserved for real action or active state.
04 / Cards & Surfaces
Cards feel like product panels, not floating marketing tiles. The border is the main depth device.
Feature card
Dedicated Postgres with table UI, SQL editor, backups, and row-level security.
Hero card
A darker shell for screenshots and multi-panel product stories.
Brand panel
Dark green emphasis for selected states, plan pills, and security moments.
Pricing card
Operational plan cards keep borders strong and sales styling quiet.
SQL editor
create policy "Public profiles" on profiles for select using (true);
Docs card
Documentation cards use muted text, compact links, and the same control surfaces.
05 / Brand-Specific Product Patterns
The essential Supabase cues are real product UI: table editor, SQL, auth, storage, logs, and pricing infrastructure.
select
date_trunc('day', created_at) as day,
count(*) as signups
from auth.users
group by 1
order by 1 desc;Sign in
allow select on storage.objects using (bucket_id = 'avatars');
06 / Forms
Forms inherit the dashboard language: dark fill, strong border, small labels, and sparse error treatment.
Key has expired. Generate a new service role key.
07 / Spacing
Marketing breathes at section scale; dashboards compress into 8px, 16px, and 24px steps.
08 / Radius
Supabase corners are small and functional, with pills reserved for pricing tags and compact filters.
Tiny table cells.
Small tags.
Inputs and buttons.
Feature cards.
Dashboard frames.
Pricing pills only.
09 / Elevation
Depth comes from border contrast and surface steps. Utility shadows appear only in floating or code-demo contexts.
Default
shadow: none; border carries depth.
Utility
0 1px 2px #0000000d
Floating
0 1px 3px #0000001a
10 / Extracted Component Tokens
The preview declares every core design token in `:root` for direct reuse.
:root {
--brand-primary: #3ECF8E;
--brand-accent: #249361;
--brand-accent-hover: #33CC87;
--brand-accent-pressed: #15593B;
--brand-ink: #FAFAFA;
--brand-body: #B4B4B4;
--brand-muted: #898989;
--brand-canvas: #121212;
--brand-surface: #1F1F1F;
--brand-surface-alt: #171717;
--brand-border: #2E2E2E;
--brand-border-strong: #454545;
--brand-link: #00C47C;
--brand-warning: #DB8900;
--brand-error: #E54D2E;
--brand-deep: #072719;
--brand-code-canvas: #1E1E1E;
--radius-xs: 2px;
--radius-sm: 4px;
--radius-md: 6px;
--radius-lg: 8px;
--radius-xl: 12px;
--space-xs: 4px;
--space-sm: 8px;
--space-md: 16px;
--space-lg: 24px;
--space-xl: 32px;
}