Biblioteca de templates em Go para algoritmos e estruturas de dados de programação competitiva, com soluções para problemas do Codeforces e LeetCode.
j178/leetgo
Uma ferramenta de linha de comando para o LeetCode que gera esqueletos de soluções e casos de teste, executa testes localmente e gerencia questões e envios de contests.
- Estrelas
- 710
- Forks
- 54
- Issues abertas
- 13
- Último commit
- há 14 dias
O que é?
O leetgo permite resolver problemas do LeetCode inteiramente pelo terminal. Para uma questão escolhida, ele gera a descrição do problema, o código-base e os arquivos de casos de teste no idioma de sua preferência, para que você possa editar e depurar em qualquer IDE.
Nas linguagens compatíveis, o leetgo executa sua solução com os casos de teste locais e compara as saídas, permitindo percorrer o código com um debugger. Ele também pode gerar as questões de contests assim que são abertas, permitir que você resolva várias de uma vez e enviá-las todas juntas. As questões podem ser selecionadas por slug, id, desafio diário ou posição no contest, como weekly100/1.
A ferramenta funciona tanto com leetcode.com quanto com leetcode.cn. As credenciais podem ser lidas do navegador, informadas como cookies ou fornecidas por variáveis de ambiente. Além disso, os templates de código e os modifiers podem ser personalizados em leetgo.yaml.
Recursos principais
- 01Gera descrições dos problemas, código-base e arquivos de teste para uma questão.
- 02Executa casos de teste localmente em Go, Python, C++ e Rust.
- 03Gera questões de contests assim que são abertas e envia todas em um único lote.
- 04Compatível com leetcode.com e leetcode.cn.
- 05Lê cookies do navegador automaticamente ou aceita credenciais por variáveis de ambiente.
- 06Inclui um seletor interativo de questões com filtros e prévia em Markdown.
Casos de uso
- Praticar LeetCode diariamente pelo terminal usando seu próprio editor.
- Depurar localmente uma solução com falhas antes de enviá-la.
- Participar de contests semanais ou quinzenais e enviar todas as respostas de uma vez.
Início rápido
- 1
Instale o leetgo com o Homebrew no macOS/Linux
brew install leetgo - 2
Inicialize o leetgo informando o site e o idioma
leetgo init -t <us or cn> -l <lang> - 3
Escolha uma questão
leetgo pick <id or name or today> - 4
Teste seu código localmente
leetgo test last -L
Antes de usar
- Os testes locais são compatíveis apenas com Go, Python, C++ e Rust.
- Para enviar e buscar questões, são necessários cookies ou credenciais do LeetCode.
Em coleções
Tópicos
Perguntas frequentes
- O que é leetgo?
- Uma ferramenta de linha de comando para o LeetCode que gera esqueletos de soluções e casos de teste, executa testes localmente e gerencia questões e envios de contests. O leetgo permite resolver problemas do LeetCode inteiramente pelo terminal. Para uma questão escolhida, ele gera a descrição do problema, o código-base e os arquivos de casos de teste no idioma de sua preferência, para que você possa editar e depurar em qualquer IDE.
- leetgo é gratuito? Qual é a licença?
- leetgo é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
- leetgo ainda é mantido?
- Manutenção ativa. O último commit de leetgo foi em 25 de out. de 2026.
- Para que posso usar leetgo?
- Praticar LeetCode diariamente pelo terminal usando seu próprio editor. Depurar localmente uma solução com falhas antes de enviá-la. Participar de contests semanais ou quinzenais e enviar todas as respostas de uma vez.
- Como instalar leetgo?
- Instale o leetgo com o Homebrew no macOS/Linux: brew install leetgo Inicialize o leetgo informando o site e o idioma: leetgo init -t <us or cn> -l <lang> Escolha uma questão: leetgo pick <id or name or today> Teste seu código localmente: leetgo test last -L
- Onde consigo leetgo?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/j178/leetgo
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Coleção de anotações e soluções de DSA, programação competitiva e fundamentos de computação em Jupyter Notebook, voltada à preparação para entrevistas no estilo FAANG.
Uma macro procedural para Rust que usa a API do ChatGPT para gerar corpos de funções e casos de teste em tempo de compilação.
Ferramenta de linha de comando em Go para consultar LLMs compatíveis com OpenAI pelo terminal e gerar comandos shell, código e imagens.
Plataforma open source de testes e avaliação para servidores MCP, que permite inspecionar, conversar com e depurar servidores MCP, apps MCP e apps do ChatGPT.
Gerador de código Swift baseado no SwiftSyntax que usa templates para criar boilerplate, como mocks e código Equatable e Codable.