Simple and fast web-based file browser and transfer tool.
ezdrop.mp4
go install github.com/iamwavecut/ezdrop@latestDownload the latest release for your platform:
-
Linux
- amd64:
curl -L https://github.com/iamwavecut/ezdrop/releases/latest/download/ezdrop-linux-amd64.tar.gz | tar xz && sudo mv ezdrop /usr/local/bin/
- arm64:
curl -L https://github.com/iamwavecut/ezdrop/releases/latest/download/ezdrop-linux-arm64.tar.gz | tar xz && sudo mv ezdrop /usr/local/bin/
- amd64:
-
Windows (Run in PowerShell as Administrator)
- amd64:
Invoke-WebRequest -Uri https://github.com/iamwavecut/ezdrop/releases/latest/download/ezdrop-windows-amd64.zip -OutFile ezdrop.zip; Expand-Archive ezdrop.zip -DestinationPath $env:USERPROFILE\ezdrop; Move-Item $env:USERPROFILE\ezdrop\ezdrop.exe $env:USERPROFILE\AppData\Local\Microsoft\WindowsApps\
- arm64:
Invoke-WebRequest -Uri https://github.com/iamwavecut/ezdrop/releases/latest/download/ezdrop-windows-arm64.zip -OutFile ezdrop.zip; Expand-Archive ezdrop.zip -DestinationPath $env:USERPROFILE\ezdrop; Move-Item $env:USERPROFILE\ezdrop\ezdrop.exe $env:USERPROFILE\AppData\Local\Microsoft\WindowsApps\
- amd64:
-
macOS
- amd64:
curl -L https://github.com/iamwavecut/ezdrop/releases/latest/download/ezdrop-darwin-amd64.tar.gz | tar xz && sudo mv ezdrop /usr/local/bin/
- arm64:
curl -L https://github.com/iamwavecut/ezdrop/releases/latest/download/ezdrop-darwin-arm64.tar.gz | tar xz && sudo mv ezdrop /usr/local/bin/
- amd64:
Run the server:
ezdrop -chroot /path/to/serveOptions:
-chroot(required): Base directory to serve-port(optional): Port to listen on (default: 8080)-readonly(optional): Enable read-only mode (default: false)
Examples:
# Run with custom port
ezdrop -chroot /home/user/files -port 3000
# Run in read-only mode
ezdrop -chroot /home/user/files -readonly- File browser with list/grid views
- Multi-file upload/download with progress tracking
- Chunked file upload support for large files
- Directory upload support
- Sort by name/size/date
- File selection patterns (glob)
- Supports any file type and size
- Chunked upload with automatic size optimization
- Checksum verification for data integrity
- Upload progress tracking:
- Overall progress across all files
- Per-file progress with chunk information
- Visual progress bars
- File size and transfer speed display
- Automatic retry on failed chunks
- Drag and drop support
- Keyboard navigation
- Arrow keys: Move cursor
- Space: Toggle selection
- Enter: Open directory/download file
- Backspace: Navigate up
- Home/End: Jump to start/end
- PageUp/PageDown: Move by page/column
- Ctrl+A: Select all
- +/-: Select/deselect by pattern
- Dark/light theme toggle
- List and grid view modes
- Responsive design
- Progress indicators
- File size formatting
- Date/time display
- Single click: Set cursor
- Double click: Open/download
- Shift+click: Range select
- Ctrl+click: Toggle selection
- Drag select: Multiple files
- Pattern selection (.txt, doc, etc.)
- Enforced chroot directory
- Path traversal protection
- Rate limiting
- Security headers
- Read-only mode
Built with:
- Go 1.23+
- Modern JavaScript (no frameworks)
- CSS Grid/Flexbox
MIT License