Caravan - Stateless Multisig Coordinator
Caravan is making bitcoin multisig custody easier and safer through transparency and standards.
Caravan is a coordination software. It connects to a source of consensus and your keys to build and interact with multisig bitcoin addresses.
Caravan is also stateless. It does not itself store any data. You must safekeep the addresses (and redeem scripts & BIP32 paths) you create.
Unchained Capital GitHub
Your Own GitHub
If you would prefer to host your own copy of Caravan on GitHub, you
can do so by first forking the
into your own GitHub organization. You should see a copy of the
Caravan web application at
If not, go to the (newly forked) repository's "Settings" page and scroll down to the "GitHub Pages" section. Ensure you see a message saying "Your site is published at ...".
You can always clone the source code of Caravan to your local machine
and run it from there. You will require a recent
$ git clone https://github.com/unchained-capital/caravan ... $ cd caravan $ npm install ... $ npm start ...
https://localhost:3000 to interact with your local copy of
Once you have downloaded the source code and used
npm to install
dependences (see section above), you can pre-build the React
application for a production deployment and then host the contents of
build directory via a webserver such as
$ npm run build ...
If you can access the Caravan web application in your browser, you are ready to start using Caravan.
Click the Create or Interact links in the navbar to get started.
See our YouTube playlist for some tutorial videos.
Caravan can connect to several different hardware wallets and key management software.
Trezor One (installing the Trezor Bridge is required to interact with a Trezor device)
Caravan also accepts public keys and signatures as text so any wallet which can export these data can be made to work with Caravan.
By default, Caravan uses a free API provided by blockstream.info whenever it needs information about the bitcoin blockchain or to broadcast transactions.
You can ask Caravan to use your own private bitcoind full node.
Adding CORS Headers
When asking Caravan to use a private bitcoind node you may run into CORS issues.
To correct this problem, you must add appropriate access control
headers to your node's HTTP responses. When running Caravan on your
local machine, for example, you may need to set
A particularly simple way to proxy requests to a private bitcoind node
is to make use of the
npm module. Instructions to install and run the module are on its
If you are running a local bitcoind node on your local machine on port 8332,
and you run
corsproxy with the default settings, you should be able to
point caravan at 'http://localhost:1337/localhost:8332'.