The future of the decentralized internet is clearly multi-chain. Polkadot is one of the budding blockchain ecosystems, constantly pushing the boundaries of Web3 infrastructure. At the core of Polkadot are the Relay Chain, responsible for the network’s shared security, and the Parachains – sovereign blockchains that can have their own applications.
In late 2022, LimeChain secured a grant from the Polkadot Treasury to work on a framework for building Substrate-compatible Runtimes in Go. The first phase of this ambitious endeavor called Gosemble was to build a Substrate-compatible Runtime in Go. Phase 1 is now complete and for more details, check out the github repo and the detailed treasury report.
The ultimate goal for Gosemble is to become a full-fledged framework, empowering the Polkadot developer community to build parachains and solo chains in Go.
Although Rust is a popular and loved programming language, developing runtimes with it can be quite challenging. Our idea is to ease the learning curve by providing an easier alternative for Polkadot runtime development with Golang. We believe that this could increase developer adoption and help grow the Polkadot ecosystem.
The architecture of Polkadot can be divided into two parts: the Polkadot runtime and the Polkadot host. The Polkadot runtime is the core state transition logic of the chain and can be upgraded over time without the need for a hard fork. On the other hand, the Polkadot host is the environment in which the runtime executes and is expected to remain stable and mostly static throughout the lifetime of Polkadot.
Currently, Gosemble supports the Balances module and can be “combined” with a Substrate host. The consensus algorithm currently supported is AuRa. Future steps include the addition of other modules such as Staking or Governance, and the possibility of plugging the runtime in Gossamer host with BABE & GRANDPA as consensus algorithms. The final form will be a test relay chain integration and the development of a complete parachain using Gosemble. (for testing purposes only. At this point LimeChain has no plans to build and operate a parachain.)
LimeChain has been part of the Polkadot ecosystem for more than two years and we’ve been overwhelmed by the support we’ve received so far. We’re committed to continue on our mission to make the ecosystem more inclusive to developers and empower them to build in more than one language.
Over the next year, LimeChain will be continuing its work on Gosemble in order to make it a viable framework for runtime development. In addition, we’re continuing our work on Fruzhin – a Polkadot Host implementation in Java, as well our Parachain Validation Conformance Testing kit.
Get in touch!
If you’re a parachain or a solo chain developer in the Polkadot ecosystem – we want to talk to you and understand your challenges, pain points and do our best to help you on your journey! If you’re a developer considering Polkadot (and any of its Parachains) as a network for your project – we can help guide you along the way as well!
Feel free to write us at email@example.com