Skip to content

Rust implementation of Magic Wormhole, with new features and enhancements

License

Notifications You must be signed in to change notification settings

magic-wormhole/magic-wormhole.rs

Repository files navigation

Rusty Wormhole

Get things from one computer to another, safely.

http://magic-wormhole.io/

This is a Rust port of the Python version at https://github.com/magic-wormhole/magic-wormhole.

Comparison with the Python implementation

Features that are missing:

  • Text message sending
  • Folder sending (we can send folders, but it will send a tar ball which the other side will have to manually unpack)
  • Tor support

New features that exceed the other implementations:

  • Can do direct connections across the internet (NATs) and firewalls
  • Automatically copies your code to the clipboard
  • Port forwarding in addition to file transfer (experimental)
  • Send a file to multiple people (experimental)
  • Fuzzy wormhole code completion

Getting started

If you want to toy with the CLI, cargo run -- --help will get you started. The code sits in ./cli/src. For more instructions see cli/README.md.

If you'd like to use Wormhole in your application, cargo doc --open will tell you how to use it. There aren't any hosted docs at the moment.

If you don't fear touching code and want to contribute, ./src/lib.rs, ./src/transfer.rs and ./src/transit.rs are rather easy to get into. The protocol specification will probably be useful to you.

Applications using Wormhole Rust as library

(feel free to add yours)

License

This work is licensed under the EUPL v1.2 or later. Contact the owner(s) for use in proprietary software.


Matrix Irc Build Status Deps Codecov Is-It-Maintained-Resolution-Time Crates.io Docs.rs