{"repo":"stateless-consensus/phant","free":true,"listed":false,"github":"https://github.com/stateless-consensus/phant","clone":"git clone https://github.com/stateless-consensus/phant.git","description":"A stateless Ethereum execution client","language":"Zig","stars":34,"topics":["blockchain","ethereum","stateless"],"license":"MIT","category":"blockchain-web3","readme_excerpt":"phant An experimental Zig Ethereum client. Setup This repo is very experimental, so you have to do some things once. We use the Zig v0.13 compiler version. Initialize git submodules After pulling this repo for the first time, do: 1. git submodule init 2. git submodule update -v Running tests You can run something here with: - zig build test : it attempts to run a particular exec-spec-tests fixture exec-spec/tests/fixtures/exec-spec/fixture.json , which is an official spec test fixture. This does a bunch of decoding into EVM types, creates a statedb with pre-state (and post-state for posterior check), and tries to execute the block transactions. Now, everything is quite messy until we have a passing test for this official exec-spec-test fixture. Probably after that, we can refactor a bit the code to create proper modules and define some clear path forward in each module. Running the client To run the (wip) client, type By default, the network is mainnet. You can run the sepolia chain configuration by using the network id option: Any other network requires its own chainspec file. You can run a custom chainspec by using the chainspec option: License MIT","default_branch":null,"files":null,"tree":[],"storefront":"/r/stateless-consensus","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/stateless-consensus/phant/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}