Aller au contenu

API ouverte

Cinq points de terminaison gratuits, sans inscription, sans clé, compatibles CORS. Mêmes données que le site : l'espace 24 bits, 32 258 couleurs nommées, 17 756 échantillons standard et 659 couleurs traditionnelles chinoises.

Points de terminaison en un coup d'œil

Chaque point de terminaison est compatible CORS - récupérez-le directement depuis le navigateur ou Node.js.

GET/api/color/e63946

Profil couleur : 10 formats + couleurs nommées les plus proches + correspondances sur 8 systèmes standard + correspondances traditionnelles + 6 harmonies + contraste

Paramètres

hexValeur de couleur : 3 ou 6 chiffres hexadécimaux (e63946 ou e63)

Exemple de requête

curl "https://www.yanseku.com/api/color/e63946"

Exemple de réponse

{
  "hex": "e63946",
  "formats": {
    "rgb": { "r": 230, "g": 57, "b": 70 },
    "hsl": { "h": 355.5, "s": 77.6, "l": 56.3 },
    "hsv": { "h": 355.5, "s": 75.2, "v": 90.2 },
    "cmyk": { "c": 0, "m": 75.2, "y": 69.6, "k": 9.8 },
    "xyz": { "x": 0.352, "y": 0.2019, "z": 0.0784 },
    "lab": { "L": 52.06, "a": 65.72, "b": 34.14 },
    "oklch": { "L": 0.612, "c": 0.208, "h": 22.2 },
    "webSafe": "ff3333",
    "css": { "rgb": "rgb(230, 57, 70)", "hsl": "hsl(355.5, 77.6%, 56.3%)" }
  },
  "named": {
    "closest": { "name": "Paint the Town Red", "hex": "e63045", "deltaE": 1.34, "exact": false },
    "nearest": [ { "name": "Red Radish", "hex": "ee3344", "deltaE": 1.36, "exact": false } ]
  },
  "standards": [
    { "system": "ncs", "systemName": "NCS (Natural Color System)", "code": "NCS S 0570-Y90R", "name": "NCS S 0570-Y90R", "hex": "e6373f", "deltaE": 1.69, "exact": false },
    { "system": "munsell", "systemName": "Munsell (Re-renotation)", "code": "7.5R 6/16", "name": "7.5R 6/16", "hex": "dd3743", "deltaE": 2.02, "exact": false }
  ],
  "traditional": [
    { "name": "火红", "hex": "ff2d51", "cat": "红", "deltaE": 4.88, "exact": false },
    { "name": "银红", "hex": "f05654", "cat": "红", "deltaE": 5.89, "exact": false }
  ],
  "harmony": [
    { "type": "complementary", "colors": ["e63946", "39e6d9"] },
    { "type": "split-complementary", "colors": ["e63946", "39e683", "399de6"] }
  ],
  "contrast": {
    "onWhite": { "ratio": 4.17, "levels": { "aaNormal": false, "aaLarge": true, "aaaNormal": false, "aaaLarge": false } },
    "onBlack": { "ratio": 5.04, "levels": { "aaNormal": true, "aaLarge": true, "aaaNormal": false, "aaaLarge": true } },
    "bestText": "#000000"
  }
}

GET/api/scheme?hex=e63946&mode=triadic

Schéma d'harmonie : six règles autour de votre couleur de base

Paramètres

hexValeur de couleur : 3 ou 6 chiffres hexadécimaux (e63946 ou e63)
modeMode d'harmonie, par défaut complémentaire. Options : complémentaire / split-complémentaire / triadique / tétradique / analogue / monochromatique

Exemple de requête

curl "https://www.yanseku.com/api/scheme?hex=e63946&mode=triadic"

Exemple de réponse

{
  "hex": "e63946",
  "mode": "triadic",
  "count": 3,
  "colors": ["e63946", "46e639", "3946e6"]
}

GET/api/contrast?fg=ffffff&bg=e63946

Vérification de contraste : ratio WCAG + niveaux AA/AAA + meilleure couleur de texte

Paramètres

fgHexadécimal du premier plan, ex. ffffff
bgHexadécimal de l'arrière-plan, ex. e63946

Exemple de requête

curl "https://www.yanseku.com/api/contrast?fg=ffffff&bg=e63946"

Exemple de réponse

{
  "fg": "ffffff",
  "bg": "e63946",
  "ratio": 4.17,
  "label": "AA Large",
  "levels": { "aaNormal": false, "aaLarge": true, "aaaNormal": false, "aaaLarge": false },
  "bestText": "#000000"
}

GET/api/random?count=5

Couleurs aléatoires issues du pool de noms sélectionné, jusqu'à 10

Paramètres

countNombre de couleurs, 1-10, par défaut 1

Exemple de requête

curl "https://www.yanseku.com/api/random?count=5"

Exemple de réponse

{
  "count": 3,
  "colors": [
    { "name": "Sea Foam Green", "hex": "c2e4d0" },
    { "name": "Deep Koamaru", "hex": "333366" },
    { "name": "Laser Lemon", "hex": "ffff66" }
  ]
}

Téléchargements de données ouvertes

Au-delà de l'API - emportez l'ensemble de la bibliothèque avec vous. Format CSV (UTF-8, ligne d'en-tête), prêt pour l'analyse de données, l'apprentissage automatique et la recherche sur les systèmes de design. Les noms des champs figurent dans l'en-tête ; les jeux de données sont mis à jour à chaque build.

Les noms de couleurs proviennent de meodai/color-names (MIT) et de l'enquête sur les couleurs xkcd ; les couleurs de marques proviennent des données ouvertes de simple-icons ; les couleurs traditionnelles chinoises proviennent de zerosoul/chinese-colors et de zhongguose.com ; les valeurs des échantillons standard sont des conversions simulées par ordinateur - vérifiez-les sur des échantillons physiques pour la production. Respectez les licences amont respectives.

Paquets open-source

Le moteur et les données du site sont proposés sous forme de bibliothèques open-source - capables de fonctionner hors ligne, prêtes pour la production. Trois paquets npm couvrent le moteur, les jeux de données et un serveur MCP, plus un port Python et un jeu de données HuggingFace.

@yanseku/color

Moteur de couleurs : conversions 10 formats, CIEDE2000, APCA, mélange OKLab, 6 règles d'harmonie, simulation de vision - mathématiques pures, zéro dépendance

npm install @yanseku/color
@yanseku/data

Jeux de données : 17 corpus, plus de 85 000 entrées (noms de couleurs, échantillons standard, traditionnelles, japonaises, marques...), JSON avec LAB pré-calculé

npm install @yanseku/data
@yanseku/mcp

Serveur MCP : connectez l'ensemble de la base de données de couleurs à Claude / Cursor - 7 outils hors ligne

npm install -g @yanseku/mcp
yanseku (Python)

Port Python : pip install et c'est parti - mêmes mathématiques D65 et deltaE2000, 659 histoires traditionnelles incluses

pip install yanseku

Configuration MCP (claude_desktop_config.json)

{
  "mcpServers": {
    "yanseku": {
      "url": "https://www.yanseku.com/api/mcp"
    }
  }
}

Configuration MCP - locale (npx, hors ligne)

{
  "mcpServers": {
    "yanseku": {
      "command": "npx",
      "args": ["-y", "@yanseku/mcp"]
    }
  }
}

Comparaison des capacités avec d'autres bibliothèques de couleurs

Les bibliothèques courantes ne font que des calculs mathématiques ; la couche unique de Yanseku est les données : recherche de couleurs nommées, correspondance d'échantillons officiels et histoires de couleurs traditionnelles.

CapacitéYansekucolorjs.ioculorichroma-js
Conversions d'espaces colorimétriques (10 formats)✔✔✔
Différence de couleur CIEDE2000✔✔✔
Contraste perceptuel APCA✔✘✘
Simulation de la vision des couleurs (8 types)✔✘✘
Recherche de couleur nommée (32 258)✔ 32,258✘✘
Correspondance d'échantillons officiels (12 systèmes)✔ 17,756✘✘
Histoires de couleurs traditionnelles chinoises (659)✔ 659✘✘
Règles d'harmonie perceptuelle✔ 6 rules✘✔ palette
Serveur MCP (hors ligne)✔ remote + offline✘✘
Port Python✔✘✘
Jeu de données complet CSV / HF✔ 17 sets✘✘

Où l'obtenir: npm (@yanseku/color · @yanseku/data · @yanseku/mcp) · PyPI (yanseku) · HuggingFace (yanseku/chinese-traditional-colors)

source : standard = échantillon officiel ; communauté = couleur nommée par la communauté ; traditionnel = couleur traditionnelle chinoise

Endpoint public gratuit - soyez raisonnable (≤ 60 req/min suggéré).