hop#
quick file upload to remote server via rsync.
installation#
hop is macos-only (uses pbcopy for clipboard, macos screenshot/record tools).
bun install
bun run build
# move the binary to your path
install hop /usr/local/bin/
configuration#
on first run, hop will create a config file at ~/.config/hop/config.json:
{
"server": "user@domain.tld",
"remotePath": "/var/www/",
"baseUrl": "https://domain.tld"
}
edit this file with your server details.
usage#
hop - quick file upload to remote server via rsync
usage: hop [options] <file>
options:
-h, --help show this help message and exit
-v, --verbose enable verbose output
-k, --keep-filename keep original filename (don't hash)
-f, --filename <name> use custom filename
-s, --screenshot capture fullscreen and upload
-sr, --screenshot-region capture region/window and upload
-r, --record record screen (silent)
-ra, --record-audio record with microphone audio
output:
✓ uploaded file.png to https://domain.tld/hash.png
the url is also copied to your clipboard automatically.
features#
- sha256 hash-based filenames - content-addressable storage with 7-character hashes
- rsync upload with progress - visual spinner showing upload progress
- detailed error messages - human-readable rsync error codes (permission denied, connection failed, etc.)
- automatic clipboard copy - url copied to clipboard on macos (via pbcopy)
- verbose mode - debug rsync issues with
-vflag