RustBlock-Outpost
RustBlock-Outpost copied to clipboard
RustBlock-Outpost is the most complete blockchain-oriented Rust knowledge base that was created for educational purposes. Check it to find out how Rust is being implemented in web3 applications
RustBlock Developer Outpost
Here Rektoff presents the RustBlock outpost for developers and enthusiasts. Outpost is the structured knowledge library or fundamental tool that consists of numerous links that any mr/mrs could use for personal navigation or educational purposes within Rust blockchain ecosystem. We have observed a demand in recent months and have received many messages to create something related. So, here it is!
We are striving to create a timeless resource that will remain useful for the next 2-5 years, so consistent contributions from the audience would be greatly appreciated. Please feel free to add any requests and let's collectively build a foundation for new rustecean-based applications in the web3 field.
Contributors: jared, mikhail, gregory, yehor, officercia, bloqcarl.....[Anyone who will help, will be added to this list.]
- '
- '
- '
- '
Disclaimer
The information shared below is an addition to our RustBlockSec article that you can check here - Tap!
Recent Big News:
-
Aztec Network shared an update about the launch of a new smart contract framework for their ecosystem-native Noir language, which has 99% syntax similarity to Rust.
-
Offchain Labs shared an update about the launch of an official testnet for their newcome Rust, C, C++ smart-contract implementation for Arbitrum L2.
-
Paradigm's R&D team released a new alpha version of Reth built purely in Rust. That is a great contribution towards Ethereum decentralization and performance + first big rust dev conference where they broadly introduced the audience to Foundry 2.0, Alloy, Ruint and other Rust-related innovative tools for Ethereum.
-
Funded in July with 40m$ in series A, start-up RiscZero presented Zeth and RiscZero zkEVM, which built using Rust-based tools(revm, ethers, alloy).
Navigation
| Numbers | Sections |
|---|---|
| 1 | Smart Contracts |
| 2 | Tools |
| 3 | Infrastructure |
| 4 | Testing/Fuzzing |
| 5 | Cryptography/ZK |
| 6 | Additional links |
1
Create and deploy your smart contracts using these Rust-inspired platforms/languages/frameworks.
- Leo (Aleo)
- Noir (Aztec ZkRollup)
- Ink! (Polkadot)
- Sway (Fuel Labs)
- CosmWasm (Cosmos)
- Stylus (Arbitrum)
- Cairo (Starknet/Starkware)
- Huff (Ethereum)
- Rusk (Dusk Network)
- Fe (Ethereum)
- Mx-SDK (MultiverseX)
- NearSDK (NEAR)
- SolanaToolkit (Solana)
- SecretToolkit (Secret Network)
- Anchor (Solana)
- PolkadotSDK (All-in Polkadot)
- OasisSDK (Oasis Protocol)
- Scrypto (Radix Defi)
- ConcRustFramework (Concordium)
- Gear (Gear Protocol/GearTech)
2
Tools:
- Optimism-rs - Optimism implementation written in Rust(non-official version)
- Alloy - high-performance, well-tested & documented libraries for interacting with Ethereum and other EVM-based chain
- OrgaTendermint - state engine framework powered by Tendermint consensus
- Sothis - tool for replaying historical state on a local anvil/hardhat testnet node
- Blutgang - load balancer designed with Ethereum's json-rpc
- Hyperledger Solang - solidity compiler for Solana&Polkadot
- DIDKit - DID toolkit written in Rust
- tezos-rust-sdk - A set of Rust libraries to interact with the Tezos blockchain
3
Infrastructure:
- Reth: A fresh rust-based Ethereum execution client by Paradigm team
- Revm: Rust Ethereum Virtual Machine
- Ethers-rs: Ethereum and Celo Rust library
- Artemis: A framework for writing MEV bots in Rust
- LightHouse: Ethereum Consensus client by Sigma Prime
- Trin: Portal Network client implementation
- Zebra: Consensus-compatible ZCash node
- Hermes: Rust-based IBC relayer
- Tendermint-rs: Blockchain consensus engine for Byzantine fault-tolerant applications
- VeilidCoDC: P2P application network by (x_X)
- Rustlibp2p: Modular peer-to-peer networking framework
- ZkSyncSDK: ZkSync Rust SDK
- TezosSmartRollup + Kernel Gallery: Smart rollups on top of Tezos using Rust
- StarkNetRust: Starknet library in Rust
- Gotham: A client/server application for issuing two-party ECDSA signatures
- KZG-Rust: KZG library for Ethereum Data Sharding(EIP-4844)
4
Testing&Fuzzing
Generic fuzzing
- Rust Fuzz book - intro to fuzzing in Rust with libfuzzer and afl++
- HonggFuzz crate - Rust crate for honggfuzz
- Cargo Fuzz - cargo tooling for libFuzzer
- Fzero-Fuzzer - grammar-based fuzzer for Rust
- WASMRuntimeFuzz - WebAssembly Runtimes fuzzing
- Cairo-Fuzzer - smart contracts fuzzer for Cairo by Fuzzing Labs
Blockchain fuzzing
- Foundry 2.0 - modular toolkit for ethereum development and testing
- Circomspect - static analyzer for Circom ZK framework
Static Analyzers
5
Cryptography&Zero-Knowledge
- ZkCrypto / bellman - crate for building zk-SNARK circuits
- ark-gro16 - library for designing and working with zero knowledge succinct non-interactive arguments
- Boojum - high-performance proof system for radical decentralization by ZkSync Era
- Plonky2Starky - Zk scaling by mir&polygon
- ZKWASM - ZkWASM written in Rust
- RustCrypto / EllipticCurves - General purpose EllipticCC support
- ZkSnarksSubstrate - ZkNARKs in Substrate framework
- BulletProofs - non-interactive ZKPs implementation
- Curve25519 - pure-Rust crates for elliptic curve cryptography
- Circom - domain-specific language for defining arithmetic circuits that can be generated by ZKPs
- Zeth - open-source ZK block prover for Ethereum built on the RISC Zero zkVM
- Spartan - 0k proof system by Microsoft
- Zk-Paillier - Paillier (ZenGoX) zk library
- BLS - MPBls
- ZkEvm circuits - exploration focused zk evm circuits
- MPZ - Rust ecosystem multi-party computation libraries
- Arkworks - Rust ecosystem for ZKSnark development
- LambdaStarkPlatinum - STARK Prover.
6
Additional links:
- Alchemy Dev Report q2 2023
- Alchemy Dev Report q1 2023
- JetBrains Developer Ecosystem
- GitHub blog about Rust
- StackOverFlow Survey 2023
- Interview with Senior Rust Developer
- Rust NationUK
- Scaling Rust Adoption Through Training
...........
,xkOOOOOO00OOkxol:;'..
;0XXXXXXXXXXXXXXXXXK0Oxl;.
... ;0XXXXXXXXXXXXXXXXXXXXNNNKx:.
.:k00Oxc. ;KXXXXXXXXXXXXXXXXXXXXXXXNWN0l. .'. .,,. ...
;xKXXXNWW0l. ;0XXXXXXXKOO0KKXXXXXXXXXXXXNWW0c. .'.. .,cc,.':cc;'.;cc,. ..'.
,xKXXXXXXXNWW0:. ;0XXXXXXXkc:::;:oOXXXXXXXXXXNWMNx. ,cc:,;cccccccccccccccc;,:cc'
.c0XXXXXXXXXXNWKl.cKXXXXXXX0o:;' .:kXXXXXXXXXNWMWO' .,:,',:cccccccccccccccccccccccccc;'',:,
'o0XXXXXXXXXNNKdxKXXXXXXXKkl;' .c0XXXXXXXXNWWWO' .;cccccccccccccccccccccccccccccccccccc;. ...
'd0XXXXXXXXXXK0XXXXXXXXXKx:' ;OXXXXXXXXXNNXo. ',. ';,,;:cccccccccccccccccccccccccccccccccccc:,,;;' .;:c' .'.
,dKXXXXXXXXXXXXXXXXXXNN0o, cKXXXXXXXXKKKO, ',. 'cc;. 'cccccccccccccccccccccccccccccccccccccccccccccc' .,cccc. .,:'
,dKXXXXXXXXXXXXXXXXNWNk, .kXXXXXXXX0O0Oc 'cc,. .:ccc' ....,cccccccccccccccccccccccccccccccccccccccccccccc,.... 'ccccc. .;cc.
.;xKXXXXXXXXXXXXXXNWWKl........,xXXXXXXXX0kkkc. .;ccc;..:ccc:. ,cccccccccccccccccccccccccccccccccccccccccccccccccccccc' 'ccccc:;ccc,.
.:ccccclllllooookKXXXXXXXXXXXXXXNNNXK0O000000KXXXXXXXXX0kxxc. . . .;ccc:::ccc;. .;cccccccccccccccccccccccccccccccccccccccccccccccccccc;. .,ccccccc:'
;0XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX0kxxc. :kx, 'xO: .';cccccc:...'';:cccccccccccccccccccccccccccccccccccccccccccccccccccc:,''..,cccc:'.
;0XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX0kxxc. .oX0do0Xo. .';cc:' 'cccccccccccccccccccccldOo'.,:ccccccdkd,.;cccccccccccccccccc:'.,c:,.
;0XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX0kxxc. .xWMMWk. ':c;'..,cccccccccccccccccccclOWK; .:ccc:;xWK, .;cccccccccccccccc:,,:c;.
,OKKKKKKKK0000000XXXXXXXXXXXXXXXXXXXXXX0Okxddoooooollllc:cl; cKKkkKXc ..;:c::ccccccccccccccccccc:',l:. .;ccc:.'c;. 'ccccccccccccccccccc:'
.',,,,,'''''.':kKXXXXXXXXXXXXXXXXXXXXXKOdc,. cK0; .;KXc .,ccccccccccccccccccccccc,. .:cccc' .,ccccccccccccccccccc:,.
.cOXXXXXXXXXXXXXXXXXXXXXXXXXX0xc'. ',. .,' .;ccc:;;:::cccccccccccccccc:,..',:cccccc;''',:ccccccccccccc:;;;::cccc,.
.:kXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXKOl' .:ccc;..'''',;:::ccccccccccccccccc;'..';ccccccccccccc::;;,....'..;cc:'
;xKXXXXXXXXKkOXXXXXXXXOk0XXXXXXXXXXNX0d, .,:cc'..... ....',;;;::::ccccccc;'..,:cccc::::;;,,'... ... .:c;.
,dKXXXXXXXXXOl;oKXXXXXXXkccx0XXXXXXXXXXNNKx;. .,:c,. .. .........''''''''''........ .. .;c,.
'o0XXXXXXXXXOo;',oKXXXXXXXOl;;:oOXXXXXXXXXXNWNOl. .,:;. . . .,:'
.lKXXXXXXXX0d:,''.cKXXXXXXX0o:;'..l0XXXXXXXXXNNWWKl. .,;. ',.
,xKXXXX0d:,''. ;KXXXXXXX0dc;' .o0XXXXXXXXXNNWW0l. .'. .'.
;xKKxc,''.. ;KXXXXXXX0xl;' 'o0XXXXXXXXXXK00x, . .
.,,..... ;KXXXXXXX0xo:' 'o0XXXXXXXX0xxxc.
;KXXXXXXX0xdc' 'o0XXXXXX0xxxc.
,xOOOOOOkxddl' 'cloooolcll;
.............