{"id":17254418,"url":"https://github.com/mtlynch/zenith","last_synced_at":"2025-10-28T08:42:16.186Z","repository":{"id":222036318,"uuid":"756057400","full_name":"mtlynch/zenith","owner":"mtlynch","description":"An implementation of the Ethereum virtual machine in pure Zig.","archived":false,"fork":false,"pushed_at":"2025-01-22T01:53:22.000Z","size":255,"stargazers_count":32,"open_issues_count":9,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-10T01:55:10.730Z","etag":null,"topics":["ethereum","zig"],"latest_commit_sha":null,"homepage":"","language":"Zig","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mtlynch.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-02-11T21:07:46.000Z","updated_at":"2025-03-05T09:21:18.000Z","dependencies_parsed_at":"2024-03-22T01:29:18.932Z","dependency_job_id":"1a088412-6009-4b66-8050-598b4d8e1849","html_url":"https://github.com/mtlynch/zenith","commit_stats":null,"previous_names":["mtlynch/eth-zvm","mtlynch/zenith"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mtlynch%2Fzenith","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mtlynch%2Fzenith/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mtlynch%2Fzenith/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mtlynch%2Fzenith/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mtlynch","download_url":"https://codeload.github.com/mtlynch/zenith/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248826602,"owners_count":21167719,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ethereum","zig"],"created_at":"2024-10-15T07:08:49.182Z","updated_at":"2025-10-28T08:42:11.148Z","avatar_url":"https://github.com/mtlynch.png","language":"Zig","funding_links":[],"categories":[],"sub_categories":[],"readme":"# zenith\n\n[![CircleCI](https://dl.circleci.com/status-badge/img/gh/mtlynch/zenith/tree/master.svg?style=svg)](https://dl.circleci.com/status-badge/redirect/gh/mtlynch/zenith/tree/master)\n[![License](http://img.shields.io/:license-mit-blue.svg?style=flat-square)](LICENSE)\n\nAn implementation of the Ethereum virtual machine in pure Zig.\n\n## Project status\n\n- [x] Execute basic EVM bytecode\n- [ ] Support [EVMC interface](https://github.com/ethereum/evmc)\n- [ ] Support all Ethereum opcodes (currently: [19 of 144](src/evm/opcodes.zig) supported)\n- [ ] Support precompiled contracts\n- [ ] Run [official Ethereum tests](https://github.com/ethereum/tests)\n\n## Scope\n\nFor now, this is a just-for-fun experiment to learn more about Zig and Ethereum.\n\n## Run VM\n\nRun with maximum performance:\n\n```bash\n$ echo '60015f526001601ff3' | xxd -r -p | zig build run -Doptimize=ReleaseFast\nEVM gas used:    17\nexecution time:  36.685µs\n0x01\n```\n\nRun in debug mode:\n\n```bash\n$ echo '60015f526001601ff3' | xxd -r -p | zig build run\ndebug: PUSH1 0x01\ndebug:   Stack: push 0x01\ndebug:   Gas consumed: 3\ndebug: ---\ndebug: PUSH0\ndebug:   Stack: push 0x00\ndebug:   Gas consumed: 5\ndebug: ---\ndebug: MSTORE\ndebug:   Stack: pop 0x00\ndebug:   Stack: pop 0x01\ndebug:   Memory: Writing value=0x1 to memory offset=0\ndebug:   Gas consumed: 11\ndebug: ---\ndebug: PUSH1 0x01\ndebug:   Stack: push 0x01\ndebug:   Gas consumed: 14\ndebug: ---\ndebug: PUSH1 0x1f\ndebug:   Stack: push 0x1f\ndebug:   Gas consumed: 17\ndebug: ---\ndebug: RETURN\ndebug:   Stack: pop 0x1f\ndebug:   Stack: pop 0x01\ndebug:   Memory: reading size=1 bytes from offset=31\ndebug:   Return value: 0x01\ndebug:   Gas consumed: 17\ndebug: ---\nEVM gas used:    17\nexecution time:  611.780µs\n0x01\n```\n\n## Run unit tests\n\n```bash\nzig build test --summary all\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmtlynch%2Fzenith","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmtlynch%2Fzenith","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmtlynch%2Fzenith/lists"}