{
  "id": "whatsapp",
  "version": "1.0.0",
  "name": "WhatsApp",
  "description": "WhatsApp is the cross-platform messaging and voice-/video-calling service from WhatsApp LLC (a Meta company), used by over two billion people for end-to-end-encrypted real-time communication. The brand voice is warm, practical, and globally egalitarian — \"simple, reliable, secure messaging.\" Visually, WhatsApp is anchored on WhatsApp Green (#25D366), the signature emerald used on the telephone-in-a-bubble mark, primary CTAs, the floating-action button, and the read-receipt double-check. WhatsApp is dual-mode by canonical identity: the mobile and web clients render the green accent on a near-white canvas (light) or a deep blue-black canvas #0B141A (dark), with the green serving as the consistent primary across both surfaces.\n",
  "provenance": {
    "source": "https://www.meta.com/brand/resources/whatsapp/whatsapp-brand/",
    "license": "Proprietary — All Rights Reserved",
    "attribution": "WhatsApp and the WhatsApp logo are trademarks of WhatsApp LLC, a Meta Platforms company. The WhatsApp Brand Resources policy published at meta.com/brand/resources/whatsapp/whatsapp-brand/ enumerates the non-modification, no-verb, no-merchandise, and no-derogatory-use prohibitions encoded in the rules below. The signature WhatsApp Green (#25D366) is documented in the simple-icons brand database (citing whatsapp.com) and corroborated via the live web.whatsapp.com client CSS, which exposes a tonal green scale (--green-0 … --green-100) keyed off the same primary.\n",
    "importedDate": "2026-05-18",
    "notes": "Derived from live site CSS at https://web.whatsapp.com/ on 2026-05-18; the published Meta-hosted WhatsApp brand guide is policy-only (no hex codes), so the supporting green scale was captured from the deployed client's CSS custom properties. WhatsApp's proprietary type family — Super Sans VF, Super Serif VF, Super Sans Mono VF — is declared on the deployed client via @font-face but is not publicly distributed. This atom references Inter@1 as the open-source rendering substitute for the sans roles and notes the proprietary primaries here. The brand-asset policy expressly forbids re-distribution of WhatsApp marks, so `assets: []` is the correct posture for this catalog.\n"
  },
  "tags": [
    "whatsapp",
    "meta",
    "messaging",
    "green",
    "communications",
    "mobile-first",
    "e2e-encryption"
  ],
  "palette": {
    "ref": "whatsapp@1.0.0",
    "swatches": [
      {
        "id": "whatsapp-green",
        "name": "WhatsApp Green",
        "value": "#25D366",
        "description": "Signature WhatsApp emerald — the brand's primary color, used on the telephone-bubble mark, the floating-action button, primary CTAs, and the read-receipt double-check.\n",
        "aliases": []
      },
      {
        "id": "whatsapp-green-dark",
        "name": "WhatsApp Green Dark",
        "value": "#128C7E",
        "description": "Deeper teal-green action color — used on hover/pressed states and on the legacy header chrome of the mobile client.\n",
        "aliases": []
      },
      {
        "id": "whatsapp-teal-dark",
        "name": "WhatsApp Teal Dark",
        "value": "#075E54",
        "description": "Deep teal — the legacy WhatsApp header chrome (pre-2020 visual refresh), retained as a brand-recognised secondary.\n",
        "aliases": []
      },
      {
        "id": "whatsapp-green-50",
        "name": "WhatsApp Green 50",
        "value": "#F4FDFA",
        "description": "Lightest green tint — used as a hover wash on green surfaces (--green-0).",
        "aliases": []
      },
      {
        "id": "whatsapp-green-100",
        "name": "WhatsApp Green 100",
        "value": "#D5F7EB",
        "description": "Pale green tint — used on subtle highlight surfaces (--green-10).",
        "aliases": []
      },
      {
        "id": "whatsapp-green-200",
        "name": "WhatsApp Green 200",
        "value": "#98EBCD",
        "description": "Mid-light green — used in illustration accents (--green-20).",
        "aliases": []
      },
      {
        "id": "whatsapp-green-300",
        "name": "WhatsApp Green 300",
        "value": "#3AC7A1",
        "description": "Mid green — used as a secondary action accent (--green-30).",
        "aliases": []
      },
      {
        "id": "whatsapp-green-400",
        "name": "WhatsApp Green 400",
        "value": "#26A28B",
        "description": "Brand green mid-tone — chat-surface accent (--green-40).",
        "aliases": []
      },
      {
        "id": "whatsapp-green-600",
        "name": "WhatsApp Green 600",
        "value": "#148072",
        "description": "Deeper brand green — used on dark-mode action affordances (--green-60).",
        "aliases": []
      },
      {
        "id": "whatsapp-green-800",
        "name": "WhatsApp Green 800",
        "value": "#005C54",
        "description": "Very deep green — used on dark-mode header surfaces (--green-80).",
        "aliases": []
      },
      {
        "id": "whatsapp-green-900",
        "name": "WhatsApp Green 900",
        "value": "#0C4243",
        "description": "Deepest green — used as a dark-mode tertiary surface (--green-90).",
        "aliases": []
      },
      {
        "id": "whatsapp-green-1000",
        "name": "WhatsApp Green 1000",
        "value": "#17261F",
        "description": "Near-black green — used on dark-mode canvas accents (--green-100).",
        "aliases": []
      },
      {
        "id": "whatsapp-bubble-out",
        "name": "WhatsApp Bubble Out",
        "value": "#DCF8C6",
        "description": "Pale green — the outgoing-message chat bubble color on the legacy mobile client. Visually distinct from incoming bubbles.\n",
        "aliases": []
      },
      {
        "id": "whatsapp-chat-bg-light",
        "name": "WhatsApp Chat Background Light",
        "value": "#E5DDD5",
        "description": "Warm beige — the historical WhatsApp chat-screen background tone (the \"WhatsApp wallpaper default\").\n",
        "aliases": []
      },
      {
        "id": "whatsapp-white",
        "name": "WhatsApp White",
        "value": "#FFFFFF",
        "description": "Pure white — primary text on dark canvas, surface fill on light mode.",
        "aliases": []
      },
      {
        "id": "whatsapp-surface-light",
        "name": "WhatsApp Surface Light",
        "value": "#F0F2F5",
        "description": "Light-mode elevated surface — used for the chat-list rail.",
        "aliases": []
      },
      {
        "id": "whatsapp-text-on-light",
        "name": "WhatsApp Text on Light",
        "value": "#111B21",
        "description": "Primary text on light-mode surfaces.",
        "aliases": []
      },
      {
        "id": "whatsapp-text-secondary-light",
        "name": "WhatsApp Text Secondary Light",
        "value": "#667781",
        "description": "Secondary text and timestamps on light-mode surfaces.",
        "aliases": []
      },
      {
        "id": "whatsapp-canvas-dark",
        "name": "WhatsApp Canvas Dark",
        "value": "#0B141A",
        "description": "Deep blue-black — the WhatsApp dark-mode chat canvas. Tuned for OLED-friendly viewing.\n",
        "aliases": []
      },
      {
        "id": "whatsapp-surface-dark",
        "name": "WhatsApp Surface Dark",
        "value": "#202C33",
        "description": "Dark-mode elevated surface — chat-list rail, top bar.",
        "aliases": []
      },
      {
        "id": "whatsapp-bubble-out-dark",
        "name": "WhatsApp Bubble Out Dark",
        "value": "#005C4B",
        "description": "Dark-mode outgoing-message bubble — deep teal-green.",
        "aliases": []
      },
      {
        "id": "whatsapp-text-on-dark",
        "name": "WhatsApp Text on Dark",
        "value": "#E9EDEF",
        "description": "Primary text on the dark-mode canvas.",
        "aliases": []
      }
    ],
    "modes": {
      "light": {
        "roles": {
          "background": "whatsapp-white",
          "surface": "whatsapp-surface-light",
          "surface-elevated": "whatsapp-white",
          "text-primary": "whatsapp-text-on-light",
          "text-secondary": "whatsapp-text-secondary-light",
          "text-tertiary": "whatsapp-text-secondary-light",
          "primary": "whatsapp-green",
          "primary-hover": "whatsapp-green-dark",
          "accent": "whatsapp-green",
          "accent-hover": "whatsapp-green-dark",
          "warning": "whatsapp-green-300",
          "warning-hover": "whatsapp-green-400",
          "error": "whatsapp-green-dark",
          "success": "whatsapp-green",
          "border": "whatsapp-surface-light"
        }
      },
      "dark": {
        "roles": {
          "background": "whatsapp-canvas-dark",
          "surface": "whatsapp-surface-dark",
          "surface-elevated": "whatsapp-surface-dark",
          "text-primary": "whatsapp-text-on-dark",
          "text-secondary": "whatsapp-green-200",
          "text-tertiary": "whatsapp-green-300",
          "primary": "whatsapp-green",
          "primary-hover": "whatsapp-green-600",
          "accent": "whatsapp-green",
          "accent-hover": "whatsapp-green-600",
          "warning": "whatsapp-green-300",
          "warning-hover": "whatsapp-green-400",
          "error": "whatsapp-green-dark",
          "success": "whatsapp-green",
          "border": "whatsapp-green-1000"
        }
      }
    }
  },
  "fonts": [
    {
      "role": "heading",
      "ref": "inter@1.0.0",
      "family": "Inter",
      "classification": "sans-serif",
      "source": {
        "kind": "google-fonts",
        "family": "Inter",
        "url": "https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap"
      },
      "fallbackStack": [
        "-apple-system",
        "BlinkMacSystemFont",
        "Segoe UI",
        "Roboto",
        "Helvetica Neue",
        "Arial",
        "sans-serif"
      ],
      "availableStyles": [
        {
          "weight": 100,
          "style": "normal"
        },
        {
          "weight": 100,
          "style": "italic"
        },
        {
          "weight": 200,
          "style": "normal"
        },
        {
          "weight": 200,
          "style": "italic"
        },
        {
          "weight": 300,
          "style": "normal"
        },
        {
          "weight": 300,
          "style": "italic"
        },
        {
          "weight": 400,
          "style": "normal"
        },
        {
          "weight": 400,
          "style": "italic"
        },
        {
          "weight": 500,
          "style": "normal"
        },
        {
          "weight": 500,
          "style": "italic"
        },
        {
          "weight": 600,
          "style": "normal"
        },
        {
          "weight": 600,
          "style": "italic"
        },
        {
          "weight": 700,
          "style": "normal"
        },
        {
          "weight": 700,
          "style": "italic"
        },
        {
          "weight": 800,
          "style": "normal"
        },
        {
          "weight": 800,
          "style": "italic"
        },
        {
          "weight": 900,
          "style": "normal"
        },
        {
          "weight": 900,
          "style": "italic"
        }
      ]
    },
    {
      "role": "body",
      "ref": "inter@1.0.0",
      "family": "Inter",
      "classification": "sans-serif",
      "source": {
        "kind": "google-fonts",
        "family": "Inter",
        "url": "https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap"
      },
      "fallbackStack": [
        "-apple-system",
        "BlinkMacSystemFont",
        "Segoe UI",
        "Roboto",
        "Helvetica Neue",
        "Arial",
        "sans-serif"
      ],
      "availableStyles": [
        {
          "weight": 100,
          "style": "normal"
        },
        {
          "weight": 100,
          "style": "italic"
        },
        {
          "weight": 200,
          "style": "normal"
        },
        {
          "weight": 200,
          "style": "italic"
        },
        {
          "weight": 300,
          "style": "normal"
        },
        {
          "weight": 300,
          "style": "italic"
        },
        {
          "weight": 400,
          "style": "normal"
        },
        {
          "weight": 400,
          "style": "italic"
        },
        {
          "weight": 500,
          "style": "normal"
        },
        {
          "weight": 500,
          "style": "italic"
        },
        {
          "weight": 600,
          "style": "normal"
        },
        {
          "weight": 600,
          "style": "italic"
        },
        {
          "weight": 700,
          "style": "normal"
        },
        {
          "weight": 700,
          "style": "italic"
        },
        {
          "weight": 800,
          "style": "normal"
        },
        {
          "weight": 800,
          "style": "italic"
        },
        {
          "weight": 900,
          "style": "normal"
        },
        {
          "weight": 900,
          "style": "italic"
        }
      ]
    },
    {
      "role": "mono",
      "ref": "jetbrainsmono-nerdfont@1.0.0",
      "family": "JetBrainsMono Nerd Font",
      "classification": "monospace",
      "source": {
        "kind": "external",
        "family": "JetBrainsMono Nerd Font",
        "notes": "Nerd-Font-patched build of JetBrains Mono. Not available via Google Fonts. Download woff2/ttf files from the Nerd Fonts GitHub release and self-host, or install system-wide for terminal/IDE use.\n"
      },
      "fallbackStack": [
        "JetBrains Mono",
        "Fira Code",
        "Menlo",
        "Monaco",
        "Consolas",
        "Liberation Mono",
        "monospace"
      ],
      "availableStyles": [
        {
          "weight": 100,
          "style": "normal"
        },
        {
          "weight": 100,
          "style": "italic"
        },
        {
          "weight": 200,
          "style": "normal"
        },
        {
          "weight": 200,
          "style": "italic"
        },
        {
          "weight": 300,
          "style": "normal"
        },
        {
          "weight": 300,
          "style": "italic"
        },
        {
          "weight": 400,
          "style": "normal"
        },
        {
          "weight": 400,
          "style": "italic"
        },
        {
          "weight": 500,
          "style": "normal"
        },
        {
          "weight": 500,
          "style": "italic"
        },
        {
          "weight": 600,
          "style": "normal"
        },
        {
          "weight": 600,
          "style": "italic"
        },
        {
          "weight": 700,
          "style": "normal"
        },
        {
          "weight": 700,
          "style": "italic"
        },
        {
          "weight": 800,
          "style": "normal"
        },
        {
          "weight": 800,
          "style": "italic"
        }
      ]
    }
  ],
  "roles": {
    "colors": {
      "identity": "whatsapp-green",
      "on-identity": "whatsapp-white",
      "background": "whatsapp-white",
      "surface": "whatsapp-surface-light",
      "surface-elevated": "whatsapp-white",
      "text-primary": "whatsapp-text-on-light",
      "text-secondary": "whatsapp-text-secondary-light",
      "primary": "whatsapp-green",
      "primary-hover": "whatsapp-green-dark",
      "accent": "whatsapp-green",
      "accent-hover": "whatsapp-green-dark",
      "mark": "whatsapp-green",
      "success": "whatsapp-green",
      "warning": "whatsapp-green-300",
      "error": "whatsapp-green-dark"
    },
    "typography": {
      "display": "heading",
      "prose": "body",
      "wordmark": "heading",
      "code": "mono"
    }
  },
  "assets": [],
  "rules": [
    {
      "type": "colorChoice",
      "target": "logo.mark",
      "severity": "error",
      "rationale": "The Meta-hosted WhatsApp brand guide (meta.com/brand/resources/whatsapp/whatsapp-brand/) prohibits modifying the colors of the WhatsApp marks: \"you shouldn't modify any colors in our logos.\" The telephone-bubble mark renders in WhatsApp Green (#25D366) on light surfaces and reverses to white on the dark canvas. Recoloring into the legacy teal (#075E54), the deeper action green, or any of the scale tints violates the published policy.\n",
      "allowed": [
        "whatsapp-green",
        "whatsapp-white"
      ],
      "forbidden": [
        "whatsapp-teal-dark",
        "whatsapp-green-dark",
        "whatsapp-green-1000",
        "whatsapp-canvas-dark"
      ]
    },
    {
      "type": "forbiddenTreatment",
      "target": "logo",
      "severity": "error",
      "rationale": "The published WhatsApp Brand Resources policy enumerates these prohibitions explicitly: do not combine the WhatsApp marks with other logos, do not use WhatsApp as a verb (\"WhatsApp your friends\"), do not make the marks the most distinctive element of a third-party design, do not use phonetic variations (WhatsAp, WatsApp), do not manufacture merchandise bearing the marks. Treatments not in the approved palette violate the brand-use license.\n",
      "treatments": [
        "stretched",
        "rotated",
        "recolored",
        "drop-shadow",
        "gradient-fill",
        "on-busy-photo",
        "combined-with-other-logo",
        "used-as-verb",
        "most-distinctive-element",
        "phonetic-variation",
        "merchandise"
      ]
    },
    {
      "type": "contrastRatio",
      "target": "text-primary",
      "severity": "error",
      "rationale": "WCAG 2.1 Level AA contrast minimum for body text. WhatsApp Text on Light (#111B21) on the white canvas reads at roughly 17:1, and Text on Dark (#E9EDEF) on Canvas Dark (#0B141A) reads at roughly 16:1 — both clear AA decisively. The rule encodes the floor for any new foreground/background pairing introduced on WhatsApp-skinned surfaces.\n",
      "against": "background",
      "minRatio": 4.5,
      "standard": "WCAG-AA"
    },
    {
      "type": "contrastRatio",
      "target": "roles.colors.primary",
      "severity": "error",
      "rationale": "WhatsApp Green (#25D366) on the white canvas must remain perceptible at interactive-button sizes. Falling below 3:1 (AA-large) compromises the affordance of the primary CTA and the floating-action send button — both of which read as green-on-white in the canonical product surface.\n",
      "against": "background",
      "minRatio": 3,
      "standard": "WCAG-AA-large"
    },
    {
      "type": "variantSelection",
      "target": "logo",
      "severity": "error",
      "rationale": "On the canonical WhatsApp Canvas Dark surface (#0B141A) the telephone-bubble mark renders in white for legibility. The green-on-dark mark variant must not be used on the dark canvas where contrast against the surface drops.\n",
      "when": {
        "backgroundColorScheme": "dark"
      },
      "use": "mark-white"
    },
    {
      "type": "contextRestriction",
      "target": "roles.colors.identity",
      "severity": "error",
      "rationale": "The WhatsApp Brand Resources policy prohibits use of the WhatsApp name, marks, or signature green \"in a way that implies partnership, sponsorship, or endorsement by WhatsApp or any of its affiliates,\" on merchandise, or in the name of a competing product. Encoding the policy as a context restriction lets consumers reject impermissible placements.\n",
      "forbiddenContexts": [
        "product-of-competitor",
        "merchandise",
        "endorsement-implication",
        "sponsorship-implication"
      ]
    },
    {
      "type": "compositionConstraint",
      "target": "roles.colors.primary",
      "severity": "recommendation",
      "rationale": "WhatsApp Green reads cleanest against white, the deep blue- black dark canvas, or the very-dark text tone. Pairing the current green adjacent to the legacy teal (#075E54) creates a visible regression to the pre-2020 chrome; pairing it on the warm beige chat-bg (#E5DDD5) muddies the saturation that makes the brand recognisable.\n",
      "pairsWith": [
        "whatsapp-white",
        "whatsapp-canvas-dark",
        "whatsapp-text-on-light",
        "whatsapp-surface-light"
      ],
      "doesNotPairWith": [
        "whatsapp-teal-dark",
        "whatsapp-chat-bg-light"
      ]
    },
    {
      "type": "enumMembership",
      "target": "typography.heading.fontWeight",
      "severity": "warning",
      "rationale": "The deployed WhatsApp client surfaces Super Sans VF (a variable-axis cut) at the 400 / 500 / 600 / 700 weights for marketing headlines, chat-list titles, and primary CTAs. Substituting Inter at heavier weights drifts from the brand's practical, warm voice; lighter cuts compromise the chat-list readability at small sizes.\n",
      "allowed": [
        "400",
        "500",
        "600",
        "700"
      ]
    },
    {
      "type": "accessibilityRequirement",
      "target": "*",
      "severity": "error",
      "rationale": "WCAG 2.1 Success Criterion 1.4.3 (Contrast Minimum) — Level AA. WhatsApp's global, accessibility-conscious posture and the dual light/dark canvas commitment make AA contrast checks the default verification on any new role pairing introduced on WhatsApp-skinned surfaces.\n",
      "standard": "WCAG-AA",
      "criterion": "1.4.3"
    },
    {
      "type": "fontPairing",
      "target": "typography.display",
      "severity": "warning",
      "rationale": "WhatsApp's marketing display runs substantially larger than the body chat copy on the marketing site. A 1.4× minimum size ratio between display and prose preserves the announcement-style hierarchy the brand voice depends on when the Super Sans VF / Super Serif VF pairing reduces to the Inter substitute.\n",
      "requires": "prose",
      "minSizeRatio": 1.4
    }
  ]
}
