Your files, scattered across the world.
Decentralized file sharing. End-to-end encrypted. Powered by people, not servers.
Scatter is a distributed file sharing platform where your files are:
- Encrypted on your device with AES-256-GCM before leaving
- Split into shards using Reed-Solomon erasure coding
- Scattered across contributor hardware around the world
- Retrievable from anywhere with just a link
No one can read your files. The decryption key lives in the URL fragment, which browsers never send to servers.
- Privacy by default. Zero-knowledge architecture means the server literally cannot see your data.
- Resilient. Files are split with erasure coding — even if some nodes go offline, your file still works.
- Community-powered. Anyone can contribute storage and earn credits toward larger uploads.
- Self-hostable. The whole stack runs on a single server. Roll your own Scatter for your team or community.
┌─────────────┐ ┌──────────────┐ ┌──────────────┐
│ Browser │────▶│ Coordinator │◀────│ Node Apps │
│ (encrypts) │ │ (relays) │ │ (store data) │
└─────────────┘ └──────────────┘ └──────────────┘
- You drop a file in the browser. It's encrypted client-side with a random key.
- The encrypted file is split into 14 shards (10 data + 4 parity) via Reed-Solomon.
- The coordinator assigns each shard to a different node in the network.
- You get a link like
scatter.tools/f/ABC12345#[key]. Share it. - On download, shards are pulled from nodes, reassembled, and decrypted — all in the browser.
Any 10 of the 14 shards are enough to rebuild the file, so up to 4 nodes can go offline without data loss.
The quickest way to use Scatter is through the hosted service at scatter.tools — no install needed.
Want to contribute storage and earn credits? Run a node.
📦 Coming soon. Pre-built binaries for macOS, Linux, and Windows.
Once released, you'll be able to install via:
macOS / Linux (Homebrew):
brew install scatterLinux (Direct):
curl -fsSL https://scatter.tools/install.sh | shWindows (Scoop):
scoop install scatterOr grab a binary from the releases page.
# Headless mode — set and forget
scatter start --storage 50GB
# Terminal UI with live stats
scatter start --storage 50GB --tui
# Sign in to earn credits toward bigger uploads
scatter loginModes:
headless— no UI, logs onlytui— terminal UI with live network statsgui— desktop app (default) (planned)
git clone https://github.com/YOUR_USERNAME/scatter.git
cd scatter
pnpm installpnpm dev:webOpen http://localhost:3000.
pnpm dev:apipnpm dev:node- Landing page
- Protocol: encryption + sharding + manifests
- Coordinator API
- Node app (headless + TUI)
- Web upload/download flow
- Credits system
- Desktop GUI app
- Public launch
- Direct P2P transfers (skip the relay)
- Mobile app?
Contributions are welcome! Whether it's code, bug reports, docs, or design feedback.
- Fork the repo
- Create a feature branch (
git checkout -b feat/cool-thing) - Commit your changes (
git commit -m 'feat: add cool thing') - Push to the branch (
git push origin feat/cool-thing) - Open a pull request
Found a security issue? Please do not open a public issue. Email security@scatter.tools instead.
Scatter is designed with zero-knowledge principles, but cryptography is hard. We welcome audits and reviews.
AGPL-3.0 — if you run a modified version as a service, you have to share your changes. Keeps the ecosystem open.