/fuels-dart

Fuel Network Dart SDK

Primary LanguageDartGNU Affero General Public License v3.0AGPL-3.0

fuels-dart

Dart & Flutter SDK for Fuel Blockchain. Essentially, it's a wrapper over the official Rust SDK for mobile and official TypeScript SDK for web. It's implemented with the help of flutter_rust_bridge library.

For more information about SDK functionality and abilities, please check out fuels-rs SDK documentation.

The project tries to stick to the same interfaces as used in the Rust SDK wherever possible.

The project structure explanation can be found in the FRB documentation.

Documentation

Work on documentation for Dart/Flutter SDK is in progress.

Implemented features

  • Create wallet
  • Get account balances
  • Transfer tokens
  • Sign transactions

Contributing

packages/fuels/native folder contains Rust files. api.rs is the main entrypoint of the Rust methods accessed from Dart.

After changing any of the Rust files, you need to regenerate the wrapper. Just call:

melos run frb-gen

All commits in the main branch must follow the Conventional Commits format.

Releasing

To upgrade the library version before releasing, do:

melos version

Then push the generated commit with tags:

git push --follow-tags

Ths will start Github actions tasks for creating and publishing a release on Github.

In order to publish a package to https://pub.dev/, you need to wait for the CI/CD tasks from the previous step to complete. Then call the following command from the corresponding package:

cd packages/[needed package]
flutter pub publish