Ethereum for Rust developers
Last edit: @tr1sm0s1n(opens in a new tab), July 18, 2024
Use Ethereum to create decentralized applications (or "dapps") that utilize the benefits of cryptocurrency and blockchain technology. These dapps can be trustworthy, meaning that once they are deployed to Ethereum, they will always run as programmed. They can control digital assets in order to create new kinds of financial applications. They can be decentralized, meaning that no single entity or person controls them and are nearly impossible to censor.
Getting started with smart contracts and the Solidity language
Take your first steps to integrating Rust with Ethereum
Need a more basic primer first? Check out ethereum.org/learn or ethereum.org/developers.
- Blockchain Explained(opens in a new tab)
- Understanding Smart Contracts(opens in a new tab)
- Write your First Smart Contract(opens in a new tab)
- Learn How to Compile and Deploy Solidity(opens in a new tab)
Beginner articles
- Choosing an Ethereum Client(opens in a new tab)
- The Rust Ethereum Client(opens in a new tab) * Note that OpenEthereum has been deprecated(opens in a new tab) and is no longer being maintained. Use it with caution and preferably switch to another client implementation.
- Sending Transaction to Ethereum Using Rust(opens in a new tab)
- A step-by-step tutorial on how to write contracts in rust Wasm for Kovan(opens in a new tab)
Intermediate articles
Advanced use patterns
pwasm_ethereum externs library to interact with Ethereum-like network(opens in a new tab)
Build A Decentralized Chat Using JavaScript and Rust(opens in a new tab)
Build a Decentralized Todo App Using Vue.js & Rust(opens in a new tab)
Rust projects and tools
- pwasm-ethereum(opens in a new tab) - Collection of externs to interact with ethereum-like network
- Lighthouse(opens in a new tab) - Fast Ethereum consensus layer client
- Ethereum WebAssembly(opens in a new tab) - Proposed redesign of the Ethereum smart contract execution layer using a deterministic subset of WebAssembly
- oasis_std(opens in a new tab) - OASIS API reference
- Solaris(opens in a new tab) - Solidity Smart Contracts unit test harness using the native Parity Client EVM.
- SputnikVM(opens in a new tab) - Rust Ethereum Virtual Machine Implementation
- Wavelet(opens in a new tab) - Wavelet smart contract in Rust
- Foundry(opens in a new tab)- Toolkit for Ethereum application development
- Ethers_rs(opens in a new tab)- Ethereum library and wallet implementation
- SewUp(opens in a new tab) - A library to help you build your Ethereum webassembly contract with Rust and just like develop in a common backend
- Substreams(opens in a new tab) - Parallelized blockchain data indexing technology
- Reth(opens in a new tab) Reth (short for Rust Ethereum, pronunciation) is a new Ethereum full-node implementation
- Awesome Ethereum Rust(opens in a new tab) - A curated collection of projects in the Ethereum ecosystem written in Rust
Looking for more resources? Check out ethereum.org/developers.
Rust community contributors
- Ethereum WebAssembly(opens in a new tab)
- Oasis Gitter(opens in a new tab)
- Parity Gitter(opens in a new tab)
- Enigma(opens in a new tab)