Uma aplicação desktop em Rust para limpeza inteligente de disco, desenvolvida com uma interface gráfica moderna usando egui/eframe.
- Análise de Disco: Varredura completa de diretórios para identificar arquivos
- Categorização Inteligente: Classificação automática de arquivos por tipo (logs, temporários, cache, etc.)
- Detecção de Duplicatas: Identificação de arquivos duplicados baseada em hash
- Interface Gráfica Intuitiva: Interface moderna e responsiva construída com egui
- Visualização de Progresso: Barras de progresso em tempo real durante as operações
- Configurações Personalizáveis: Opções para excluir diretórios e tipos de arquivo específicos
- Visualização de Resultados: Exibição detalhada dos arquivos encontrados antes da limpeza
- Segurança: Confirmação antes de deletar arquivos importantes
- Rust 1.70 ou superior
- Cargo
- Clone o repositório:
git clone https://github.com/seu-usuario/intelligent-disk-cleaner.git
cd intelligent-disk-cleaner- Compile o projeto:
cargo build --release- Execute a aplicação:
cargo run --releaseegui0.28 - Framework de interface gráficaeframe0.28 - Backend nativo para eguiwalkdir- Para navegação em diretóriosrayon- Para processamento paraleloblake3- Para geração de hash de arquivosserde- Para serialização/deserializaçãodirs- Para acesso a diretórios do sistema
- Iniciar Análise: Clique no botão "Start Scan" para iniciar a varredura
- Selecionar Diretório: Escolha o diretório que deseja analisar
- Aguardar Conclusão: Acompanhe o progresso na barra de status
- Revisar Resultados: Visualize os arquivos encontrados por categoria
- Selecionar para Limpeza: Marque os arquivos que deseja remover
- Executar Limpeza: Confirme e execute a limpeza
src/
├── app.rs # Lógica principal da interface
├── main.rs # Ponto de entrada
├── scanner.rs # Módulo de varredura de arquivos
├── duplicate_finder.rs # Módulo de detecção de duplicatas
├── cleaner.rs # Módulo de limpeza de arquivos
├── file_category.rs # Categorização de arquivos
├── progress.rs # Gerenciamento de progresso
└── config.rs # Configurações da aplicação
cargo runcargo testcargo fmtcargo clippyA aplicação utiliza um arquivo de configuração config.toml localizado em:
- Windows:
%APPDATA%\intelligent-disk-cleaner\config.toml - Linux/macOS:
~/.config/intelligent-disk-cleaner/config.toml
[scan]
exclude_dirs = ["/proc", "/sys", "/dev"]
max_file_size = 1073741824 # 1GB
[cleanup]
safe_mode = true
backup_before_delete = falseCrie um arquivo .env na raiz do projeto com:
RUST_LOG=debug
RUST_BACKTRACE=1Se encontrar erros de compilação relacionados ao eframe:
- Verifique se está usando a versão correta do Rust
- Atualize as dependências:
cargo updateEm sistemas Unix/Linux, pode ser necessário permissões de administrador para acessar alguns diretórios.
- Faça um fork do projeto
- Crie uma branch para sua feature (
git checkout -b feature/AmazingFeature) - Commit suas mudanças (
git commit -m 'Add some AmazingFeature') - Push para a branch (
git push origin feature/AmazingFeature) - Abra um Pull Request
Este projeto está sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.
Se você encontrar problemas ou tiver dúvidas:
- Verifique as Issues
- Crie uma nova Issue descrevendo o problema
- Entre em contato através do email: seu-email@example.com
- Versão inicial com funcionalidades básicas de limpeza
- Interface gráfica com egui
- Detecção de arquivos duplicados
- Categorização de arquivos