Générateur de couleurs analogues
Indiquez une couleur de base et un angle pour obtenir ses deux voisines sur le cercle chromatique : #3366cc avec 30 degrés donne #33b2cc et #4c33cc, à saturation et luminosité égales. Une famille de trois teintes harmonieuse pour vos interfaces et vos marques. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Exemple résolu
- Couleur
- #3366cc
- Angle de décalage
- 30
- Nuancier
- #33b2cc, #3366cc, #4c33cc
Les couleurs analogues se situent côte à côte sur le cercle des teintes : elles partagent donc une famille de sous-tons et paraissent naturellement harmonieuses dans les interfaces, les systèmes de marque et l'illustration. Ce générateur prend une couleur de base hex CSS et un angle positif de décalage de teinte en degrés, convertit la base en HSL, puis construit les deux voisines en soustrayant et en ajoutant cet angle tout en gardant saturation et luminosité fixes. Le résultat est une palette de trois échantillons — moins, base et plus — renvoyée en hex, en entiers RGB, en composantes HSL et en un tableau palette prêt à l'emploi. La pratique classique du design utilise trente degrés pour une famille resserrée et des pas plus grands quand vous voulez davantage de séparation sans sauter au contraste complémentaire. Les codes hex invalides et les angles hors plage échouent avec une erreur de validation claire au lieu d'inventer une palette.
Comment fonctionnent les décalages de teinte analogues
Partez d'une couleur de base écrite comme chaîne hex CSS, par exemple #3366cc ou la forme courte #36c. Le moteur développe l'hex à trois chiffres, analyse les canaux rouge, vert et bleu dans la plage de zéro à deux cent cinquante-cinq, et convertit ce triplet RGB en HSL avec les formules standard CSS et W3C, de sorte que la teinte vit en degrés sur un cercle de zéro à trois cent soixante tandis que saturation et luminosité sont des pourcentages.
Le paramètre angle est un nombre positif de degrés, strictement supérieur à zéro et au plus égal à cent quatre-vingts. Les deux voisines analogues sont formées en déplaçant la teinte à teinte de base moins l'angle et teinte de base plus l'angle, avec retour par zéro quand le parcours franchit le bord rouge du cercle, et en laissant saturation et luminosité intactes afin que la famille reste dans la même bande de chromie et de valeur.
Chaque triplet HSL résultant est reconverti en RGB entier avec le même chemin hue-to-rgb utilisé par les modules couleur des navigateurs, puis formaté en hex minuscule, en chaîne rgb() et en chaîne hsl().
Ce que vous envoyez et ce que vous recevez
Envoyez un champ color obligatoire comme chaîne hex et un champ angle obligatoire comme nombre fini de degrés. Les formes valides sont trois ou six chiffres hexadécimaux avec un dièse optionnel en tête ; la casse est ignorée et la sortie se normalise toujours en hex à six chiffres minuscules avec dièse.
L'angle doit être supérieur à zéro et au plus égal à cent quatre-vingts afin que les deux voisines restent distinctes et ne se confondent pas en un basculement de cent quatre-vingts degrés de type complémentaire, qui relèverait d'une autre intention d'harmonie. Les vérifications typiques incluent un bleu moyen #3366cc avec un angle de trente degrés pour une famille froide classique, le rouge pur #ff0000 avec trente degrés pour des voisins orange chaud et magenta, et un hex court à trois chiffres pour confirmer l'expansion.
Où les palettes analogues apparaissent dans le travail réel
Les designers produit construisent des états de composants, des séries de graphiques et des dégradés de héros marketing qui exigent des teintes parentes sans la forte tension des paires complémentaires ; un angle fixe garde les jetons reproductibles d'un système de design à l'autre. Les équipes de marque dérivent des couleurs secondaires et tertiaires à partir d'un hex primaire quand le guide de style ne publie qu'un seul échantillon officiel mais veut quand même une famille maîtrisée pour l'illustration et les gabarits sociaux.
Les ingénieurs frontend génèrent des propriétés personnalisées CSS et des cartes de jetons de style Tailwind à partir d'une seule couleur de départ, afin que les thèmes clair et sombre restent sur la même colonne de teinte pendant que seule la luminosité change ailleurs. Les auteurs de visualisation de données attribuent des couleurs de séries qui restent distinguables mais cohésives pour les graphiques catégoriels où les chocs complémentaires suggéreraient une opposition plutôt qu'un regroupement.
Les formateurs en cours et ateliers enseignent la théorie des couleurs avec des exemples en direct : les étudiants saisissent leur hex préféré, essaient trente contre quarante-cinq contre soixante degrés, et voient immédiatement jusqu'où la famille parcourt le cercle.
Si vous avez ensuite besoin de schémas complémentaires ou triadiques, d'une simple conversion HSL vers RGB, d'une recherche de couleur CSS nommée la plus proche ou de vérifications de contraste WCAG, traitez-les comme des intentions de recherche et des pages d'atterrissage distinctes plutôt que de surcharger cette page de générateur de couleurs analogues.
Cas d’usage
Jetons de marque secondaires et tertiaires
Dérivez deux teintes de marque voisines à partir d'un hex primaire et d'un angle fixe afin que les guides de style et les systèmes de design restent cohérents entre le marketing et l'interface produit.
Palettes de thèmes d'interface et de séries graphiques
Générez des variables CSS cohésives ou des couleurs de séries graphiques à partir d'une seule amorce, sans la tension de fort contraste des paires complémentaires.
Exercices de théorie des couleurs et ateliers
Laissez les étudiants saisir un hex et essayer des décalages de 30°, 45° et 60° pour voir comment les familles analogues parcourent le cercle avec saturation et luminosité fixes.
Questions fréquentes
Qu'est-ce qu'une palette de couleurs analogues ?
Une palette analogue réunit trois couleurs (ou plus) voisines sur le cercle des teintes. Cet outil construit exactement deux voisines de votre base en décalant la teinte de ±angle tout en gardant saturation et luminosité fixes.
Quel angle dois-je utiliser ?
Trente degrés est la famille resserrée classique de nombreux systèmes de design. Des valeurs plus grandes comme 45 ou 60 ouvrent davantage de séparation ; la plage acceptée va de plus de 0 à au plus 180 degrés.
Quels formats de couleur sont acceptés ?
Uniquement l'hex CSS : #rgb ou #rrggbb, avec ou sans dièse en tête.
Le générateur modifie-t-il la saturation ou la luminosité ?
Non. Seule la teinte se déplace de ±angle. La saturation et la luminosité de la base sont préservées sur les deux voisines afin que la famille reste dans la même bande de chromie et de valeur.
Pourquoi l’angle ne peut-il pas dépasser 180 degrés ?
Au-delà de 180 degrés, les deux voisines se croiseraient de l’autre côté du cercle et l’on passerait à une harmonie complémentaire, qui répond à une autre intention. L’angle doit donc être supérieur à zéro et au plus égal à 180.
Outils associés
Pour les développeurs — accès API
Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.
Endpoint
Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.
Appeler depuis votre stack
curl -X POST https://api.kit.forhosting.com/color/analogous \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"color":"#3366cc","angle":30}'const res = await fetch("https://api.kit.forhosting.com/color/analogous", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"color": "#3366cc",
"angle": 30
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/color/analogous",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"color": "#3366cc",
"angle": 30
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/color/analogous", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"color":"#3366cc","angle":30}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"color":"#3366cc","angle":30}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/color/analogous", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemple de requête
{
"color": "#3366cc",
"angle": 30
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "color.analogous",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |
Notes techniques
Comment fonctionnent les décalages de teinte analogues
La réponse reprend aussi la couleur de base nettoyée, l'angle numérique, des échantillons nommés pour base, analogous_minus et analogous_plus, un tableau palette de trois éléments ordonné du voisin froid à la base puis au voisin chaud selon le sens du décalage, et un champ formula compact pour la documentation et le débogage. Le pipeline est de l'arithmétique flottante pure et déterministe : pas de graines aléatoires, pas d'horodatages, pas d'appels réseau ni de dérive de modèle, donc des entrées identiques produisent toujours un JSON identique. Les formes hex avec alpha, les caractères non hexadécimaux, la couleur manquante, l'angle manquant, NaN, Infinity, l'angle nul et les angles supérieurs à cent quatre-vingts sont rejetés avec invalid_input.
Ce que vous envoyez et ce que vous recevez
Le champ color accepte aussi les alias hex et base, de sorte qu'un JSON de thème existant qui stocke des clés hex ou base peut appeler le même contrat sans étape de renommage. En cas de succès, la charge utile inclut color comme hex de base normalisé, angle nettoyé pour un JSON stable, base avec les rôles hex r g b h s l rgb et hsl, analogous_minus et analogous_plus avec la même forme d'échantillon, palette comme trois chaînes hex, palette_hsl comme trois objets h s l, et formula décrivant le chemin RGB vers HSL puis décalage. La tarification des appels API réussis est la base publiée de $0.002 par item ; les échecs de validation ne consomment pas de solde prépayé.
Où les palettes analogues apparaissent dans le travail réel
Comme cette capacité est un moteur parse pur, la tarification API est la base publiée de $0.002 par item réussi et la validation en échec ne consomme pas de solde.
Questions techniques
Combien cela coûte-t-il ?
L'outil navigateur est gratuit et s'exécute localement. Les requêtes API utilisent le solde prépayé KIT à $0.002 par item réussi ; les entrées invalides ne sont pas facturées.