Suisai
Download

Suisai水彩

A color toolbox for macOS. Sample colors from anywhere on screen or out of a picture, build palettes and harmonies from them, and mix color that behaves like paint rather than light.

macOS 14 Sonoma or later · Universal · US$19.99 one-time

What it does
01

Sample from anywhere

Pick a color from any pixel on any display. Suisai samples through the system loupe, so it needs no Screen Recording permission. It asks for no permissions at all.

02

Fill the space between

Sample two colors and Suisai fills the space between them. Seven harmony modes work from one or two seeds, and ramps step through sRGB or OKLab, whichever reads more evenly.

03

Palettes out of pictures

Open a picture and take up to sixteen colors from it. Dominant reads what the frame is mostly made of, Vibrant the saturated colors that still cover ground, and Spread the colors furthest apart, so a harbor photograph isn't five blues. The picture is read into memory and never stored: saving keeps the colors, never the picture.

04

A bench for mixing

Lay colors side by side on the Bench and read ΔH, ΔL and ΔE between neighbors. Mixing is spectral rather than an average of two RGB values, so blue and yellow make green.

05

Out in the format you work in

Copy in any of forty-one formats across web, Apple, Android, Java, .NET and OpenGL. Export the whole palette as code and data (CSS, SCSS, Sass, Less, JSON, XML, HTML, Markdown, SVG), as a PNG, or as a palette file another app reads: Adobe Swatch Exchange, GIMP palette, Apple color list.

06

The palettes you already have

Point Suisai at the folders your palettes live in and it reads them where they sit. Adobe Swatch Exchange, Photoshop swatches, GIMP palettes and Apple color lists, searchable in one window.

End to end

What a job looks like

The parts are above. This is what they are for: four pieces of work, start to finish, each of them entirely on your own Mac.

  1. Building one from nothing

    1. Start an empty palette; it offers four ways in
    2. Paste values straight down the list: hex, rgb() or oklch()
    3. Or take them off the screen one at a time with the dropper
    4. Every color is named, and one you already have is refused
    5. Drag to reorder, and edit any swatch in place
  2. A color you saw somewhere

    1. Take it off the screen with a keystroke, from any app
    2. Build a harmony or a ramp on it
    3. Adjust the seeds until it sits right
    4. Save it as an .ase
    5. Drag it into Affinity, Illustrator or Photoshop
  3. A palette out of a photograph

    1. Drop the picture in; it is read in memory and never stored
    2. Take the colors three ways and keep the reading you like
    3. Click the picture to pin anything the reading missed
    4. Change the count without losing the pins you placed
    5. Save the colors, never the photograph
  4. A palette somebody sent you

    1. Open their .ase, .aco, .gpl or .clr where it sits
    2. Read every color, its name and its values
    3. Install it into the Mac color picker
    4. It appears in the color panel of every app on the machine
    5. Export the same palette as CSS custom properties
  5. Deciding between two of them

    1. Press B over any swatch to send it to the Bench
    2. Read the difference in the gutter: hue, lightness and ΔE
    3. Open a mix well between two and sweep the ratio across
    4. Mixing is spectral, so blue and yellow make green
    5. Keep the mix as its own column, or send it to the palette
  6. Straight into code

    1. Pick a color, or open a palette you already have
    2. Step a ramp through OKLab so the middle does not bunch
    3. Set the format once, in Settings
    4. Click any swatch, or drag it into the file
    5. Export the set as CSS, SCSS, JSON or Swift
Nothing leaves your machine

Privacy first, no exceptions

Too many applications and services track what we do these days, even the ones we pay for. This is, to me, unacceptable. So Suisai is built the other way: I don't need to know how you use it, I don't need to know what applications you interact with, and I certainly don't need to know what websites you visit.

Suisai runs sandboxed, with the hardened runtime on. It has no analytics, no tracking, and requires no account. Any images you load in for color extraction are read locally. Nothing is uploaded. No color you sample is recorded anywhere except in your own palettes.

Suisai contains no crash reporter and sends nothing itself. Crash reporting on macOS is Apple's, and what reaches me depends on which version you have and what you have switched on. The privacy page has the detail.

The one and only thing the app does over the network is check for updates, and only in the direct purchase version. Suisai has no permission to reach the network itself, so a separate sandboxed helper makes a single request to check the latest version. The App Store version doesn't even need to do that.

If you want to tell me how you use the app, or how it has helped your work, I would love to hear it. Ideas for improvement too. But that is yours to offer, not mine to collect.

Export

Color, as your code wants it

One palette, the same five colors, written out four ways. Nothing here was retyped.

CSS custom properties
/* indigo-ramp */
:root {
  --tristesse: #080d1c;
  --hắi-sư-black: #181e2e;
  --blue-coal: #2a3141;
  --rhino: #3e4555;
  --storm-rising: #525969;
}
JSON
{
  "name": "indigo-ramp",
  "colors": [
    {
      "name": "Tristesse",
      "hex": "#080d1c",
      "rgb": [8, 13, 28],
      "hsl": [225, 56, 7],
      "cmyk": [82, 74, 47, 72],
      "alpha": 1.00
    },
    …
  ]
}
Markdown
# indigo-ramp

| Name | Hex | RGB | CMYK |
| --- | --- | --- | --- |
| Tristesse | `#080d1c` | 8 13 28 | 82 74 47 72 |
| Hắi Sư Black | `#181e2e` | 24 30 46 | 87 75 39 60 |
| Blue Coal | `#2a3141` | 42 49 65 | 86 73 43 40 |
| Rhino | `#3e4555` | 62 69 85 | 81 69 44 23 |
| Storm Rising | `#525969` | 82 89 105 | 74 61 40 11 |
One swatch, copied in Swift
NSColor(srgbRed: 0.03, green: 0.05, blue: 0.11, alpha: 1.00)

Names come from a list of 31,914, matched in OKLab, and are made safe as identifiers. CMYK is converted through the profile you chose in Settings, so it's the same number your print workflow will see.

Requirements
macOS14 Sonoma or later
ArchitectureUniversal (Apple silicon and Intel)
PermissionsNone
NetworkUpdate checks only, and only in the direct download
LanguagesEnglish (British) and English (US)