• Stars
    star
    44,281
  • Rank 298 (Top 0.01 %)
  • Language
    Rust
  • License
    Apache License 2.0
  • Created about 3 years ago
  • Updated 4 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Fuel Network Rust SDK

fuels-rs

build crates.io docs discord

Rust SDK for Fuel. It can be used for a variety of things, including but not limited to:

  • Compiling, deploying, and testing Sway contracts;
  • Launching a local Fuel network;
  • Crafting and signing transactions with hand-crafted scripts or contract calls;
  • Generating type-safe Rust bindings of contract methods;
  • And more, fuels-rs is still in active development.

Documentation

See the fuels-rs book

Features

  • Launch Fuel nodes
  • Deploy contracts
  • Interact with deployed contracts
  • Type-safe Sway contracts bindings code generation
  • Run Sway scripts
  • CLI for common operations
  • Local test wallets
  • Wallet integration
  • Events querying/monitoring

FAQ

What dependencies do I need?

How can I run the SDK tests?

First, build the test projects using forc:

forc build --path packages/fuels

Then you can run the SDK tests with:

cargo test

You can also run specific tests. The following example will run all integration tests in types.rs whose names contain in_vector and show their outputs:

cargo test --test types in_vector -- --show-output

How to run WASM tests?

You need to have wasm32 as a target, if you don't already:

 rustup target add wasm32-unknown-unknown

You also need wasm-pack, if you don't already:

cargo install wasm-pack

Navigate to packages/wasm-tests and run wasm-pack test.

What to do if my tests are failing on master

Before doing anything else, try all these commands:

cargo clean
rm Cargo.lock
forc build --path packages/fuels
cargo test

Why is the prefix fuels and not fuel?

In order to make the SDK for Fuel feel familiar with those coming from the ethers.js ecosystem, this project opted for an s at the end. The fuels-* family of SDKs is inspired by The Ethers Project.

How can I run the docs locally?

Install mdbook by running:

cargo install mdbook

Next, navigate to the docs folder and run the command below to start a local server and open a new tab in you browser.

mdbook serve --open

You can build the book by running:

mdbook build

More Repositories

1

sway

🌴 Empowering everyone to build reliable and efficient smart contracts.
Rust
62,819
star
2

fuel-core

Rust full node implementation of the Fuel v2 protocol.
Rust
58,200
star
3

fuels-ts

Fuel Network Typescript SDK
TypeScript
44,282
star
4

fuel-specs

πŸ“ Specifications for the Fuel protocol and the FuelVM, a blazingly fast blockchain VM.
1,779
star
5

sway-applications

Swaypplications
Rust
1,580
star
6

sway-farm

Farm πŸ… on the Fuel network.
TypeScript
1,411
star
7

swayswap

SwaySwap is a blazingly fast DEX built on the fastest modular execution layer: Fuel.
TypeScript
1,098
star
8

fuels-wallet

πŸ’³ The official Fuel wallet.
TypeScript
918
star
9

fuel-vm

Fuel v2 interpreter in Rust
Rust
351
star
10

fuelup

β›½ The Fuel toolchain installer
Rust
277
star
11

awesome-fuel

A maintained and comprehensive list of awesome Fuel resources!
239
star
12

yulp

βž• A low-level, highly efficient extension to Yul, an intermediate language for the Ethereum Virtual Machine.
Nearley
173
star
13

fuel-bridge

The canonical Fuel bridge mono repo.
TypeScript
173
star
14

sway-standards

SRC Standards set for the Sway language
Sway
159
star
15

sway-libs

Miscellaneous Sway libraries.
Sway
143
star
16

fuel-indexer

πŸ—ƒ The Fuel indexer is a standalone service that can be used to index various components of the Fuel blockchain.
Rust
140
star
17

docs-hub

The documentation hub for Fuel
TypeScript
113
star
18

forc-wallet

A forc plugin for managing Fuel wallets.
Rust
98
star
19

fuel.nix

A Nix flake for the Fuel Labs ecosystem.
Nix
97
star
20

fuel-v1-contracts

⚑ The Fuel optimistic rollup in Yul+ for the Ethereum Virtual Machine
JavaScript
87
star
21

fuel-ui

Fuel design system
TypeScript
85
star
22

fuel-explorer

TypeScript
85
star
23

fuel-js

⚑ All Fuel javascript utilities and implementations.
JavaScript
82
star
24

fuel-connectors

TypeScript
78
star
25

faucet

The official Fuel faucet
Rust
70
star
26

sway-playground

πŸŒ΄β–ΆοΈ Sway in the browser
TypeScript
65
star
27

fuel-merkle-sol

A Solidity implementation of binary, sum, and sparse Merkle trees
Solidity
56
star
28

fuel-block-committer

A standalone service that commits Fuel block data to L1 / DA
Rust
52
star
29

sway-vscode-plugin

Sway Visual Studio Code plugin
TypeScript
48
star
30

fuels-npm-packs

TypeScript
47
star
31

fuel-subgraph

Rust
45
star
32

bridge-message-predicates

Predicate for relaying messages from Ethereum to a Fuel contract
Rust
44
star
33

fuel-docs

πŸ“ƒ Top-level documentation for Fuel
JavaScript
43
star
34

fuels-portal

The user facing portal and Fuel landing page
TypeScript
43
star
35

quickstart

TypeScript
29
star
36

fuel-bft

Tendermint consensus in Rust
Rust
26
star
37

sway-nightly-binaries

Fuel v2 full node and Sway toolchain nightly binaries
26
star
38

authn-sign

✍️ authn-sign - A simplified browser interface for WebAuthn focused on secp256r1 (P-256).
JavaScript
25
star
39

intro-to-sway

Learn how to build a marketplace contract with Sway
TypeScript
24
star
40

sway-lib-std

Sway standard library.
Rust
24
star
41

sway-rfcs

RFCs for changes to Sway
Sway
23
star
42

fuel-crypto

Fuel cryptographic primitives.
Rust
22
star
43

sway-performance-data

Sway performance data
19
star
44

fuel-burner-wallet

πŸ”₯ An experimental version of Burner Wallet using the Fuel open-beta.
HTML
19
star
45

sway.vim

Vim syntax file for Sway.
Vim Script
18
star
46

chain-configuration

18
star
47

sway-by-example-lib

Library for compiled sway programs
17
star
48

block-explorer-v2

Block explorer frontend for Fuel.
TypeScript
17
star
49

sway-lib-core

Sway standard library core primitives.
Rust
15
star
50

infrastructure

Shared infrastructure templates for Fuel services
HCL
15
star
51

EVM-Wallet-Connector

TypeScript
14
star
52

bridge-fungible-token

Fuel contract for managing and issuing bridged versions of ERC-20 tokens
Rust
14
star
53

fuel-tx

Fuel v2 transaction processing module in Rust.
Rust
14
star
54

sway-vs-solidity

1:1 code examples comparing Sway to Solidity
Solidity
13
star
55

github-actions

Reusable Actions workflows
TypeScript
12
star
56

tree-sitter-sway

C
12
star
57

docs

πŸ“ Documentation for the Fuel v1 tools and services.
CSS
11
star
58

fuel-graphql-docs

Documentation for the Fuel GraphQL API
TypeScript
11
star
59

action-fuel-toolchain

πŸ› οΈ GitHub Action for `fuelup` commands
TypeScript
10
star
60

fuel-burner-plugin

πŸ”₯βš™οΈ Wallet plugin which connects Fuel network to the Burner architecture.
TypeScript
10
star
61

reddit-cash

πŸŒ• A Fuel-powered Reddit community tokens build on a Burner Wallet
TypeScript
9
star
62

smt-test-generation

Generate specification compliant test data used for data-driven sparse Merkle tree testing
Go
9
star
63

rfcs

RFCs for changes to Fuel, and standards
Shell
8
star
64

fuel-contributors

An exhaustive list of all Fuel Contributors
8
star
65

fuel-debugger

Debugger for Fuel v2
Rust
8
star
66

fuel-asm

Fuel assembly and opcodes module
Rust
8
star
67

sway-by-example

Examples of Sway programs
Solidity
8
star
68

fuel-design-tokens

Design tokens that we are using across Figma and Fuel
JavaScript
8
star
69

fuel-types

Common types for Fuel v2
Rust
8
star
70

fuel-dev-env

Full stack Fuel development environment
Shell
7
star
71

fuel-wasm-examples

WASM examples for Fuel
Rust
7
star
72

migrations-and-disclosures

Biweekly consolidated breaking change log across the Fuel stack
JavaScript
7
star
73

developer-quickstart

scratch space for code behind developer quickstart section in book
TypeScript
7
star
74

hacker-starter-kit

A resource for developers preparing to build on Fuel.
7
star
75

fuel-merkle

Fuel Merkle trees in Rust.
Rust
7
star
76

fuel-v2-contracts

The Fuel Solidity smart contract architecture.
TypeScript
6
star
77

fuel-storage

Storage traits for Fuel storage-backed data structures.
Rust
6
star
78

fuel-abi-types

Rust
6
star
79

demo-block-explorer

A bare-bones block explorer that demos the Fuel GraphQL API
TypeScript
6
star
80

typedoc-just-the-docs-theme

TypeScript
6
star
81

releasy

Release Automation Tooling
Rust
6
star
82

Pyth-integration

Sway
6
star
83

cargo-toml-lint

A linter for Cargo.toml files
Rust
6
star
84

docs-portal

Fuel's Documentation Portal
TypeScript
6
star
85

audits

5
star
86

sway-by-example-archive

Let's explore how to design, write and test a contract
Rust
5
star
87

Solana-Wallet-Connector

TypeScript
5
star
88

fuel-low-level

Rust
4
star
89

data-systems

Fuel data systems related projects
Rust
4
star
90

devcontainer-features

Features for Github Dev Containers for the Fuel ecosystem
Shell
4
star
91

sway-performance-dashboard

Sway performance dashboard
JavaScript
4
star
92

action-forc

πŸ“¦ GitHub Action for Sway `forc` command
4
star
93

sway-test-rs

A cargo-generate template for Rust + Sway integration testing.
Rust
4
star
94

sway-workshops

A set of example apps for workshops.
4
star
95

forc-explorer

Forc block explorer plugin
Rust
3
star
96

.github

3
star
97

ETHDubai-2022-Workshop

Rust
3
star
98

sway-std

A mirror repo of sway lang's standard library
Sway
3
star
99

bridge-message-executor

Service for executing predicate based messages on Fuel
Rust
3
star
100

bridge-integration-tests

Integration tests for the Fuel Messaging Bridge
TypeScript
3
star