Quando você vê os cards de estatísticas no seu perfil do GitHub (aqueles que mostram commits, PRs, estrelas, etc), eles não são imagens estáticas. Eles são gerados dinamicamente por uma API em tempo real! Vou explicar como isso funciona por trás dos panos.
A GitHub Readme Stats é um projeto open-source criado por Anurag Hazra que fornece uma API pública para gerar cards visuais com suas estatísticas do GitHub.
Repositório oficial: https://github.com/anuraghazra/github-readme-stats
Quando você coloca uma tag <img> com uma URL da API no seu README, você está criando uma requisição HTTP.
<img src="https://github-readme-stats-sigma-five.vercel.app/api?username=SEU_USUARIO&show_icons=true&theme=tokyonight" />Quando alguém acessa seu perfil do GitHub, o navegador tenta carregar a imagem especificada na URL.
A API recebe a requisição com os parâmetros (seu username, tema, etc) e:
- Acessa a API pública do GitHub para obter seus dados
- Processa as informações (calcula commits, PRs, estrelas, etc)
- Gera uma imagem SVG estilizada com os dados
- Devolve a imagem para o navegador
O navegador recebe a imagem SVG e a exibe no seu perfil.
Você pode personalizar a API adicionando parâmetros à URL. Aqui estão os principais:
| Parâmetro | Descrição | Exemplo |
|---|---|---|
username |
Seu nome de usuário do GitHub (obrigatório) | username=DosAnjos013 |
show_icons |
Mostra ícones nas estatísticas | show_icons=true |
theme |
Define o tema de cores | theme=tokyonight |
locale |
Define o idioma | locale=pt-br |
include_all_commits |
Inclui todos os commits (não apenas do branch padrão) | include_all_commits=true |
layout |
Layout para top linguagens (compact, donut, etc) | layout=compact |
Você pode escolher entre diversos temas para personalizar a aparência dos cards:
tokyonight(padrão, tema escuro com tons de roxo)dracula(tema escuro com tons de roxo/rosa)dark(tema escuro minimalista)radical(tema escuro com cores vibrantes)vue(tema claro com tons de verde)nord(tema escuro com tons de azul)github_dark(tema escuro similar ao GitHub)onedark(tema escuro com tons de azul)
Dica: Teste diferentes temas para encontrar o que mais combina com seu estilo!
A API da GitHub Readme Stats só acessa dados públicos do seu perfil. Ela não tem acesso a:
- Repositórios privados
- Dados pessoais
- Informações de email
- Qualquer informação que você não tenha tornado pública
Portanto, é completamente seguro usar essa API!
A API implementa um sistema de cache para otimizar a performance:
- As imagens são cacheadas por um período de tempo
- Isso evita que a API seja chamada a cada vez que alguém acessa seu perfil
- O cache é atualizado periodicamente para manter os dados frescos
Se você quiser explorar mais opções, existem outras APIs e ferramentas similares:
- GitHub Readme Streak Stats: Mostra uma contagem de dias consecutivos com commits
- GitHub Readme Activity Graph: Exibe um gráfico de atividade ao longo do tempo
- Wakatime Stats: Mostra tempo gasto em diferentes linguagens (requer integração com Wakatime)
- Mantenha Seu Perfil Atualizado: Quanto mais commits e projetos você tiver, mais impressionantes serão suas estatísticas!
- Personalize os Temas: Escolha um tema que combine com sua identidade profissional
- Adicione Mais Cards: Explore a documentação oficial para adicionar mais tipos de cards (contribuições, repositórios destacados, etc)
- Teste Localmente: Você pode copiar a URL no navegador e adicionar parâmetros para testar diferentes configurações