Baike.dev
All toolsAI codingTrendingOpen sourceNewsSubmit
Log in
< Back to tools
E

evm-from-scratch

> 编程语言
Open source

Super secret 100% practical EVM course. Please do not share

739 stars0 likes0 views
WebsiteGitHub

About

Super secret 100% practical EVM course. Please do not share

EVM From Scratch

Welcome to EVM From Scratch! It's a 100% practical course that will help you better understand the inner workings of the Ethereum Virtual Machine. During this course, we'll implement EVM in your favorite programming language.

Getting Started

Clone the repo:

git clone https://github.com/w1nt3r-eth/evm-from-scratch

This repository contains evm.json file with test cases. Your goal is to create an implementation in any programming language of your choice that passes all tests.

The test cases are organized by complexity: they start with the simplest opcodes and gradually progress to advanced. Each test case has a name, code and expectation. The code is provided as a human-readable instructions list (asm) and machine-readable bytecode encoded in hex (bin). Your implementation should only look at bin, the asm is provided to make unit tests easier to debug.

The repository contains templates for JavaScript, TypeScript, Python, Go and Rust. However, you don't have to use the existing templates, you can build your own test suite based on evm.json (or evm-pro.json, see below).

Additional tests

To use the paid test suite, place evm-pro.json in the repository root, next to evm.json. The Pro version has more than 200 test cases that gradually walk you through implementing your own EVM.

Get the full EVM From Scratch course here.

Credits

All the materials in the repository are made by w1nt3r.eth. The repository is part of the "EVM From Scratch" course.

Issues· 0 open

View all issuesOpen on GitHub

No open issues yet, or sync has not completed.

> Tags

JavaScriptethereumevmgopython

No comments yet. Be the first to share.

> Details

PublishedAug 1, 2026
UpdatedSep 17, 2026
Category编程语言
PricingOpen source

> Related tools

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言