Générez une palette aléatoire reproductible avec une graine
Créez une palette reproductible à partir d'un nombre, d'une graine textuelle et d'un mode visuel facultatif.
Lancer gratuitement
Des entrées identiques produisent toujours les mêmes couleurs hex, RGB et HSL dans le même ordre. Cette propriété est précieuse lorsqu'une création doit être reconstituée plus tard, plutôt que sembler aléatoire une seule fois. Choisissez le mode aléatoire pour une plage étendue, pastel pour des tons plus doux ou vif pour une saturation accentuée. Aucun état enregistré, service réseau, horloge ni source aléatoire changeante n'intervient.
Transformez une graine mémorable en palette reproductible
Les générateurs de couleurs aléatoires ordinaires sont pratiques jusqu'au moment où vous actualisez la page, rouvrez un projet ou devez permettre à un collègue de reproduire exactement le résultat obtenu. Ce générateur utilise la graine comme identité de la palette. Indiquez un nombre d'au moins 1 et toute graine non vide, par exemple le nom d'une campagne, un code de projet, l'étiquette d'un jeu de données ou le nom d'un scénario de test. L'outil convertit ce texte en un état numérique stable, puis fait avancer un générateur déterministe pour chaque composante chromatique. Des valeurs identiques pour le nombre, la graine et l'harmonie renvoient donc toujours la même palette ordonnée. La réponse contient les couleurs hexadécimales destinées au CSS, les canaux rouge, vert et bleu séparés pour les traitements programmatiques, ainsi que les valeurs de teinte, saturation et luminosité utiles aux réglages et contrôles. La comparaison des graines est exacte : majuscules, espaces, ponctuation et caractères finaux comptent. Si une palette joue un rôle important dans votre flux, conservez ses champs d'entrée avec elle. Vous pourrez ainsi la régénérer sans maintenir une table de couleurs distincte, tout en disposant de valeurs explicites dès qu'un système en a besoin.
Choisissez un rendu aléatoire, pastel ou vif
Le champ d'harmonie facultatif détermine la plage visuelle sans compromettre le caractère déterministe. Le mode aléatoire, choisi par défaut, puise des teintes sur l'ensemble du cercle chromatique et emploie des plages larges et pratiques de saturation et de luminosité. Il offre des résultats variés en évitant seulement les extrêmes les plus délavés ou presque noirs. Le mode pastel conserve toute la plage de teintes, mais augmente la luminosité et applique une saturation modérée. Il produit des nuances douces adaptées aux arrière-plans, étiquettes, graphiques, illustrations et accents discrets d'interface. Le mode vif augmente la saturation et maintient la luminosité près du milieu afin de créer des couleurs énergiques qui ressortent sur des badges, prototypes, éléments de jeu ou repères de séries statistiques. Ces modes constituent des traitements et non des harmonies formelles du cercle chromatique : chaque couleur provient séparément de la séquence initialisée, sans espacement complémentaire, analogue ou triadique imposé. Le mode participe à l'état initial. Passer d'aléatoire à pastel crée donc volontairement une autre séquence au lieu de modifier seulement la saturation des nuances existantes. Employez toujours le même mode lorsque la continuité compte et conservez-le avec la graine et le nombre afin que chaque client demande le même résultat.
Employez des couleurs déterministes dans vos applications et tests
Les palettes déterministes conviennent particulièrement aux interfaces qui exigent une diversité visuelle tout en gardant une sortie stable. Un service de graphiques peut tirer sa palette d'un identifiant de rapport, une génération de documentation peut colorer ses exemples selon un nom de version et une suite de tests peut produire des nuances réalistes sans jeux de données fragiles écrits à la main. Demandez uniquement le nombre de couleurs nécessaire, dans la limite publiée de 256, puis exploitez-les dans l'ordre renvoyé. L'algorithme est pur et borné : il ne contacte aucun réseau, ne lit aucun état enregistré, ne consulte pas la date courante et n'utilise pas la source aléatoire de la plateforme. Les résultats restent ainsi portables entre l'exécuteur du navigateur et le gestionnaire de l'API, tandis qu'une requête ultérieure ne dépend jamais d'une précédente. Déterministe ne signifie toutefois pas aléatoire au sens cryptographique, et une graine n'est pas un mot de passe. Cet outil produit des couleurs visuelles, pas des jetons de sécurité ni des identifiants imprévisibles. Les requêtes API appliquent le tarif de base annoncé de $0.002, tandis que l'expérience dans le navigateur exécute localement le même calcul central afin que vous puissiez expérimenter avant d'automatiser.
Cas d’usage
Séries graphiques stables
Retrouvez la même suite ordonnée de couleurs depuis l'identifiant d'un rapport ou tableau de bord à chaque nouvelle génération du graphique.
Données de conception reproductibles
Donnez aux captures et tests d'interface des couleurs variées qui restent identiques sur différentes machines et exécutions.
Thèmes visuels par projet
Dérivez un ensemble pastel ou vif d'un nom de projet sans gérer un registre de palettes distinct.
Questions fréquentes
La même graine renverra-t-elle toujours les mêmes couleurs ?
Oui. La graine, le nombre et le mode d'harmonie déterminent entièrement la sortie ordonnée. La casse et l'orthographe exactes de la graine comptent.
Que se passe-t-il si le nombre vaut zéro ou est négatif ?
La requête échoue avec une erreur de saisie invalide, car le nombre doit être un entier au moins égal à 1.
Quelle différence existe-t-il entre les trois modes d'harmonie ?
Aléatoire utilise de larges plages de saturation et luminosité, pastel privilégie les couleurs claires et douces, et vif les couleurs très saturées à luminosité moyenne.
La sortie est-elle aléatoire au sens cryptographique ?
Non. Elle est volontairement prévisible et convient à la création visuelle, aux données de test et aux affectations reproductibles, pas aux secrets ni aux identifiants de sécurité.
Quel est le prix d'une requête API ?
Le tarif de base de l'API est de $0.002 par requête. L'exécuteur du navigateur peut effectuer localement le même calcul déterministe.
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/random-palette-seeded \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"count":5,"seed":"summer-campaign-2026"}'const res = await fetch("https://api.kit.forhosting.com/color/random-palette-seeded", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"count": 5,
"seed": "summer-campaign-2026"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/color/random-palette-seeded",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"count": 5,
"seed": "summer-campaign-2026"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/color/random-palette-seeded", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"count":5,"seed":"summer-campaign-2026"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"count":5,"seed":"summer-campaign-2026"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/color/random-palette-seeded", 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
{
"count": 5,
"seed": "summer-campaign-2026"
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "color.random_palette_seeded",
"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. |