Skip to content

Latest commit

 

History

4 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Intelligent Disk Cleaner

Uma aplicação desktop em Rust para limpeza inteligente de disco, desenvolvida com uma interface gráfica moderna usando egui/eframe.

📋 Funcionalidades

  • 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

🚀 Instalação

Pré-requisitos

  • Rust 1.70 ou superior
  • Cargo

Passos de Instalação

  1. Clone o repositório:
git clone https://github.com/seu-usuario/intelligent-disk-cleaner.git
cd intelligent-disk-cleaner
  1. Compile o projeto:
cargo build --release
  1. Execute a aplicação:
cargo run --release

📦 Dependências

  • egui 0.28 - Framework de interface gráfica
  • eframe 0.28 - Backend nativo para egui
  • walkdir - Para navegação em diretórios
  • rayon - Para processamento paralelo
  • blake3 - Para geração de hash de arquivos
  • serde - Para serialização/deserialização
  • dirs - Para acesso a diretórios do sistema

🎯 Como Usar

  1. Iniciar Análise: Clique no botão "Start Scan" para iniciar a varredura
  2. Selecionar Diretório: Escolha o diretório que deseja analisar
  3. Aguardar Conclusão: Acompanhe o progresso na barra de status
  4. Revisar Resultados: Visualize os arquivos encontrados por categoria
  5. Selecionar para Limpeza: Marque os arquivos que deseja remover
  6. Executar Limpeza: Confirme e execute a limpeza

🛠️ Desenvolvimento

Estrutura do Projeto

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

Executando em Modo Desenvolvimento

cargo run

Executando Testes

cargo test

Formatando Código

cargo fmt

Análise de Código

cargo clippy

⚙️ Configuração

A 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

Exemplo de Configuração

[scan]
exclude_dirs = ["/proc", "/sys", "/dev"]
max_file_size = 1073741824  # 1GB

[cleanup]
safe_mode = true
backup_before_delete = false

🔧 Variáveis de Ambiente

Crie um arquivo .env na raiz do projeto com:

RUST_LOG=debug
RUST_BACKTRACE=1

🐛 Solução de Problemas

Erro de Compilação

Se encontrar erros de compilação relacionados ao eframe:

  1. Verifique se está usando a versão correta do Rust
  2. Atualize as dependências:
cargo update

Erro de Permissão

Em sistemas Unix/Linux, pode ser necessário permissões de administrador para acessar alguns diretórios.

🤝 Contribuindo

  1. Faça um fork do projeto
  2. Crie uma branch para sua feature (git checkout -b feature/AmazingFeature)
  3. Commit suas mudanças (git commit -m 'Add some AmazingFeature')
  4. Push para a branch (git push origin feature/AmazingFeature)
  5. Abra um Pull Request

📄 Licença

Este projeto está sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.

🙋‍♂️ Suporte

Se você encontrar problemas ou tiver dúvidas:

  1. Verifique as Issues
  2. Crie uma nova Issue descrevendo o problema
  3. Entre em contato através do email: seu-email@example.com

🔄 Changelog

v1.0.0

  • Versão inicial com funcionalidades básicas de limpeza
  • Interface gráfica com egui
  • Detecção de arquivos duplicados
  • Categorização de arquivos

About

Memory cleaner and manager made with rust

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages