argotorg/fe

Emerging smart contract language for the Ethereum blockchain.

Rust

1,733

5,069 commits

updated Oct 11, 2026

See the code

README

Fe

Fe is a Rust-like, statically typed language for the Ethereum Virtual Machine (EVM), with explicit effects, message-passing contracts, and an integrated toolchain.

Status: Fe 26.x is not production-ready. See the Fe 26 release announcement for context.

Install

Use feup:

curl -fsSL https://raw.githubusercontent.com/argotorg/fe/master/feup/feup.sh | bash

See https://fe-lang.org for language documentation, examples, and other installation options.

CLI

The compiler is exposed through the fe binary. See CLI.md for the command reference.

Repository Layout

  • crates/ - compiler crates, CLI, language server, and supporting tools
  • ingots/core/ - core ingot, built into every compilation
  • ingots/std/ - Fe standard library
  • feup/ - the feup installer script
  • newsfragments/ - release note fragments consumed by eisenbote (see eisenbote.toml)

Development

Run the workspace tests:

cargo test --workspace

For optimized tests with debug assertions enabled, use cargo nextest run --cargo-profile test-release --workspace. CI and make test use this optimized profile too.

Snapshot tests use insta:

cargo insta review
cargo insta accept --workspace

Contributing

Non-trivial language or architecture changes should start as a discussion on GitHub or Zulip. For bug fixes and small improvements, a PR against master is fine.

License

Licensed under the Apache License, Version 2.0.

argotorg/fe

Emerging smart contract language for the Ethereum blockchain.

Rust

1,733

5,069 commits

updated Oct 11, 2026

See the code

README

Fe

Fe is a Rust-like, statically typed language for the Ethereum Virtual Machine (EVM), with explicit effects, message-passing contracts, and an integrated toolchain.

Status: Fe 26.x is not production-ready. See the Fe 26 release announcement for context.

Install

Use feup:

curl -fsSL https://raw.githubusercontent.com/argotorg/fe/master/feup/feup.sh | bash

See https://fe-lang.org for language documentation, examples, and other installation options.

CLI

The compiler is exposed through the fe binary. See CLI.md for the command reference.

Repository Layout

  • crates/ - compiler crates, CLI, language server, and supporting tools
  • ingots/core/ - core ingot, built into every compilation
  • ingots/std/ - Fe standard library
  • feup/ - the feup installer script
  • newsfragments/ - release note fragments consumed by eisenbote (see eisenbote.toml)

Development

Run the workspace tests:

cargo test --workspace

For optimized tests with debug assertions enabled, use cargo nextest run --cargo-profile test-release --workspace. CI and make test use this optimized profile too.

Snapshot tests use insta:

cargo insta review
cargo insta accept --workspace

Contributing

Non-trivial language or architecture changes should start as a discussion on GitHub or Zulip. For bug fixes and small improvements, a PR against master is fine.

License

Licensed under the Apache License, Version 2.0.

Significant stargazers

(top 24 of 39)

Guillaume Claret

348 followers · starred Sep 2025

Smitty

97 followers · starred Aug 2021

Justin Traglia

196 followers · starred Jan 2022

felipe

71 followers · starred Apr 2022