Ferramenta de linha de comando para consultar estatísticas do League of Legends via Riot Games API.
| Feature | Descrição |
|---|---|
| 🔍 Busca por Riot ID | PlayerName#TAG ou só o nome (assume #BR1) |
| 📋 Partidas recentes | 20, 30, 50 ou 100 últimas partidas com KDA, duração, resultado |
| ⭐ Top 5 Maestrias | Campeões com maior maestria, nível e pontos |
| 🏆 Leaderboard | Challenger / Grandmaster / Master por região |
| 🌍 Multi-região | BR1, NA1, EUW1, KR, JP1, etc. |
| 🎯 Filtro de fila | Todas / Ranked / Normal / ARAM |
| 📑 Paginação | Navega pelas partidas página a página |
| 💾 Cache | Respostas cacheadas por 5 min (partidas: 1h) |
| 🎨 UI colorida | Tabelas formatadas com chalk + cli-table3 |
| Rate limit, 404, 401, etc. com mensagens claras |
npm install -g legends-cli# Clone / extraia o projeto
cd legends-cli
# Instale dependências
npm install- Acesse developer.riotgames.com
- Faça login com sua conta Riot
- Copie a Development API Key no painel (válida por 24h)
💡 Se você rodar
legends-clisem ter configurado a chave, o terminal vai exibir as instruções e abrir o site da Riot automaticamente no navegador.
legends-cli RGAPI-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxA chave é salva em ~/.legends-cli/.env e vale para qualquer diretório. Nenhum arquivo .env manual necessário.
legends-cli
# ou, em desenvolvimento local:
npm startSelecione região → Menu Principal
├── 🔍 Buscar jogador
│ ├── Digite: PlayerName#BR1
│ ├── Ver Partidas Recentes
│ │ ├── Escolha quantidade (20/30/50/100)
│ │ ├── Escolha filtro (Todas/Ranked/Normal/ARAM)
│ │ └── Paginação navegável
│ └── Ver Top 5 Maestrias
├── 🏆 Top Players
│ ├── Tier: Challenger / Grandmaster / Master
│ └── Top 10 / 20 / 50 / 100
├── 🌍 Trocar região
├── 🗑 Limpar cache
└── ❌ Sair
legends-cli/
├── src/
│ ├── index.ts # Entry point + menu principal + setup da API key
│ ├── types.ts # Tipos, regiões, filas
│ ├── riot-client.ts # Cliente da API com cache + erros
│ ├── champions.ts # Dados de campeões (Data Dragon)
│ ├── cache.ts # Cache em arquivo (~/.tmp/legends-cli-cache)
│ ├── display.ts # Tabelas e formatação colorida
│ └── menus/
│ ├── player-lookup.ts # Menu de busca por jogador
│ └── top-players.ts # Menu de leaderboard
├── .env.example
├── package.json
└── tsconfig.json
- API Key: salva em
~/.legends-cli/.env, configurada comlegends-cli <KEY> - Cache: arquivos JSON em
$TMPDIR/legends-cli-cache/com TTL configurável - Rate Limit: se atingido (HTTP 429), exibe mensagem clara e para
- DDragon: nomes dos campeões carregados uma vez com cache de 24h
- Routing: regiões de plataforma (
br1,na1…) e cluster regional (americas,europe…) são tratados separadamente conforme a Riot API exige