r55-eth

r55: Run Rust Smart Contracts Alongside EVM Contracts

R55 is an experimental Ethereum execution environment built on a fork of the Rust revm engine. It adds RISCV smart contracts written in no_std Rust alongside EVM contracts, sharing Ethereum state and communicating through ABI-encoded calls.

View on GitHub Compare
Stars
350
Forks
36
Stars, last 30 days
+0
Last commit
1.2 years ago
Contributors
10

Our take

Inactiveno commits in over a year

Health score

28/100

How it is scored
Activity
19
Community
52
Issues
21
Pull requests
20

+0 stars in the last 30 days

R55 is an interesting experimental bridge between Rust and Ethereum execution, but its inactive status and lack of recent releases make it best suited to evaluation and research rather than production use.

Good fit if

  • You want to investigate RISCV contracts that share Ethereum state with EVM contracts.
  • You can work with Rust, Cargo, and the RISCV toolchain, and are prepared to follow the end-to-end example.
  • Your use is experimental and compatible with the Apache-2.0 license.

Look elsewhere if

  • You need an actively maintained execution environment: the project has had no commits in over a year and no releases in the past year.
  • You need evidence of recent issue resolution or merged contributions: none were recorded in the measured recent period.
  • You require a production-ready alternative to established EVM execution, rather than an experimental project.
All health signals
Last commit2025-08-01 (1.2 years ago)
Commits, last 90 days0
Releases, last 12 months0
Contributors10 (top contributor: 49% of commits)
Issues closed, last 90 days0
Pull requests merged, last 90 days0
Project age2 years

Checked on 2026-10-17 with the GitHub API.

Project history

Daily GitHub snapshots since Oct 7, 2026. History covers stars and forks; health signals are not tracked historically.

Selected snapshot

Stars

350

Forks

36

Change since Nov 14, 2026: 0 stars·0 forks

Overview

R55 is an experimental Ethereum execution environment built on a fork of revm, the Rust EVM implementation. It extends Ethereum execution to run RISCV smart contracts alongside traditional EVM contracts over the same state, with ABI-encoded calls between them.

The project targets Rust developers who want to write contracts in no_std Rust and use familiar Rust and LLVM tooling. Its runtime uses the separate rvemu-r55 RISCV interpreter, and the README describes integration with Anvil and Reth through the revm-compatible API. This is a proof of concept rather than a mature, actively maintained deployment platform.

Key Features

  • Supports RISCV smart contracts alongside EVM smart contracts in one Ethereum execution environment.
  • Lets contracts use no_std Rust, with a #[contract] macro to generate deployment initialization and method dispatch.
  • Uses ABI-encoded calls for communication between RISCV and EVM contracts.
  • Compiles Rust contracts into RISCV ELF binaries using rustc, LLVM, and the R55 runtime components.
  • Provides an end-to-end ERC20 example and test that compiles, deploys, mints tokens, and checks a balance.
  • Keeps the revm API unchanged, according to the README, for integration with Anvil and Reth-based environments.

Use Cases

  • Rust developers exploring how to write Ethereum contracts without using Solidity for the contract implementation.
  • Protocol engineers prototyping execution of RISCV contracts alongside existing EVM contracts.
  • Compiler and smart-contract researchers evaluating language and compiler diversity in Ethereum execution.
  • Teams investigating whether RISCV execution could suit specialized workloads, before considering production adoption.

What you need

Detected in the repository

  • Rust (from Cargo.toml)
  • Automated checks on GitHub Actions

License in plain words

Apache-2.0permissive

  • Commercial use: yes
  • Modify and redistribute: yes
  • You must keep: the license, the NOTICE file and a note of your changes
  • Share your changes: no
  • Includes an explicit patent grant from the contributors:

A summary, not legal advice: the LICENSE file is what applies.

Getting Started

Install Rust and the RISCV toolchain. On macOS, the README gives these prerequisites:

brew tap riscv-software-src/riscv
brew install riscv-gnu-toolchain gettext

The end-to-end test also specifies a Rust nightly toolchain. See the README for the full setup and test instructions.

Considerations

  • The project is marked inactive, with no commits in over a year and no releases in the past year. Recent issue closures and pull request merges are also absent from the measured data.
  • It is explicitly experimental. The README demonstrates an ERC20 proof of concept, not a broad production contract suite.
  • Building and testing require Rust plus RISCV compilation tooling. The README's end-to-end instructions specify a dated Rust nightly toolchain.
  • RISCV execution depends on the separate rvemu-r55 interpreter, while the execution environment is based on revm. Teams should assess those dependencies as well as this repository.
  • The repository is licensed under Apache-2.0; review the license terms when incorporating or distributing it.

Found this useful?

Share it with someone who would like r55.

Comparisons