Cor aleatória com semente
A semente 2026 sempre resulta em #CFD7C2, e o nome conhecido mais próximo é silver (#C0C0C0). Dê a cada registro, usuário ou versão uma cor de destaque estável a partir de um número que você já tem, sem guardar tabela de cores. Grátis no seu navegador.
- Grátis
- Funciona no seu navegador
- Sem cadastro
- Seus dados não saem do seu aparelho
Executar grátis
Exemplo resolvido
- Semente
- 2.026
- Hex
- #CFD7C2
- Nome
- silver
- Hex nomeado
- #C0C0C0
Este gerador de cores aleatórias com semente transforma qualquer inteiro em uma cor RGB estável. Ele retorna a cor criada como um valor hexadecimal de seis dígitos e identifica o tom mais próximo em uma paleta fixa de nomes CSS conhecidos. É ideal quando um projeto precisa de cores com aparência aleatória, mas repetíveis entre sessões, máquinas, compilações ou colaboradores.
Crie uma cor que continue estável
Gerar cores aleatórias é conveniente até que uma página seja recarregada, um relatório seja refeito ou outro desenvolvedor execute o mesmo fluxo e receba uma paleta diferente. Uma semente resolve esse problema ao tornar o acaso aparente reproduzível. Informe um inteiro, como um identificador de banco de dados, um número de compilação ou um índice estável.
O gerador mistura esse inteiro em um valor de 32 bits e utiliza três bytes para vermelho, verde e azul. Não há relógio, entropia do navegador, estado oculto nem serviço externo no processo. Portanto, a semente 2026 sempre retorna exatamente a mesma cor hexadecimal.
O resultado serve para cores duradouras de categorias, avatares gerados, dados de teste, gráficos e projetos procedurais. Armazene a semente, em vez de uma cor gerada separadamente, se quiser recuperar o tom a partir de um identificador existente. Inteiros negativos e zero também são válidos; números decimais e textos numéricos são recusados porque não constituem entradas inteiras neste contrato.
Entenda o valor hex e o nome mais próximo
O resultado principal é um valor hexadecimal RGB padrão com seis dígitos, como #2A7FBC. O primeiro par representa o vermelho, o segundo representa o verde e o terceiro representa o azul, com cada canal variando de 00 a FF. Você pode usar o valor gerado diretamente em CSS, SVG, desenhos em canvas, tokens de design ou qualquer sistema compatível com cores da web.
O nome fornecido é descritivo e não substitui o valor exato. O gerador compara os novos canais RGB com uma paleta fixa de cores CSS reconhecíveis, calcula a distância euclidiana ao quadrado no espaço RGB e escolhe a entrada mais próxima. Ele também retorna o valor hexadecimal próprio da cor nomeada para deixar clara a comparação.
Duas cores geradas podem compartilhar o mesmo nome próximo, embora seus valores hex exatos sejam diferentes. Para uma exibição precisa, use o campo hex gerado; utilize o nome em rótulos, resumos, revisões editoriais de acessibilidade ou dicas legíveis. A paleta fixa e o desempate alfabético também tornam a nomeação determinística.
Use sementes consistentes nos aplicativos
Escolha uma semente baseada em informações que já sejam estáveis no seu aplicativo. Um ID numérico de registro funciona bem quando cada item precisa de uma cor de destaque persistente. Um índice sequencial é útil para dados de teste ou exemplos gerados, e um número de versão pode criar um marcador visual repetível para uma publicação.
Não use números confidenciais apenas para ocultá-los: uma cor não é criptografia, e muitas sementes podem chegar ao mesmo resultado de 24 bits. Também não presuma que sementes próximas geram cores próximas. O misturador inteiro dispersa deliberadamente pequenas alterações, portanto identificadores consecutivos tendem a cair em regiões distintas do espaço RGB.
Caso você precise de uma paleta harmoniosa, contraste mínimo ou brilho limitado, aplique depois uma capacidade específica de paleta ou contraste. Guarde o hex retornado se precisar de independência em relação a futuras versões do algoritmo, pois formatos beta ou detalhes da mistura podem evoluir.
Casos de uso
Destaques estáveis para avatares
Derive um destaque de perfil repetível de um ID inteiro de conta sem armazenar outra escolha aleatória.
Dados de teste reproduzíveis
Gere os mesmos elementos visuais em todas as máquinas mantendo sementes inteiras com os casos de teste.
Categorias persistentes em gráficos
Atribua cores determinísticas a categorias numeradas para preservar a identidade visual em relatórios refeitos.
Perguntas frequentes
A mesma semente sempre retorna a mesma cor?
Sim. O algoritmo é puro e não utiliza relógio, rede, estado nem entropia; sementes inteiras idênticas produzem resultados iguais.
É possível usar sementes negativas ou zero?
Sim. Qualquer valor inteiro de JavaScript é aceito, inclusive inteiros negativos e zero.
Que cor a semente 2026 gera?
Gera #CFD7C2 todas as vezes. A cor com nome mais próxima é silver, cujo código é #C0C0C0; o nome é um rótulo amigável e o código hex é a cor exata.
Sementes vizinhas geram cores parecidas?
Não. Cada número é espalhado de propósito, então identificadores seguidos costumam cair em cores sem relação. Isso ajuda a diferenciar registros, mas não serve para degradês suaves.
Devo usar o código hex ou o nome da cor?
Use o código hex para exibir a cor, porque ele é exato. O nome serve para rótulos, resumos ou descrições; duas cores geradas diferentes podem ter o mesmo nome mais próximo.
Ferramentas relacionadas
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
curl -X POST https://api.kit.forhosting.com/color/random-color-name-seeded \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"seed":2026}'const res = await fetch("https://api.kit.forhosting.com/color/random-color-name-seeded", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"seed": 2026
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/color/random-color-name-seeded",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"seed": 2026
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/color/random-color-name-seeded", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"seed":2026}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"seed":2026}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/color/random-color-name-seeded", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemplo de requisição
{
"seed": 2026
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "color.random_color_name_seeded",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |
Notas técnicas
Como o cálculo usa somente operações inteiras determinísticas, a mesma semente sempre produz o mesmo resultado na API e no navegador.
Use sementes consistentes nos aplicativos
Na integração com a API, envie a semente como número JSON sem aspas. Cada solicitação custa US$ 0,002; a execução no navegador usa o mesmo código puro, facilitando testes antes da automação.
Perguntas técnicas
O que acontece se a semente for decimal ou texto?
A solicitação falha com invalid_input. A semente deve ser um inteiro JSON, não um valor decimal nem texto numérico entre aspas.
O nome retornado corresponde exatamente à cor gerada?
Em geral, não. O campo hex é exato; name e named_hex identificam a entrada mais próxima na paleta fixa de cores nomeadas.
Quanto custa uma solicitação à API?
Cada solicitação à API custa US$ 0,002. O mesmo solucionador determinístico também pode ser executado no navegador.