The original post: /r/selfhosted by /u/proofrock_oss on 2025-02-25 12:58:59.
Hello r/selfhosted community,
I’d like to introduce fileway, a self-hosted, real-time file transfer service designed for seamless and secure file sharing directly from your command line or browser. I built it for myself, but I hope it may be useful to you, too.
What is Fileway?
Fileway enables two parties to exchange files through an intermediary server without storing data or requiring direct access to each other’s systems. Think of it as a live-streaming, cli-enabled version of WeTransfer™, but entirely under your control.
A quick hands-on demo/tutorial.
It’s written in Go, Python3, HTML and Javascript; it’s packaged as a docker image for convenience (but can be used directly, too), and should be really light on resources. Apache v2 license.
Use cases
- transfer files between two servers which can’t access each other;
- send files to another user, in a safe way;
- send with a browser and receive with
curl
, or send with a script and receive with a browser, or mix and match.
Key Features
- Real-Time Transfers: Files are transmitted directly between users, ensuring immediate delivery without intermediate storage.
- Versatile Access Use the service via a web browser or command line interface, catering to different use cases.
- Self-Hosted: Maintain full control over your data by hosting the service on your own server.
- Revproxy enabled: There’s a docker image that embeds
caddy
, or you can use it with your existing revproxy. I am using and testingcaddy
andcloudflared
, others should work without issues.
For detailed instructions and advanced configurations, please refer to the GitHub repository. I hope the documentation is useful, just let me know if you think it should have a different layout.
I’ll be delighted to hear your feedback and answer any questions you might have. Thanks!
Note: This project is in active development, and contributions are welcome. Feel free to check out the code!