Future Vision for Lodestar
Authored by Gregory
Written By Gregory Markou, edited by Cayman and Colin Schwarz
Since December we (ChainSafe) have made great headway in building our Javascript/Typescript ETH2.0 client. Early on, the process was bumpy. The spec was changing rapidly (pre-release), we still didn't know what the design of the beacon chain would ultimately look like, and frankly, we just started writing code too early. None the less, a lot of this has changed, and we're making great strides now as a unified team (implementors and researchers). I frequently receive questions about why we chose to support ETH2.0 for node.js and for web, and its an important question to answer.
The UX surrounding all blockchains is known for being pretty brutish for the most part, and only recently, in the last year, has this started to change. Unfortunately, sharding, state rent and a multitude of new ETH2.0 features and usage patterns threatens to undo much of this progress. We will be required to rethink the way we interact with the blockchain and the way we design our tools. The current 1.x ecosystem dev tooling is comprised of many javascript-based libraries, and many of the teams maintaining these libraries aren't even thinking about ETH2.0. This is a problem. Over the last few weeks we have been chatting with a host of different dev tooling teams on what ETH1.x missed, what they would like to see in ETH2.0, and how we can help.
This is why we are writing a browser compatible ETH2.0 client (and light client) - so the tooling teams can get direct access: to fork, make modifications and ultimately get the native support they need to make the transition to an ETH2.0 future. Naturally, we're a bit early, but we think it's a great opportunity to start getting feedback, making the cross-team connections, and beginning to build out the scaffolding required. With the Beacon Chain launch quickly approaching in Q4, we need to launch with solid tooling, and we need to focus on the UX so that our users adopt the new chain.
Since we're building a Javascript client, Lodestar is uniquely positioned to bridge the gap from ETH1.x tooling to ETH2.0, and we see it as our future. The ChainSafe team is committed to helping launch barebones POC's of major tooling (web3.js/ethers.js, metamask, etc...) and working with existing teams to make the transition to ETH2.0 easier. To support this, we will be gathering community feedback, implementing any necessary functionality into lodestar, and creating example applications for developers. The goal is a seamless experience out of the gate.
Lodestar GitHub
If you're a tooling team and want to join the conversation, we're on discord https://discord.gg/wrSdrEs (#ETH2 channel) and gitter https://gitter.im/chainsafe/lodestar
If you want to help us out, please feel free to donate https://gitcoin.co/grants/79/lodestar-eth20-client