S

Supabase

DevTools & Infrastructure · Vibrant green on dark — Firebase vibes with open source authenticity.

Color Palette

Primary

#3ECF8E

Secondary

#1C1C1C

Accent 1

#1F6FEB

Typography

Inter

The quick brown fox

jumps over the lazy dog

ABCDEFGHIJKLMNOPQRSTUVWXYZ

Component Preview

Navigation Bar

Supabase · Features · Pricing

#1F6FEB — accent

Spacing Scale (4px base)

4

8

16

24

32

48

.cursorrules
# Supabase Design System — .cursorrules
# Generated by StyleExtract · styleextract.com/vault/supabase

You are a senior frontend developer building UI that matches the Supabase design system exactly.
Read this entire file before writing any component.

## Brand Identity
Company    : Supabase
Primary    : #3ECF8E
Secondary  : #1C1C1C
Accent     : #1F6FEB
Font       : Inter, system-ui
Radius     : 6px
Voice      : Vibrant green on dark — Firebase vibes with open source authenticity.

## CSS Custom Properties
```css
:root {
  --color-primary:   #3ECF8E;
  --color-secondary: #1C1C1C;
  --color-accent:    #1F6FEB;
  --color-text:      #FFFFFF;
  --color-surface:   #1C1C1E;
  --color-border:    #2C2C2E;
  --font-sans:       "Inter", system-ui, -apple-system, sans-serif;
  --radius:          6px;
}
```

## Tailwind Config
```js
// tailwind.config.js
module.exports = {
  theme: {
    extend: {
      colors: {
        primary:   "#3ECF8E",
        secondary: "#1C1C1C",
        accent:    "#1F6FEB",
      },
      fontFamily: {
        sans: ["Inter", "system-ui", "sans-serif"],
      },
      borderRadius: {
        brand: "6px",
      },
    },
  },
};
```

## Typography
```
heading-font:    Inter, system-ui
heading-weight:  700
heading-tracking: -0.02em
body-font:       Inter, system-ui
body-size:       16px
body-line-height: 1.6
```

## Spacing Scale
Base: 4px  |  Scale: 4 · 8 · 12 · 16 · 24 · 32 · 48 · 64 · 96px
Never use arbitrary values like 13px, 22px, or 50px.

## Component Rules

### Primary Button
background-color: #3ECF8E
color: #1D1D1F
border-radius: 6px
padding: 12px 24px
font-weight: 600
font-size: 14px
transition: opacity 0.15s
&:hover { opacity: 0.88 }

### Secondary Button
background-color: transparent
border: 1.5px solid #3ECF8E
color: #3ECF8E
border-radius: 6px
padding: 11px 23px

### Card
background: #1C1C1E
border: 1px solid #2C2C2E
border-radius: 16px
padding: 24px
box-shadow: 0 1px 3px rgba(0,0,0,0.08)

### Navigation
background: #1C1C1C
color: #FFFFFF
height: 60px
padding: 0 24px
```

## Rules
DO:
- Use the exact hex values defined in CSS Custom Properties
- Maintain Supabase's aesthetic: Vibrant green on dark — Firebase vibes with open source authenticity.
- Apply 4px base-unit spacing throughout
- Use Inter for all text elements
- Meet WCAG AA contrast (4.5:1 minimum for body text)

DON'T:
- Invent colors outside the defined palette
- Use system-default blue (#0000EE) for links — use var(--color-primary)
- Apply border-radius values not on the brand scale
- Use font-weight below 400 or above 900

2,558 characters

STYLE.mdAI Agent File
---
brand:
  name: "Supabase"
  category: "DevTools & Infrastructure"
  primary: "#3ECF8E"
  secondary: "#1C1C1C"
  accent: "#1F6FEB"
typography:
  heading: "Inter, system-ui"
  headingWeight: 700
  headingTracking: "-0.02em"
  body: "Inter, system-ui"
  bodySize: "16px"
  lineHeight: 1.6
spacing:
  base: 4
  scale: [4, 8, 12, 16, 24, 32, 48, 64, 96]
shape:
  radiusSm: "4px"
  radiusMd: "6px"
  radiusLg: "16px"
  radiusXl: "24px"
---

# Supabase Design System
> AI Agent Context — read this entire file before generating any UI for Supabase
> Source: StyleExtract Vault · styleextract.com/vault/supabase

## Brand Overview
Vibrant green on dark — Firebase vibes with open source authenticity.

## Color System

| Role      | Hex       | Usage                          |
|-----------|-----------|-------------------------------|
| Primary   | `#3ECF8E` | CTAs, links, key accents  |
| Secondary | `#1C1C1C` | Backgrounds, headings    |
| Accent    | `#1F6FEB` | Highlights, badges, icons |
| Surface   | `#1C1C1E` | Card backgrounds |
| Border    | `#2C2C2E` | Dividers, outlines |

ALWAYS use `#3ECF8E` for primary interactive elements and CTAs.
NEVER invent colors outside the palette above.

## Typography

- **Heading font**: Inter, system-ui
- **Heading weight**: 700 / letter-spacing −0.02em
- **Body font**: Inter, system-ui
- **Body size**: 16px / line-height 1.6

## Spacing System

Base unit is **4px**. Allowed values: 4, 8, 12, 16, 24, 32, 48, 64, 96px.
Never use arbitrary values.

## Component Patterns

### Buttons
```
Primary:   bg #3ECF8E  · text #1D1D1F  · rounded-[6px]  · px-6 py-3  · font-semibold
Secondary: transparent    · border-[#3ECF8E]       · text-[#3ECF8E]      · px-6 py-3
```

### Cards
```
bg white (dark: #1C1C1E) · border #E5E5E7 (dark: #2C2C2E) · rounded-2xl · p-6 · shadow-sm
```

### Navigation
```
bg #1C1C1C · text #FFFFFF · h-[60px] · px-6 · logo-left · links-right
```

## Accessibility
- All text WCAG AA (4.5:1 minimum)
- Interactive targets: 44×44px minimum
- Never convey state via color alone

## Brand Voice
Vibrant green on dark — Firebase vibes with open source authenticity.

2,129 characters

How to use these files

  1. 1.Copy .cursorrules and paste it as a new file named .cursorrules in your project root.
  2. 2.Copy STYLE.md as STYLE.md in your repo root for Claude, Bolt.new, or any agent that reads Markdown context.
  3. 3.All subsequent AI-generated components will automatically match the Supabase design system.

Need a custom brand?

Extract any live website in 30 seconds.

Get a custom .cursorrules, STYLE.md, 17-page PDF brand book, CSS variables, Tailwind config, Figma tokens, and AI brand voice — all generated from the live site.

Extract a brand →