magic-wormhole-npm
This is an npm package which provides easy access to magic-wormhole, using binaries from the Go implementation (wormhole-william).
Use
If you have a recent (≥ 7) version of npm
installed, you should be able to run npx magic-wormhole
on any supported platform to run magic-wormhole. For example, npx magic-wormhole send foo.zip
will prepare foo.zip
to be sent. See the magic-wormhole docs for more about magic-wormhole.
Details
Each supported platform has a seperate npm package which specifies os/cpu it supports in its package.json
. All such packages are listed as optional dependencies of this package. Assuming you're using a recent version of npm
, it should download only the dependency which matches your platform, and the shim will execute it.
This approach was copied from esbuild, though esbuild goes to considerably greater lengths to support unusual situations.
Building this project
You'll need to have node
and go
installed, and you will need wormhole-william cloned to a sibling of this directory (or modify the WILLIAM_DIR
variable in build.js.
Then run node build.js
to build everything. That will create package.json
and platforms.json
in this directory, and a build/
subdirectory containing all the various per-platform packages.