- Full Documentation & Tutorial: https://spicecodecli.github.io/spicecode/docs/intro/
- Visite nossa página no PyPI: https://pypi.org/project/spicecode/
Bem-vindo ao SpiceCode CLI, a próxima geração de análise de código. Como os Fremen que dominam as areias de Arrakis, o SpiceCode permite que você navegue pelo deserto do desenvolvimento com precisão e sabedoria, extraindo insights valiosos do seu código.
SpiceCode é uma ferramenta de linha de comando desenvolvida para analisar e aprimorar seu código em várias linguagens de programação. Assim como a especiaria melange revela os segredos do universo, o SpiceCode revela os padrões, métricas e potenciais melhorias em sua base de código.
Nossa ferramenta foi construída com foco na simplicidade e eficiência, permitindo que desenvolvedores de todos os níveis - desde os jovens Fremen até os experientes Mentats - possam compreender e melhorar a qualidade de seus projetos.
- Análise Profunda: Examina seu código e fornece métricas detalhadas
- Suporte Multi-linguagem: Compatível com Python, JavaScript, Ruby e Go
- Lexers e Parsers Nativos: Todos os analisadores são construídos por nós, sem dependências externas
- Interface Amigável: Comandos simples e intuitivos para facilitar o uso
- Exportação de Resultados: Exporte suas análises em diversos formatos (JSON, CSV, Markdown, HTML)
- Suporte a Múltiplos Idiomas: Interface traduzível para diferentes línguas
A água da vida é preciosa no deserto, assim como o código limpo é valioso em um projeto. Deixe o SpiceCode ser seu stillsuit, protegendo e otimizando seus recursos mais valiosos.
Para começar sua jornada com o SpiceCode, você precisará preparar seu ambiente como um verdadeiro Fremen prepara seu equipamento antes de atravessar o deserto.
- Python instalado em seu sistema (como a água, essencial para a vida)
- Terminal ou prompt de comando (seu thopter pessoal para navegar pelo código)
A maneira mais simples de obter o SpiceCode é através do PIP, o gerenciador de pacotes do Python:
pip install spicecode
Após a instalação, o comando spice
estará disponível em seu terminal, como uma faca crysknife sempre ao seu alcance.
Se preferir construir a partir do código-fonte (como os Fremen que fabricam seus próprios equipamentos):
-
Clone o repositório para sua máquina:
git clone https://github.com/spicecodecli/spicecode.git
-
Navegue até a pasta do projeto clonado:
cd spicecode
-
Crie um ambiente virtual Python (venv):
python -m venv venv
-
Ative seu ambiente virtual:
Windows:
./venv/Scripts/activate
Linux/macOS:
source ./venv/bin/activate
-
Instale as dependências necessárias:
pip install -r requirements.txt
-
Instale (build) o pacote SpiceCode localmente:
pip install -e .
Agora você está pronto para começar sua jornada pelo deserto do código, com todas as ferramentas necessárias ao seu dispor.
Para confirmar que o SpiceCode foi instalado corretamente, execute:
spice version
Se tudo estiver funcionando corretamente, você verá a versão atual do SpiceCode, confirmando que a especiaria flui em seu sistema.
Como um Fremen que domina as técnicas de sobrevivência no deserto, você agora pode utilizar o SpiceCode para navegar pelo vasto oceano de areia que é seu código. Aqui estão os comandos principais que você pode executar:
spice version
Este comando mostra a versão atual do SpiceCode instalada em seu sistema.
spice hello
Uma simples mensagem de boas-vindas, como o ritual de saudação entre os Fremen.
spice translate
Configure o idioma da interface do SpiceCode. Como os dialetos de Arrakis, você pode escolher o que melhor se adapta às suas necessidades.
O coração do SpiceCode está em sua capacidade de analisar código, como um Mentat processando informações complexas:
spice analyze ARQUIVO
Substitua ARQUIVO
pelo caminho do arquivo que deseja analisar. Por exemplo:
spice analyze codigo.js
Este comando analisará o arquivo especificado e apresentará um menu interativo com diferentes opções de análise.
spice analyze ARQUIVO --all
Executa todas as análises disponíveis para o arquivo sem exibir o menu de seleção.
spice analyze ARQUIVO --json
Retorna os resultados da análise em formato JSON, ideal para integração com outras ferramentas.
Como os Fremen que preservam cada gota de água, você pode salvar os resultados de suas análises em diferentes formatos:
spice export ARQUIVO --format FORMATO --output CAMINHO_SAIDA
Onde:
ARQUIVO
é o caminho do arquivo a ser analisadoFORMATO
pode ser json, csv, markdown ou htmlCAMINHO_SAIDA
é o caminho onde o arquivo de resultados será salvo
Exemplo:
spice export codigo.js --format markdown --output resultados.md
O SpiceCode, como um navegador experiente que conhece diferentes terrenos, suporta análise para as seguintes linguagens:
- Python (
.py
) - JavaScript (
.js
) - Ruby (
.rb
) - Go (
.go
)
Cada linguagem tem seu próprio lexer e parser nativos, construídos especificamente para o SpiceCode, sem dependências de bibliotecas externas - assim como os Fremen que constroem suas próprias ferramentas a partir dos recursos disponíveis em Arrakis.
Como os Fremen que compartilham seu conhecimento para o bem da tribo, você também pode contribuir para o SpiceCode. No entanto, como este é atualmente um projeto acadêmico, há algumas considerações especiais:
Atualmente, o SpiceCode é um trabalho acadêmico e, por isso, não está aceitando contribuições externas. Como a água que é guardada nos reservatórios secretos dos Fremen, o desenvolvimento está temporariamente restrito à equipe original.
No entanto, planejamos abrir o projeto para contribuições da comunidade no futuro, quando nossa jornada acadêmica estiver completa. Sua paciência é valorizada como a virtude mais importante no deserto.
Mesmo que contribuições diretas de código não sejam aceitas no momento, você pode ajudar reportando problemas ou sugestões:
- Acesse a página de issues no GitHub
- Clique em "New Issue"
- Descreva o problema ou sugestão com o máximo de detalhes possível
- Adicione labels relevantes como "bug" ou "enhancement"
Como os Fremen que seguem regras estritas para sobreviver no deserto, todos os participantes do projeto SpiceCode devem aderir ao nosso Código de Conduta. Este código é inspirado no Contributor Covenant e adaptado com a temática de Dune.
Os principais pontos incluem:
- Mostrar gentileza, paciência e respeito aos companheiros de jornada
- Honrar diferenças em estilos de código, ideias e perspectivas
- Fornecer feedback construtivo com humildade e recebê-lo com graça
- Aceitar responsabilidade por erros e se esforçar para melhorar
- Trabalhar pelo bem maior da comunidade, não apenas pelo ganho pessoal
Para mais detalhes, consulte o arquivo CODE_OF_CONDUCT.md no repositório.
Quando o projeto for aberto para contribuições, seguiremos o modelo tradicional de fork e pull request:
- Faça um fork do repositório
- Crie uma branch para sua feature (
git checkout -b feature/nova-funcionalidade
) - Faça commit das suas mudanças (
git commit -m 'Adiciona nova funcionalidade'
) - Envie para a branch (
git push origin feature/nova-funcionalidade
) - Abra um Pull Request
Aguardamos ansiosamente o dia em que a comunidade poderá contribuir diretamente para o SpiceCode, como os Fremen que compartilham seu conhecimento para o benefício de todos em Arrakis.
Como os Fremen que protegem seus sietchs com vigilância constante, a segurança é uma prioridade no SpiceCode.
O SpiceCode segue uma política de segurança simples mas eficaz:
Versão | Suportada |
---|---|
Mais recente | ✅ |
Não mais recente | ❌ |
Assim como os Fremen que mantêm seus equipamentos sempre atualizados para sobreviver no deserto, recomendamos que você sempre utilize a versão mais recente do SpiceCode para garantir a melhor experiência e segurança.
Se você descobrir uma vulnerabilidade de segurança no SpiceCode, por favor, reporte-a imediatamente:
- Acesse a página de issues no GitHub
- Crie uma nova issue com os labels "bug" ou "security"
- Descreva a vulnerabilidade com o máximo de detalhes possível
- Se possível, inclua passos para reproduzir o problema
Nossa equipe, como os vigilantes Fremen que protegem as reservas de água, tratará todas as vulnerabilidades reportadas com a máxima prioridade e discrição.
Para garantir a segurança ao utilizar o SpiceCode:
- Sempre verifique a origem do código que está sendo analisado
- Mantenha o SpiceCode atualizado com a versão mais recente
- Utilize ambientes virtuais Python para isolar suas dependências
- Revise os resultados das análises antes de aplicar quaisquer mudanças sugeridas
Lembre-se: a vigilância constante é o preço da segurança, assim como os Fremen nunca baixam a guarda no deserto hostil de Arrakis.
O SpiceCode é distribuído sob a licença Apache 2.0, uma licença permissiva que, como as leis dos Fremen, estabelece regras claras para o benefício de todos.
A licença Apache 2.0 permite:
- Uso Comercial ✅ - Como as caravanas de especiarias que cruzam o deserto, você pode usar o SpiceCode em projetos comerciais
- Modificação ✅ - Assim como os Fremen adaptam seus equipamentos, você pode modificar o código
- Distribuição ✅ - Compartilhe o conhecimento como os Fremen compartilham a água
- Uso de Patente ✅ - As patentes dos contribuidores são licenciadas para uso
- Uso Privado ✅ - Use o SpiceCode em seus projetos privados, como os segredos guardados nas cavernas
A licença Apache 2.0 não permite:
- Uso de Marca Registrada ❌ - O nome e logotipo do SpiceCode são protegidos
- Responsabilidade ❌ - Os criadores não são responsáveis por danos causados pelo uso do software
- Garantia ❌ - O software é fornecido "como está", sem garantias
Ao utilizar, modificar ou distribuir o SpiceCode, você deve:
- Incluir uma cópia da licença em qualquer redistribuição
- Indicar claramente quaisquer mudanças feitas nos arquivos
- Manter os avisos de direitos autorais e atribuições
Para mais detalhes, consulte o arquivo LICENSE no repositório.
Como dizem os Fremen: "Respeite as regras do deserto, e o deserto respeitará você."
Como um Fremen que enfrenta os desafios do deserto com sabedoria, aqui estão respostas para perguntas frequentes e soluções para problemas comuns que você pode encontrar ao utilizar o SpiceCode.
O SpiceCode foi desenvolvido com foco na simplicidade e independência. Todos os lexers e parsers são construídos nativamente, sem depender de bibliotecas externas de análise de código. Isso nos dá controle total sobre o processo de análise e permite uma experiência mais consistente entre as diferentes linguagens suportadas.
O SpiceCode analisa diversas métricas, incluindo:
- Proporção de comentários no código
- Complexidade de funções e métodos
- Padrões de nomenclatura
- Estrutura do código
- Contagem de tipos de métodos
Novas métricas são adicionadas regularmente, como novas descobertas no deserto de Arrakis.
Sim! Como os Fremen que se adaptam a diferentes regiões do deserto, o SpiceCode funciona em Windows, macOS e Linux, desde que você tenha Python instalado.
Absolutamente! O SpiceCode é distribuído sob a licença Apache 2.0, que permite uso comercial. Consulte a seção de Licença para mais detalhes.
Problema: Após instalar o SpiceCode, o terminal não reconhece o comando spice
.
Solução:
- Verifique se o Python está no PATH do seu sistema
- Tente reinstalar o pacote com
pip install --user spicecode
- Em alguns sistemas, pode ser necessário usar
python -m spicecode
em vez despice
Problema: O SpiceCode apresenta erros ou lentidão ao analisar arquivos muito grandes.
Solução:
- Considere dividir o arquivo em partes menores
- Verifique se seu sistema tem memória suficiente disponível
- Atualize para a versão mais recente do SpiceCode, que pode conter otimizações
Problema: Erros ao analisar arquivos com caracteres especiais ou espaços no nome.
Solução:
- Use aspas ao redor do nome do arquivo:
spice analyze "meu arquivo.js"
- Evite caracteres especiais em nomes de arquivos quando possível
- Use a notação de escape apropriada para seu sistema operacional
Problema: O SpiceCode não identifica corretamente a linguagem do arquivo que está sendo analisado.
Solução:
- Verifique se a extensão do arquivo está correta (.py, .js, .rb, .go)
- Certifique-se de que está usando a versão mais recente do SpiceCode
- Se o problema persistir, reporte-o como uma issue no GitHub
Como dizem os Fremen: "O homem que pode destruir uma coisa, controla essa coisa." Conhecer os problemas e suas soluções dá a você controle sobre sua experiência com o SpiceCode.
Visite nossa página no registro PyPI: https://pypi.org/project/spicecode/
A especiaria deve fluir, e seu código deve ser apimentado! 🌶️🔥