Aplicativo desktop para transferência segura de arquivos via SFTP com interface gráfica intuitiva.

- ✅ Upload de diretórios completos
- ✅ Upload de arquivos únicos
- ✅ Interface moderna e responsiva
- ✅ Log detalhado de operações
- ✅ Teste de conexão antes do upload
- ✅ Configurações persistentes
- ✅ Documentação integrada
- ✅ Código modular e organizado
- Python 3.8+
- Dependências:
tkinter(já incluído no Python)paramiko
- Clone o repositório:
git clone https://github.com/Faguiro/sftp-uploader.git
cd sftp-uploader- Instale as dependências:
pip install paramiko- Execute o aplicativo:
python main.pysftp_uploader/
├── main.py # Ponto de entrada
├── ui.py # Interface gráfica
├── core.py # Lógica principal
├── utils.py # Funções auxiliares
├── docs.txt # Documentação
└── README.md # Este arquivo
- Configure os dados de conexão SFTP
- Selecione o modo (diretório ou arquivo único)
- Selecione os arquivos para upload
- Teste a conexão (opcional)
- Clique em "Iniciar Upload"
- Acompanhe o progresso no log
- Senhas não são armazenadas localmente
- Conexões seguras via SSH/SFTP
- Configurações locais protegidas
Contribuições são bem-vindas! Siga estes passos:
- Fork o projeto
- Crie uma branch para sua feature (
git checkout -b feature/minha-feature) - Commit suas mudanças (
git commit -m 'Adiciona nova feature') - Push para a branch (
git push origin feature/minha-feature) - Abra um Pull Request
MIT License - veja o arquivo LICENSE para detalhes.
- Interface mais larga (900px)
- Divisão em duas colunas (configurações à esquerda, progresso/log à direita)
- Título no topo com ícone
- Rodapé com créditos e link para GitHub
- Separação clara entre UI, lógica e utilitários
- Código mais organizado e mantível
- Fácil extensão e manutenção
- Botão "Ajuda" com documentação integrada
- Link para GitHub no rodapé
- Botões para limpar e copiar log
- Informações detalhadas sobre arquivos/diretórios
- Tags de cores no log (info, success, error, warning)
- Barra de progresso com informações detalhadas
- Campos organizados com labels
- Botões com tamanhos consistentes
- Atualização automática do log
- Mensagens de status mais informativas
- Validações em tempo real
- Configurações persistentes