The new beta-2 testnet brings cross-chain bridging to Fuel, paving the way for the next generation of Ethereum scalability.
We are excited to announce the launch of the new Fuel beta-2 testnet! This represents yet another milestone in our journey towards mainnet, and a modular execution layer that will bring true scalability to the Ethereum ecosystem.
In September, we launched beta-1, the first public Fuel testnet, offering open access for developers and users. This has already seen significant traction, with over 130,000 transactions in the span of 2 months. In addition, we've been amazed at the number of exciting new applications already building on Fuel, with over ten applications publicly launched and many more in the works.
Cross-Chain Bridging Now on Fuel
Expanding on the features of beta-1, the beta-2 testnet is launching with a bridge to Ethereum's Goerli test network. Now, developers will be able to build and test cross-chain dapps, laying the foundations for projects building on Fuel to tap into Ethereum's massive liquidity and existing user base.
Please note that beta-2 is not an incentivized testnet. There will be no direct rewards for participation in this network.
Below is a full list of key features for the beta-2 testnet:
The Fuel (beta-2 testnet) <> Ethereum (Goerli testnet) bridge enables arbitrary message-passing between the two networks. It also supports enshrined ETH bridging, and ERC-20 token bridging at the application level thanks to account abstraction.
Single Shared Network
beta-2 is a shared, public developer- and user-facing testnet. Developers can deploy contracts and users can then interact with those contracts.
Anyone can use the faucet to get some test ETH to deploy or interact with contracts. Available here.
The Fuel Core node uses GraphQL instead of JSON RPC. A playground for the public GraphQL endpoint for beta-2 is available here.
A block explorer (still heavily a work-in-progress) is available here.
If you have any questions (development-related or otherwise), you can join the Fuel Labs Discord and head to the #questions channel under the Testnet category. Be sure to follow our Twitter for updates.
Both the Rust and TypeScript SDKs now support automatic log parsing. This allows developers to respond to events emitted during transaction execution, making their frontends responsive.
Both SDKs also now support the Vec type as inputs to a contract call, enabling users to pass in variable-length input. If you're coming from Solidity, this is analogous to a dynamic-length array.
The compiler now produces bytecode that is 20-40% smaller in size, depending on the application. In addition to this, Sway now supports generic traits and trait constraints, allowing for more expressive libraries and abstractions.
Additional static analysis passes have been added, including one that enforces the checks-effects-interactions pattern when calling external contracts. In-language unit tests are also supported now, denoted by the #[test] annotation, similarly to Rust.
The Sway compiler is now more performant, with 10-30% performance gains depending on the situation.
The language server now provides inlay hints for variables, allowing users to see the types their let expressions are resolved to.
Hover support has been added, showing information such as the type, mutability and visibility of variables and parameters, function signatures, and formatted markdown documentation complete with syntax highlighting for in-documentation examples.
Forc now provides support for declaring contract dependencies in your Forc.toml. This feature provides a simple way to pin contracts and refer to their unique IDs in code, avoiding the need to manually update each contract dependency's address on each change.
Forc also introduces support for workspaces, allowing to build, deploy or run multiple Forc projects under a single command. Initial support for a `forc doc` command has landed, aimed at generating a package's reference documentation from its doc-comments (i.e. `///`), though the output is still quite raw for now.
Offline support has greatly improved as Forc gains the ability to share its dependency source cache between projects. This is further improved by fuelup’s new toolchain installation behavior which now pre-populates the cache with the core and std libraries.
The Fuel client now has support for bridging via a new kind of message UTXO, as well as a built-in relayer which interacts with Ethereum. It also now supports multi-transaction blocks in a proof-of-authority configuration. This allows for a diverse set of block production modes such as instant (for testing), fixed interval, and also dynamic block times based on the txpool size.
Fuel now has a browser extension wallet that enables users to manage their assets and interact with dapps. This wallet was built from scratch and also exposes an SDK API directly on the user's browser, enabling developers to just focus on developing their application without the need to bundle an application-specific wallet.
Valid transactions are required to deploy contracts and interact with the network, which require coins. Testnet ETH can be obtained from the faucet by completing a captcha.
A persistent CLI wallet (with binaries for Linux and MacOS) is available here.
A web/browser plugin wallet is under active development, available here.
For an overview of Fuel, take a look at the Fuel documentation.
To begin building on Fuel, check out the developer quickstart. This guide provides an end-to-end walkthrough for developers building a dapp on Fuel.
Smart Contract Language (Sway)
To begin developing a contract for Fuel, take a look at the Sway Book, along with the Rust SDK and TypeScript SDK.
Apply for a Grant
If you're interested in going even further, we're supporting early-stage projects with our grants program, available here.
Note that the beta-2 testnet is under active development and may see breaking upgrades and even regenesis events.
Modular blockchain design is quickly becoming the foremost solution to the challenge of scaling blockchains by orders of magnitude. The industry is rapidly moving away from monolithic blockchain designs and towards modular ones.
We believe innovation does not require launching a new L1, but can rather happen at the execution layer. Fuel Labs is leading this charge with Fuel, the fastest modular execution layer.
Unconstrained by the limitations of the EVM, Fuel approaches scalable execution from a modular-first perspective, allowing for significant improvements over the EVM's inefficient execution environment and thus enabling maximum decentralization and the highest flexible throughput.
With this new movement, we have an opportunity to start fresh and build a fundamentally new generation of blockchains that go #BeyondMonolithic.