assets | ||
src | ||
.gitignore | ||
Cargo.lock | ||
Cargo.toml | ||
ffsend-webpack-config.js | ||
README.md |
Rust-Send
![Project license][repo-license-badge]
This is an ongoing effort to rewrite the backend of Mozilla's [Firefox Send][mozilla-send] in Rust with the long-term goal of adding additional features like authentication and user accounts. Mozilla discontinued Send; this project is based on [this fork][https://gitlab.com/timvisee/send/], which is a community effort to keep Send up-to-date and alive.
Right now the new Rust backend isn't working yet.
- Forked [at][fork-commit] Mozilla's last publicly hosted version
- Mozilla & Firefox branding [is][remove-branding-pr] removed so you can legally self-host
- Kept compatible with [
ffsend
][ffsend] (CLI for Send) - Dependencies have been updated
- Mozilla's [changes][mozilla-patches] since the fork have been selectively [merged][mozilla-patches-pr]
- Mozilla's experimental report feature, download tokens, trust warnings and FxA changes are not included
The original project by Mozilla can be found [here][mozilla-send].
The [mozilla-master
][branch-mozilla-master] branch holds the master
branch
as left by Mozilla.
The [send-v3
][branch-send-v3] branch holds the commit tree of Mozilla's last
publicly hosted version, which this fork is based on.
The [send-v4
][branch-send-v4] branch holds the commit tree of Mozilla's last
experimental version which was still a work in progress (featuring file
reporting, download tokens, trust warnings and FxA changes), this has
selectively been merged into this fork.
Please consider to [donate][donate] to allow me to keep working on this.
Thanks [Mozilla][mozilla] for building this amazing tool!
Docs: FAQ, Encryption, Build, Docker, More
Table of Contents
What it does
A file sharing experiment which allows you to send encrypted files to other users.
Building
The files in ./assets/static are build in the original [Send repository][https://gitlab.com/timvisee/send/]:
ff-send$ cp ../rust-send/ffsend-webpack-config.js webpack.config.js
ff-send$ sed -i 's/navigator.serviceWorker.register(\'\/serviceWorker.js\')/navigator.serviceWorker.register(\'\/static\/serviceWorker.js\')/' app/main.js
ff-send$ npm install
ff-send$ npm run build
ff-send$ cp -r dist ../rust-send/assets/static
The backend is build with cargo:
rust-send$ cargo build [--release]
Instances
Find a list of public instances of the original JS implementation here: https://github.com/timvisee/send-instances/
Clients
- Web: this repository
- Command-line:
ffsend
- Android: see Android section
- Thunderbird: FileLink provider for Send
License
Mozilla Public License Version 2.0
qrcode.js licensed under MIT