Validador de Handle GitHub
Valida formato de username GitHub: 1-39 caracteres alfanuméricos e hífens, não pode começar ou terminar com hífen, sem hífens consecutivos.
Validação de username do GitHub: regras, redirecionamentos e integrações
Um username do GitHub identifica uma conta de usuário ou organização e aparece em toda URL da plataforma: github.com/torvalds, username.github.io, README de perfil no repo especial username/username, links do GitHub Sponsors, workflows do GitHub Actions, caminhos do container registry. Validar importa em formulários que pré-criam links de perfil, em scripts de CI que consomem variáveis de ambiente (GITHUB_ACTOR) e em campos de redes sociais onde um nome errado produz 404 em vez do perfil.
As regras de formato são mais rígidas do que parecem: 1 a 39 caracteres, alfanuméricos mais hifens simples, sem hifens consecutivos, não pode começar nem terminar com hífen. O roteamento case-insensitive significa que octocat e OCTOCAT resolvem para a mesma conta, mas a capitalização canônica é preservada para exibição.
Regras de formato e o regex canônico
- Comprimento: 1 a 39 caracteres.
- Caracteres permitidos:
[A-Za-z0-9-]— letras, dígitos e hífen. - Regras do hífen: não pode começar nem terminar com hífen; hifens consecutivos (
--) não são permitidos. - Palavras reservadas:
admin,root,login,api,wwwe outros paths de sistema são bloqueados no cadastro. - Case-insensitive:
OctoCat,octocateOCTOCATcaem no mesmo perfil. Busca e URLs normalizam para minúsculas.
// Regex canônico de username do GitHub
const GITHUB_USERNAME = /^[a-z\d](?:[a-z\d]|-(?=[a-z\d])){0,38}$/i
function validarUsernameGithub(nome) {
return GITHUB_USERNAME.test(nome)
}
// Contas notórias
validarUsernameGithub('torvalds') // true (Linus Torvalds)
validarUsernameGithub('gaearon') // true (Dan Abramov)
validarUsernameGithub('-ruim') // false (hífen no início)
validarUsernameGithub('a--b') // false (hifens consecutivos)
Recursos baseados em username: Pages, README de perfil, Sponsors
O username está costurado em vários recursos do GitHub:
- GitHub Pages:
username.github.iohospeda site estático direto do repo de mesmo nome. Tier gratuito com limite de 1 GB por site e 100 GB/mês de banda. - README de perfil: criar um repo público chamado exatamente
username/usernameexibe seu README no topo do perfil do usuário — usado para cards de portfólio, badges de estatística e READMEs pinados. - GitHub Sponsors: recurso de monetização usando o username como URL de doação (
github.com/sponsors/username). Disponível para indivíduos e organizações após checagem de elegibilidade. - GitHub Container Registry: imagens de container ficam em
ghcr.io/username/imagem:tag— o username é o namespace. - GitHub Actions: a variável de ambiente
GITHUB_ACTORem todo workflow carrega o username que disparou a execução.
Mudança de username, redirecionamento e squatting
Diferente do X/Twitter, o GitHub auto-redireciona contas renomeadas: ao trocar o username, a URL antiga segue funcionando até o nome velho ser tomado por outra pessoa, e mesmo assim o GitHub pode manter redirecionamentos históricos para URLs de repositório. Mudanças de username são limitadas a aproximadamente uma por ano via UI. URLs antigas de clone continuam funcionando via redirect, o que é crítico para projetos que já têm consumidores downstream. O GitHub também combate ativamente username squatting: detentores de marca podem solicitar reaver contas inativas que violem política de marca sob a Acceptable Use Policy do GitHub.
Conta de organização vs usuário e Enterprise
Nomes de organização seguem as mesmas restrições de formato que os de usuário: 1-39 caracteres, alfanumérico + hifens simples. Organizações não podem ter sub-perfis diretamente — todo membro tem sua conta de usuário e entra na org como colaborador. O GitHub Enterprise Server (self-hosted) usa as mesmas regras internamente mas mantém namespace separado do github.com. O tier gratuito do GitHub Actions dá 2.000 minutos de CI/mês para repos privados em contas individuais (ilimitado para repos públicos); organizações ganham tiers maiores em planos pagos. Limites da API: 5.000 requisições/hora para usuários autenticados, 60/hora sem autenticação.
Comunidade dev brasileira no GitHub
Grandes organizações brasileiras têm presença forte no GitHub: rocketseat (educação online), nubank (ferramentas fintech open-source), iFood, VTEX, PicPay, Stone. A adoção do GitHub Actions cresceu rapidamente em times de DevOps brasileiros entre 2022-2025 como alternativa gratuita de CI. Para usuários desconfortáveis com as políticas do GitHub, GitLab e Codeberg (Forgejo) são alternativas comuns — ambos com regras de username mais frouxas (tipicamente 2-255 chars no GitLab).
Perguntas frequentes
Qual é o comprimento máximo do username? 39 caracteres. O limite vem dos primórdios do GitHub e permanece por compatibilidade com URLs, DNS do Pages (que usa o username como subdomínio) e vários endpoints da API.
Username pode começar com hífen? Não. O primeiro caractere precisa ser alfanumérico. O último também precisa ser alfanumérico, e não é permitido ter hifens consecutivos em lugar nenhum do nome.
Se eu renomear minha conta, URLs antigas quebram? Não — o GitHub mantém auto-redirecionamento do username antigo, incluindo URLs de repositório e endpoints de clone. Renames são limitados a cerca de uma vez por ano e o redirect fica até alguém tomar o nome antigo.
Usernames do GitHub diferenciam maiúscula? Não, buscas são case-insensitive. github.com/torvalds e github.com/Torvalds resolvem para o mesmo perfil, com a capitalização canônica preservada para exibição.
Posso ter underscore ou ponto no username? Não. Só letras, dígitos e hifens simples são permitidos. Isso é mais rígido que Twitter (underscore) e Instagram (ponto + underscore).
Ferramentas Relacionadas
Validador de @handle do Twitter/X
Valida formato de @handle do Twitter/X: 1-15 caracteres, letras, dígitos e _. Não verifica se está em uso (verificação seria server-side).
Validador de Celular por País
Valida número de celular para o país escolhido (BR, EUA, PT, ES, AR, MX). Formato: country code + número, com regras específicas por país.
Validador de NIF de Portugal
Valida o NIF (Número de Identificação Fiscal) de Portugal — algoritmo de dígito verificador mod 11 e prefixos válidos (1, 2, 3, 5, 6, 8, 9).