API terbuka
Lima endpoint gratis, tanpa pendaftaran, tanpa kunci, mendukung CORS. Data yang sama dengan situs: ruang 24-bit, 32.258 warna bernama, 17.756 contoh standar, dan 659 warna tradisional Tiongkok.
Endpoint sekilas
Setiap endpoint mendukung CORS - ambil langsung dari browser atau Node.js.
GET/api/search?q=crimson&limit=8
Cari warna berdasarkan nama, kode standar, nama tradisional, atau HEX
Parameter
| q | Kata kunci kueri: nilai HEX (ff0000), nama warna (crimson) atau kode standar (RAL 3020) |
| limit | Jumlah hasil maksimum, default 12, dibatasi hingga 50 |
Contoh permintaan
curl "https://www.yanseku.com/api/search?q=crimson&limit=8"
Pengambilan langsung berfungsi di browser (CORS diaktifkan).
Contoh respons
{
"query": "crimson",
"results": [
{ "name": "BM 1299 Crimson", "hex": "b1625b", "source": "standard", "system": "benjamin_moore", "code": "BM 1299" },
{ "name": "crimson", "hex": "dc143c", "source": "standard", "system": "css_named", "code": "crimson" }
]
}GET/api/color/e63946
Profil warna: 10 format + warna terdekat bernama + kecocokan di 8 sistem standar + kecocokan warna tradisional + 6 harmoni + kontras
Parameter
| hex | Nilai warna: 3 atau 6 digit heksadesimal (e63946 atau e63) |
Contoh permintaan
curl "https://www.yanseku.com/api/color/e63946"
Contoh respons
{
"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
Skema harmoni: enam aturan di sekitar warna dasar Anda
Parameter
| hex | Nilai warna: 3 atau 6 digit heksadesimal (e63946 atau e63) |
| mode | Mode harmoni, default komplementer. Opsi: komplementer / split-komplementer / triadik / tetradik / analog / monokromatik |
Contoh permintaan
curl "https://www.yanseku.com/api/scheme?hex=e63946&mode=triadic"
Contoh respons
{
"hex": "e63946",
"mode": "triadic",
"count": 3,
"colors": ["e63946", "46e639", "3946e6"]
}GET/api/contrast?fg=ffffff&bg=e63946
Pemeriksaan kontras: rasio WCAG + level AA/AAA + warna teks terbaik
Parameter
| fg | Heksadesimal latar depan, contoh ffffff |
| bg | Heksadesimal latar belakang, contoh e63946 |
Contoh permintaan
curl "https://www.yanseku.com/api/contrast?fg=ffffff&bg=e63946"
Contoh respons
{
"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
Warna acak dari kumpulan nama yang dikurasi, hingga 10 buah
Parameter
| count | Jumlah warna, 1-10, default 1 |
Contoh permintaan
curl "https://www.yanseku.com/api/random?count=5"
Contoh respons
{
"count": 3,
"colors": [
{ "name": "Sea Foam Green", "hex": "c2e4d0" },
{ "name": "Deep Koamaru", "hex": "333366" },
{ "name": "Laser Lemon", "hex": "ffff66" }
]
}Unduhan data terbuka
Di luar API - bawa seluruh 颜色库 bersama Anda. Format CSV (UTF-8, baris header), siap untuk analisis data, pembelajaran mesin, dan penelitian sistem desain. Nama bidang ada di header; dataset diperbarui setiap build.
Nama warna berasal dari meodai/color-names (MIT) dan xkcd Color Survey; warna merek dari data terbuka simple-icons; warna tradisional Tiongkok dari zerosoul/chinese-colors dan zhongguose.com; nilai sampel standar adalah konversi simulasi komputer - verifikasi terhadap sampel fisik untuk produksi. Ikuti lisensi upstream masing-masing.
Paket sumber terbuka
Mesin dan data situs disajikan sebagai pustaka sumber terbuka - mampu bekerja secara offline, siap produksi. Tiga paket npm mencakup mesin, kumpulan data, dan Server MCP, ditambah port Python serta kumpulan data HuggingFace.
Mesin warna: konversi 10 format, CIEDE2000, APCA, pencampuran OKLab, 6 aturan harmoni, simulasi penglihatan - murni matematika, tanpa dependensi
npm install @yanseku/color
Kumpulan data: 17 korpus, lebih dari 85.000 entri (warna bernama, sampel standar, tradisional, Jepang, merek...), JSON dengan LAB yang telah dihitung sebelumnya
npm install @yanseku/data
Server MCP: hubungkan seluruh color database ke Claude / Cursor - 7 alat offline
npm install -g @yanseku/mcp
Port Python: instal via pip dan gunakan - matematika D65 dan deltaE2000 yang sama, 659 cerita tradisional disertakan
pip install yanseku
Konfigurasi MCP (claude_desktop_config.json)
{
"mcpServers": {
"yanseku": {
"url": "https://www.yanseku.com/api/mcp"
}
}
}Konfigurasi MCP - lokal (npx, offline)
{
"mcpServers": {
"yanseku": {
"command": "npx",
"args": ["-y", "@yanseku/mcp"]
}
}
}Perbandingan kemampuan dengan pustaka warna lainnya
Kebanyakan color library hanya melakukan konversi matematis; yang unik dari Yanseku adalah 'lapisan data': pencarian warna bernama, penyelarasan kartu warna resmi, dan referensi warna tradisional.
| Kemampuan | Yanseku | colorjs.io | culori | chroma-js |
|---|---|---|---|---|
| Konversi ruang warna (10 format) | ✔ | ✔ | ✔ | |
| Cacat Warna CIEDE2000 | ✔ | ✔ | ✔ | |
| Benchmark Kontras Persepsi APCA | ✔ | ✘ | ✘ | |
| Simulasi cacat penglihatan (Tipe 8) | ✔ | ✘ | ✘ | |
| Pencarian Warna Bernama (32.258) | ✔ 32,258 | ✘ | ✘ | |
| Penyesuaian Kartu Warna Resmi (12 Sistem) | ✔ 17,756 | ✘ | ✘ | |
| Kisah Warna Tradisional Tiongkok (659) | ✔ 659 | ✘ | ✘ | |
| Aturan Harmoni Persepsi | ✔ 6 rules | ✘ | ✔ palette | |
| Server MCP (Luring) | ✔ remote + offline | ✘ | ✘ | |
| Porting Python | ✔ | ✘ | ✘ | |
| Seluruh 颜色库 CSV / Dataset HF | ✔ 17 sets | ✘ | ✘ |
Saluran Rilis: npm (@yanseku/color · @yanseku/data · @yanseku/mcp) · PyPI (yanseku) · HuggingFace (yanseku/chinese-traditional-colors)
sumber: standard = sampel warna resmi; community = warna bernama komunitas; traditional = 颜色库 warna tradisional Tiongkok
Endpoint publik gratis - harap bijak (disarankan ≤ 60 permintaan/menit).