copyparty README

The project's README from github.com/9001/copyparty. As one markdown file: README.md.

💾🎉 copyparty

turn almost any device into a file server with resumable uploads/downloads using any web browser

👉 Get started! or visit the read-only demo server 👀 running on a nuc in my basement

📷 screenshots: browser // upload // unpost // thumbnails // search // fsearch // zip-DL // md-viewer

🎬 videos: upload // cli-upload // race-the-beam // 👉 feature-showcase (youtube)

built in Norway 🇳🇴 with contributions from not-norway

readme toc

quickstart

just run copyparty-sfx.py -- that's it! 🎉

ℹ️ the sfx is a self-extractor which unpacks an embedded tar.gz into $TEMP -- if this looks too scary, you can use the zipapp which has slightly worse performance

enable thumbnails (images/audio/video), media indexing, and audio transcoding by installing some recommended deps:

running copyparty without arguments (for example doubleclicking it on Windows) will give everyone read/write access to the current folder; you may want accounts and volumes

or see some usage examples for inspiration, or the complete windows example

some recommended options:

mirrors

other places to download copyparty from (non-github links):

DO NOT download from sourceforge

at home

make it accessible over the internet by starting a cloudflare quicktunnel like so:

first download cloudflared and then start the tunnel with cloudflared tunnel --url http://127.0.0.1:3923

as the tunnel starts, it will show a URL which you can share to let anyone browse your stash or upload files to you

but if you have a domain, then you probably want to skip the random autogenerated URL and instead make a permanent cloudflare tunnel

since people will be connecting through cloudflare, run copyparty with --xff-hdr cf-connecting-ip to detect client IPs correctly

on servers

you may also want these, especially on servers:

because the following environment variables are commonly used in service-scripts, they are understood by copyparty:

and remember to open the ports you want; here's a complete example including every feature copyparty has to offer:

firewall-cmd --permanent --add-port={80,443,3921,3922,3923,3945,3990}/tcp  # --zone=libvirt
firewall-cmd --permanent --add-port=12000-12099/tcp  # --zone=libvirt
firewall-cmd --permanent --add-port={69,1900,3969,5353}/udp  # --zone=libvirt
firewall-cmd --reload

(69:tftp, 1900:ssdp, 3921:ftp, 3922:sftp, 3923:http/https, 3945:smb, 3969:tftp, 3990:ftps, 5353:mdns, 12000:passive-ftp)

features

also see comparison to similar software

copyparty (9001/copyparty)

systemd
Searching Database…

47.1K ·GitHub
What is this?copyparty is a portable, single-file server that turns almost any device into a full-featured file server, supporting resumable uploads/downloads over HTTP(S), WebDAV, SFTP, FTP(S), TFTP and SMB, with a built-in media player, thumbnails and search.
Is this a web app, a CLI tool, or something else?It's a single self-contained Python program (copyparty-sfx.py or copyparty.exe) run from the command line; it then serves a web UI plus WebDAV/FTP/SFTP/TFTP endpoints with no separate install or daemon setup.
How do I get it running?Download the sfx (copyparty-sfx.py) and run it directly, or install via pip, use copyparty.exe on Windows, grab the Arch/Homebrew/Nix packages, run it in Docker, or use uv tool run copyparty.
Do I need to install anything besides Python?No - it only needs Python 2 or 3 to run; everything else, like Pillow for thumbnails or FFmpeg for media indexing, is optional and only unlocks extra features.
What happens if I just run it with no setup?Running copyparty with no arguments (e.g. double-clicking it on Windows) gives everyone read/write access to the current folder, so you'll want to set up accounts and volumes before exposing it.
What devices and OSes can run this?It runs on Windows (exe or sfx), Linux, macOS, FreeBSD, via Arch/Homebrew/Nix packages, and can be installed on Android through Termux, plus there are iPhone/iPad shortcuts since there's no native iOS app.
Is it safe to expose directly to the internet by default?Not without reading the gotchas - the README calls out things like CSP nonce handling and CORS config you should check before exposing copyparty publicly.
Are all the bundled features MIT-licensed?The core project is MIT-licensed, but the README separates out some optional extras as 'optional gpl stuff', so not every bundled feature carries the same license.
What does the unpost feature do?Unpost lets you undo or delete an accidental upload shortly after it happens, straight from the browser UI.
How fast is copyparty?The README notes defaults are usually fine, with roughly 8 GiB/s download and 1 GiB/s upload speeds expected under normal conditions.
Can it deduplicate files automatically?Yes, enabling file indexing lets copyparty use symlink-based deduplication so re-uploaded files don't take up extra disk space.
Does it do more than just serve files?Yes - it includes a media player that plays nearly every audio format with m3u8 playlist support, a markdown viewer/editor, RSS/OPDS feeds, and a file manager with cut/paste/rename.
What are similar projects?sftpgo, alist, dufs, filestash, rclone, spacedrive, duplicati, kubo
Creator
9001
Size
9.5 MB
Stars
47.1K
Age
7y
Commits · 90 Days