🐍 PyMyFileBrowser
PyMyFileBrowser é um gerenciador de arquivos web poderoso e intuitivo desenvolvido em Python com Flask. Navegue, gerencie e visualize seus arquivos através de uma interface web moderna e responsiva, acessível de qualquer navegador.
✨ Características Principais
🗂️ Gerenciamento de Arquivos
- Navegação Intuitiva: Interface limpa inspirada em gerenciadores de arquivos modernos
- Upload de Arquivos: Suporte para upload único e múltiplo, incluindo pastas completas (drag & drop)
- Download Inteligente: Download individual ou múltiplo com compressão automática em ZIP
- Criação de Pastas: Crie novas pastas diretamente pela interface
- Exclusão Segura: Remova arquivos e pastas com confirmação
🔍 Busca e Organização
- Busca Local: Filtro rápido por nome na pasta atual
- Busca Global: Busca avançada recursiva em todas as pastas configuradas
- Ordenação Flexível: Ordene por nome, data ou tipo de arquivo
- Ícones Inteligentes: Identificação visual automática por tipo de arquivo (imagens, vídeos, código, documentos, etc.)
👁️ Visualização de Arquivos
Suporte nativo para visualização de diversos formatos:
- Imagens: JPG, PNG, GIF, BMP, SVG, WebP, ICO
- Vídeos: MP4, WebM, OGG
- Áudio: MP3, WAV, OGG, M4A
- Documentos: PDF
- Código: Python, JavaScript, HTML, CSS, JSON, XML, C/C++, Java e mais
- Texto: TXT, MD, LOG, INI
🚀 Recursos Avançados
- Múltiplas Raízes: Configure várias pastas raiz independentes via variável de ambiente
- Compressão Streaming: Download de pastas grandes com streaming ZIP (sem consumir memória)
- Seleção Múltipla: Selecione e baixe múltiplos arquivos/pastas de uma vez
- Data de Criação: Visualize quando cada arquivo foi criado
- Responsivo: Interface adaptável para desktop, tablet e mobile
- Hostname Display: Identifique facilmente qual servidor você está acessando
📋 Requisitos
- Python 3.6 ou superior
- Flask 3.0.3
- zipstream-new 1.1.8
📦 Instalação
Instalação via pip (Recomendado)
pip install pyzbrowser
Instalação para Desenvolvimento
# Clone o repositório
git https://github.com/ZdekPyPi/PyzBrowser.git
cd pymyfilebrowser
# Instale em modo desenvolvimento
pip install -e .
Instalação Manual
# Clone o repositório
git clone https://github.com/ZdekPyPi/PyzBrowser.git
cd pymyfilebrowser
# Instale as dependências
pip install -r requirements.txt
⚙️ Configuração
Pastas Raiz
Por padrão, o PyMyFileBrowser usa a pasta Downloads do usuário atual. Para configurar pastas personalizadas, defina a variável de ambiente PYBROWSER_ROOTS:
Windows (PowerShell)
$env:PYBROWSER_ROOTS='C:\Users\SeuUsuario\Downloads,C:\Users\SeuUsuario\Documents,D:\Projetos'
Windows (CMD)
set PYBROWSER_ROOTS=C:\Users\SeuUsuario\Downloads,C:\Users\SeuUsuario\Documents,D:\Projetos
Linux/macOS
export PYBROWSER_ROOTS='/home/usuario/Downloads,/home/usuario/Documents,/var/www/projetos'
Formato da Variável
A variável PYBROWSER_ROOTS deve conter caminhos separados por vírgula. O nome de cada pasta será extraído automaticamente do caminho.
Exemplos:
Windows:
PYBROWSER_ROOTS=C:\Users\John\Downloads,C:\Users\John\Documents,D:\Development\Projects
Linux/macOS:
PYBROWSER_ROOTS=/home/john/Downloads,/home/john/Documents,/var/www/projects
Uso com Argumento -r
Você também pode especificar uma pasta diretamente ao executar:
python -m pymyfilebrowser -r C:\MinhaPasta
ou
pymyfilebrowser -r /home/usuario/meus-arquivos
🚀 Uso
Executar como Módulo Python (Recomendado)
python -m pymyfilebrowser
Executar via Comando Instalado
pymyfilebrowser
Executar Diretamente (Desenvolvimento)
python run.py
Após iniciar, acesse em seu navegador:
http://localhost:5000
Para acessar de outros dispositivos na rede:
http://[IP-DO-SEU-PC]:5000
🛠️ Desenvolvimento
🔒 Segurança
- Path Traversal Protection: O sistema valida todos os caminhos para evitar acesso fora das pastas raiz
- Filename Sanitization: Nomes de arquivos são sanitizados usando
secure_filename()do Werkzeug - Input Validation: Validação em todas as rotas POST
- ⚠️ Aviso: Este sistema foi projetado para uso em redes locais confiáveis. NÃO exponha diretamente à internet sem autenticação adequada
🤝 Contribuindo
Contribuições são bem-vindas! Para contribuir:
- Faça um Fork do projeto
- Crie uma branch para sua feature (
git checkout -b feature/NovaFeature) - Commit suas mudanças (
git commit -m 'Adiciona nova feature') - Push para a branch (
git push origin feature/NovaFeature) - Abra um Pull Request
📝 Licença
Este projeto está licenciado sob a Licença MIT - veja o arquivo LICENSE para detalhes.
🐛 Reportar Bugs
Encontrou um bug? Por favor, abra uma issue com:
- Descrição do problema
- Passos para reproduzir
- Comportamento esperado vs atual
- Screenshots (se aplicável)
- Informações do sistema (OS, versão do Python)
💡 Roadmap
- Autenticação de usuários
- Suporte a temas (claro/escuro)
- Editor de texto integrado
- Visualização de mais formatos (Office, etc.)
- Compartilhamento de links temporários
- Upload com barra de progresso
- Preview de thumbnails para imagens
- Drag & drop para reorganizar arquivos
📧 Contato
Para questões, sugestões ou feedback, entre em contato através das issues do GitHub.
Desenvolvido com ❤️ e 🐍 Python
Change Log
1.0.0 (2026-02-02)
- First Release
Metadata
Release files for pyzbrowser 1.0.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| pyzbrowser-1.0.3.tar.gz | 21.4 kB | With provenance | Details for pyzbrowser-1.0.3.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| pyzbrowser-1.0.3-py3-none-any.whl | Python 3 | none | any | Details for pyzbrowser-1.0.3-py3-none-any.whl |
Total release size: 39.9 kB
Release files / pyzbrowser-1.0.3.tar.gz
| Download URL | pyzbrowser-1.0.3.tar.gz |
|---|---|
| Size | 21.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b390130b36ac7ed099666abdde88ca847924dc8d353afdb74babd55c6185154d
|
|
BLAKE2b-256 checksum How to use checksums |
b77c70b518880e17183d695cc72874f8e721fa889db9b0a7b26cfb6a30012816
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Feb 5, 2026.
Transparency logRelease files / pyzbrowser-1.0.3-py3-none-any.whl
| Download URL | pyzbrowser-1.0.3-py3-none-any.whl |
|---|---|
| Size | 18.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
e6a38883baaf964081df1bf9e81b9420c9e932b7e4570f722feed08668d42d81
|
|
BLAKE2b-256 checksum How to use checksums |
758895d2d7f7d7f5b355e8a7fd1528adea82e8fa2d4cc2bec55a8e49844c6f82
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Feb 5, 2026.
Transparency logSecurity for pyzbrowser 1.0.3
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
All 2 files in this release have been uploaded with provenance metadata.
Attestation for pyzbrowser-1.0.3.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Feb 5, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.