Documentation
SpeedyFiles is a self-hosted, open-source file-transfer service. Send and request large packages from customers and partners with expiring magic-link emails. Run it on your own server with your own storage and your own mail. MIT licensed. No per-seat fees, no data-flowing-through-third-parties.
🚀 Quickstart
From zero to running in five minutes. Docker + first-run wizard.
📦 Full install
Production deployment: nginx, TLS, systemd, S3, SMTP.
📧 Mail setup
Configure any SMTP server with the admin UI. Test sends.
⚙️ REST API
Programmatic package & file management. OpenAPI-documented.
What's in the box
- Web UI — admin and regular-user dashboards. Send packages, request uploads, manage users, edit settings.
- Magic-link sharing — recipients get a token-protected URL via email. Expires on a configurable TTL. Revocable.
- Local or S3 storage — toggle per package or globally.
- BYO-SMTP — works with any mail server (Gmail / Postmark / SES / your Postfix).
- REST API — token-authenticated, OpenAPI 3 documented at /api/.
- Webhooks — POST to your URLs when packages are created/downloaded/expired.
- Audit log — every action recorded with IP, user-agent, and details JSON.
System requirements
- OS: any Linux that runs Docker. Tested on Ubuntu 22.04 / 24.04 and Debian 12.
- Resources: ~100 MB RAM idle. Single Python process. Disk = however big you want your file store.
- Optional: reverse proxy (nginx / Caddy / Traefik) for TLS termination. S3-compatible bucket for object storage.
License
MIT. You can use this commercially, modify it, redistribute it, sub-license it. We'd love a star on GitHub if it's useful to you — but you owe us nothing.
Improve these docs: edit on GitHub.