Skip to content
This repository was archived by the owner on Nov 17, 2022. It is now read-only.
Jiang Jinyang edited this page Jun 23, 2018 · 8 revisions

Welcome to the ciri wiki!

Roadmap

Ciri project aimed to implement a full feature set Ethereum client, so our first target is to bring it to Ethereum main-net as soon as possible, There are some hard problems need to work out.

Implement the Minimal Ethereum

Currently, we have an almost completed EVM, the next big part is to passes the state tests and chain tests provide by Ethereum tests project(passes those tests can encourage us Ciri is following the Ethereum specs).

There are other missing components:

JornalDB

A revert-able state database implementation used to handle blockchain reorg(fork).

Chain struct

We also already have a minimal implemented Chain, need more works to make it passes the chain tests.

EVM

Also, need more works to passes the Ethereum state and chain tests.

P2P network

Ethereum P2P network is complex and confuses, consider to integrate libp2p as low-level network component.

Still need to implement Ethereum protocol upon p2p: light client, full client, sharding...

Future works

POS and Sharding

POS and Sharding are both complexes (I think even more complex than current Ethereum), and still in WIP phase, not have stable specs, so we don't consider too much about POS and Sharding before Ciri lives on main-net.

Run Ciri client upon JRuby or TruffleRuby

To gain more effective performance, we can run Ciri client upon JRuby and TruffleRuby.

Attract more contributors

This is the really hard part, there are not many developers both familiar Ethereum and Ruby, maybe we can attract more contributors after Ciri lived on main-net.

Want to contribute to this project? Talk to me on Gitter I'll help you.

Clone this wiki locally