Stängde färgsystemet vid 28 dokumenterade färger med en linter som fäller ett värde som målas men inte är dokumenterat, dokumenteras men inte målas, är felmätt, skrivs om som en literal eller ligger inom ett perceptuellt avstånd på 0,02 från en befintlig färg.
Arbetet utfört: augusti 2026
28 färger, i ett system som en linter håller stängt
Situation. Färg på en webbplats med ett mörkt standardtema, ett ljust tema, en utskriftsstilmall, ett läge för tvingade färger och ett illustrerat varumärke förblir inte en liten uppsättning av sig själv. Den hade redan börjat glida på det sätt den alltid gör: två stavningar av samma färg som låg så nära varandra att ingen kunde skilja dem åt, värden som skrivits in på nytt som literaler bredvid de tokens som definierade dem, och dokumenterade färger som ingenting ritade ut.
Uppgift. Paletten måste bli en sluten uppsättning med ett angivet tröskelvärde för särskiljbarhet, och något måste se till att den förblev sluten.
Handling. Tjugoåtta färger, var och en dokumenterad med det kontrastförhållande den uppmäts till på den yta där den förekommer, och elva varumärkesvärden deklarerade en gång som tokens. Tröskelvärdet är numeriskt snarare än redaktionellt: två färger som ligger närmare varandra än ett perceptuellt avstånd på 0,02 i en likformig färgrymd är en färg med två stavningar. Lintern fallerar på fem olika sätt — ett värde som ritas ut men inte är dokumenterat, som är dokumenterat men inte ritas ut, som är registrerat med fel förhållande, som ligger inom tröskelvärdet från ett som redan finns, eller ett varumärkesvärde som stavats om som en literal. Den hittade två direkt: en temafärg som fanns i två stavningar med 0,018 emellan, och en bakgrundsfärg som stod i stället för en vägg den låg 0,021 ifrån. Transparens uttrycks med relativ färgsyntax i stället för med blandningsfunktionen, uttryckligen för att kontrollen inte kan se igenom en blandning, och en palettkontroll som går att kringgå är ingen kontroll. Regeln som hör till är kort: ändra en token snarare än en regel, lägg bara till en färg när ingen passar, och sänk aldrig ett dokumenterat kontrastförhållande för att få en design att fungera.
Resultat. Paletten är en sluten, uppmätt uppsättning som inte kan växa i det tysta, och de två nästan identiska stavningarna som föranledde arbetet är borta. Det är en begränsning som ibland säger nej — en design som vill ha en något annorlunda blå nyans måste ta den som finns eller argumentera för en tjugonionde färg, och det argumentet måste innehålla kontrastförhållandet.
Se tillbaka på Ersatte 27 renderade teckenstorlekar, vars närmaste grannar låg 0,6 % från varandra, med en Major Third‑skala i sex steg, och skrev lintern som fäller den tjugoåttonde. Läs vidare: Upptäckte att det ljusa temat hade saknat ett helsidesöverlägg sedan den dag det skrevs, genom att kräva att båda teman målar varje skiktad yta med samma antal skikt. Eller ta en titt på hela portföljen.
En del av en längre historik — och den finns i sin helhet här.
Varje post är skriven på samma sätt: situationen, uppgiften, vad vi gjorde och vad som förändrades.