Announcing Wasmd Release

Ethan Frey
CosmWasm
Published in
3 min readFeb 11, 2020
Photo by Vidar Nordli-Mathisen on Unsplash

CosmWasm is a new smart contracting system built upon the Cosmos SDK. We announced the general release of the Rust contract system in December, along with extended developer information. This was well received and since then over 50 developers have entered our Telegram group and a number have built out contracts using the CosmWasm framework. This has lead to a number of improvements in the smart contract framework as a whole, but especially in the blockchain integration.

Wasmd is a Cosmos SDK based blockchain application that supports CosmWasm contracts. The base of the code is forked from Cosmos Hub’s gaia with the addition of one module, x/wasm that adds smart contract support. Since December a number of people have run this application in local dev-nets, but it was not stable enough to use as an import, since it was based on Cosmos SDK master branch. Today, we are releasing v0.6.0 of wasmd, which is based on the just-released v0.38.1 Cosmos SDK. This means that any chain with their own application updated to the newest release can simply import x/wasm and with a few lines in app.go enable smart contracts on their custom blockchain.

You can check out wasmd today and run through the tutorial to get a feel of how it works. The binaries are also available as a docker image which is designed for local testing (not production-ready). If you do integrate it with your zone, please let me know, so I can add you to a list of chains supporting CosmWasm.

Many thanks to all the contributors who helped make this release possible, but especially to Simon Warta, who has volunteered many hours, not only writing smart contracts, but also refining the cosmwasm-vm, working on AssemblyScript support, and building out a TypeScript SDK to interact with the blockchain.

Going Full Stack

That’s right, a full-featured TypeScript SDK. For all you frontend devs struggling with integrations with your Cosmos SDK applications, we are delivering. We have a powerful, but easy-to-use TypeScript interface for queries, signing, and posting transactions on a wasmd based chain. This is still in development, and we will be making an bigger announcement next week when there are some good examples with webapps. Currently, the best demo is using this in a Node.js CLI tool. Take a look at this video to see how you can go from deploying a contract to writing a JavaScript client in no time at all:

A simple demo using smart contracts from a node REPL

Public Network

Along with this release, we will be rolling out a first demo-net. This is not anything big and fancy, but rather a simple endpoint where multiple developer and projects can all upload their contracts and use as a backend for their frontend apps. The point is to make it easy for anyone to do a live demo of their CosmWasm dApp on a blockchain. To provide a basis for collaboration and exploration. Stay tuned, it should be coming later this week.

A big thanks for the ICF for the grant funding to turn CosmWasm from a hackatom demo into a functioning product.

--

--