Named gradient · uiGradients

Cool Sky

Cool Sky is a blue gradient from uiGradients (MIT) — #2980b9 → #6dd5fa → #ffffff at 90°. Shown here interpolated in OKLab, next to the original sRGB, with the worst-case contrast for white and black text and every export.

Aa — the quick brown fox
black text · worst 4.88:1 · AA
white 1.00 failsblack 4.88 AAbanding medium

Same stops, three spaces

The source renders this in sRGB. The number is how much chroma survives at the dullest point along the line — the difference between the first bar and the others is the grey that OKLab removes.

sRGB0%
OKLab0%
OKLCH0%

Report

  • white ink: worst 1.00:1 at 100% (fails AA); black ink: worst 4.88:1 at 0% (AA) → use black text.
  • White text disappears completely at 100% (1.00:1 crossing).
  • Banding medium: ~8px bands at 1440px — add grain 17 (≈2% soft-light noise) or shorten the ramp.

Export

css
.gradient {
  background-image: linear-gradient(90deg, #2980b9 0%, #2e86be 3.57%, #338cc2 7.14%, #3892c7 10.71%, #3c98cb 14.29%, #419ed0 17.86%, #46a4d5 21.43%, #4baad9 25%, #50b0de 28.57%, #55b6e3 32.14%, #59bce7 35.71%, #5ec2ec 39.29%, #63c9f1 42.86%, #68cff5 46.43%, #6dd5fa 50%, #7ad8fb 53.57%, #86dbfb 57.14%, #91defc 60.71%, #9ce2fc 64.29%, #a7e5fc 67.86%, #b1e8fd 71.43%, #bcebfd 75%, #c6eefe 78.57%, #cff1fe 82.14%, #d9f4fe 85.71%, #e3f6fe 89.29%, #ecf9ff 92.86%, #f6fcff 96.43%, #ffffff 100%);
  background-image: linear-gradient(90deg in oklab, #2980b9 0%, #6dd5fa 50%, #ffffff 100%);
}
tailwind v4
bg-linear-to-r/oklab from-[#2980b9] via-[#6dd5fa] to-[#ffffff]
svg
<svg xmlns="http://www.w3.org/2000/svg" width="1440" height="600" viewBox="0 0 1440 600"><defs><linearGradient id="bs-gradient" gradientUnits="userSpaceOnUse" x1="0" y1="300" x2="1440" y2="300"><stop offset="0%" stop-color="#2980b9"/><stop offset="3.57%" stop-color="#2e86be"/><stop offset="7.14%" stop-color="#338cc2"/><stop offset="10.71%" stop-color="#3892c7"/><stop offset="14.29%" stop-color="#3c98cb"/><stop offset="17.86%" stop-color="#419ed0"/><stop offset="21.43%" stop-color="#46a4d5"/><stop offset="25%" stop-color="#4baad9"/><stop offset="28.57%" stop-color="#50b0de"/><stop offset="32.14%" stop-color="#55b6e3"/><stop offset="35.71%" stop-color="#59bce7"/><stop offset="39.29%" stop-color="#5ec2ec"/><stop offset="42.86%" stop-color="#63c9f1"/><stop offset="46.43%" stop-color="#68cff5"/><stop offset="50%" stop-color="#6dd5fa"/><stop offset="53.57%" stop-color="#7ad8fb"/><stop offset="57.14%" stop-color="#86dbfb"/><stop offset="60.71%" stop-color="#91defc"/><stop offset="64.29%" stop-color="#9ce2fc"/><stop offset="67.86%" stop-color="#a7e5fc"/><stop offset="71.43%" stop-color="#b1e8fd"/><stop offset="75%" stop-color="#bcebfd"/><stop offset="78.57%" stop-color="#c6eefe"/><stop offset="82.14%" stop-color="#cff1fe"/><stop offset="85.71%" stop-color="#d9f4fe"/><stop offset="89.29%" stop-color="#e3f6fe"/><stop offset="92.86%" stop-color="#ecf9ff"/><stop offset="96.43%" stop-color="#f6fcff"/><stop offset="100%" stop-color="#ffffff"/></linearGradient></defs><rect width="1440" height="600" fill="url(#bs-gradient)"/></svg>
dtcg
{
  "cool-sky": {
    "$type": "gradient",
    "$value": [
      {
        "color": {
          "colorSpace": "srgb",
          "components": [
            0.161,
            0.502,
            0.725
          ],
          "hex": "#2980b9"
        },
        "position": 0
      },
      {
        "color": {
          "colorSpace": "srgb",
          "components": [
            0.427,
            0.835,
            0.98
          ],
          "hex": "#6dd5fa"
        },
        "position": 0.5
      },
      {
        "color": {
          "colorSpace": "srgb",
          "components": [
            1,
            1,
            1
          ],
          "hex": "#ffffff"
        },
        "position": 1
      }
    ],
    "$extensions": {
      "com.brandsweets": {
        "kind": "linear",
        "css": "linear-gradient(90deg in oklab, #2980b9 0%, #6dd5fa 50%, #ffffff 100%)",
        "interpolation": "oklab",
        "angle": 90,
        "name": "Cool Sky",
        "contrast": {
          "white": {
            "ratio": 1,
            "at": 0.999,
            "passesAA": false,
            "passesAALarge": false
          },
          "black": {
            "ratio": 4.883,
            "at": 0,
            "passesAA": true,
            "passesAALarge": true
          },
          "suggestedInk": "#000000"
        }
      }
    },
    "$description": "Cool Sky (uiGradients, MIT), rendered in OKLab."
  }
}

Tagged

More blue gradients

mcpConnect your agent to the gradient engine
live endpoint

Point any MCP client at the shared gradients endpoint and your agent gets the same engine as this page — make_gradient returns CSS with the interpolation space, Tailwind v4, SVG, a PNG URL, a DTCG token and the contrast report in one call; brand_gradients derives the whole contact sheet from a brand or a palette. Read-only, no key. Every gradient is a /gradients/new/… link: open it, refine, paste it back.

endpointhttps://mcp.brandsweets.com/gradients/mcp
claude mcp add --transport http brandsweets-gradients https://mcp.brandsweets.com/gradients/mcp
try this prompt

take the Cool Sky gradient (#2980b9, #6dd5fa, #ffffff), re-interpolate it in oklch, and tell me the worst-case contrast for white text

Want the agent to remember your picks and write them into a living brand? Create a free BrandSweets workspace.

Machine-readable: gradients.md · From uiGradients (MIT) — licences