# Закрила систему кольорів на 28 задокументованих кольорах із лінтером, який валить значення, намальоване але незадокументоване, задокументоване але ненамальоване, хибно виміряне, переписане як літерал або в межах перцептивної відстані 0,02 від уже наявного.

серпень 2026

**Ситуація.** Колір на сайті з темною темою за усталеним вибором, світлою темою, таблицею стилів для друку, режимом примусових кольорів та ілюстрованим брендом сам собою не лишається малим набором. Він уже почав розходитися так, як завжди: два написання того самого кольору стояли досить близько, щоб ніхто не міг їх розрізнити, значення були перевведені як літерали поруч із токенами, що їх визначали, а задокументовані кольори не фарбували нічого.

**Завдання.** Палітра мала стати замкненим набором із оголошеним порогом розрізненності, і щось мало примусово тримати цю замкненість.

**Дія.** Двадцять вісім кольорів, кожен задокументований із коефіцієнтом контрасту, який він показує на поверхні, де з'являється, та одинадцять брендових значень, оголошених один раз як токени. Поріг є числовим, а не редакційним: два кольори, ближчі за перцептивну відстань 0,02 в однорідному колірному просторі, є одним кольором із двома написаннями. Лінтер валить збирання п'ятьма різними способами — значення пофарбоване, але незадокументоване; задокументоване, але непофарбоване; записане з хибним коефіцієнтом; у межах порога від того, що вже є; або брендове значення, переписане як літерал. Він одразу знайшов два: колір теми, що існував у двох написаннях на відстані 0,018, і колір тла, що заміняв стіну, від якої стояв на 0,021. Прозорість використовує відносний колірний синтаксис, а не функцію змішування, саме тому, що вартовий не бачить крізь суміш, а палітрний вартовий, якого можна обійти, не є вартовим. Правило, що йде з цим, коротке: змінюйте токен, а не правило, додавайте колір лише тоді, коли жоден не пасує, і ніколи не знижуйте задокументований коефіцієнт, щоб дизайн запрацював.

**Результат.** Палітра є замкненим виміряним набором, що не може тихо зростати, а два майже однакові написання, які до цього спонукали, зникли. Це обмеження, що подеколи каже ні: дизайн, який хоче трохи інший синій, мусить узяти той, що існує, або обґрунтувати двадцять дев'ятий колір, і це обґрунтування має містити коефіцієнт.

---

- Роль: Інженер дизайн‑систем
- Категорії: [Frontend‑розробка](https://engineer.company/uk/categories/frontend/), [Автоматизація та CI/CD](https://engineer.company/uk/categories/automation/), [Тестування та QA](https://engineer.company/uk/categories/testing/), [Дизайн‑системи та UI](https://engineer.company/uk/categories/design-systems/), [UX / UI‑дизайн](https://engineer.company/uk/categories/ux-ui/), [Документація](https://engineer.company/uk/categories/documentation/)
- Послуги: [Frontend‑розробка](https://engineer.company/uk/services/frontend-development/), [UI/UX‑дизайн та дизайн‑системи](https://engineer.company/uk/services/ui-ux-design/), [Бренд, маркетинг та SEO](https://engineer.company/uk/services/brand-marketing/)

<https://engineer.company/uk/portfolio/closed-the-colour-system-at-28-colours-133/>
