A high-level language and IDE for writing Bitcoin smart contracts.
Clone or download



Ivy is a higher-level language that allows you to write smart contracts for the Bitcoin protocol. It can compile to instructions for Bitcoin’s virtual machine, Bitcoin Script, and can be used to create SegWit-compatible Bitcoin addresses. Ivy was developed at Chain.

You can try out Ivy using the Ivy Playground for Bitcoin, which allows you to create test contracts and try spending them, all in a sandboxed environment.

You can learn more about Ivy and using the Ivy Playground for Bitcoin by reading the docs.

Ivy is prototype software and is intended for educational purposes only. Do not attempt to use Ivy to control real Bitcoins.

Bug reports and feature requests are welcome; you can create an issue or pull request on this repo.

You can also join the Ivy discussion channel on Discord.