🌴 Empowering everyone to build reliable and efficient smart contracts.
Find a file
kaya 14bb898f3b
chore: bumpt rust version to 1.90 (#7427)
## Description

Bumping the rust version to 1.90 and fixing the clippy lints along the
way
2025-10-02 22:28:51 +13:00
.devcontainer Create devcontainer.json (#4377) 2023-06-06 00:53:23 +03:00
.github chore: bumpt rust version to 1.90 (#7427) 2025-10-02 22:28:51 +13:00
.vscode Fix function_cache garbage collection bug (#6555) 2024-09-18 09:18:02 +01:00
deployment Update Rust in dockerfile to 1.87 (#7201) 2025-05-28 14:14:07 +04:00
docs Add "Experimental Features" chapter to The Sway Book (#7416) 2025-09-26 07:58:27 -03:00
examples Contract self impl (#7275) 2025-07-11 11:02:37 +00:00
forc chore: bumpt rust version to 1.90 (#7427) 2025-10-02 22:28:51 +13:00
forc-pkg chore: bumpt rust version to 1.90 (#7427) 2025-10-02 22:28:51 +13:00
forc-plugins chore: bumpt rust version to 1.90 (#7427) 2025-10-02 22:28:51 +13:00
forc-test chore: bumpt rust version to 1.90 (#7427) 2025-10-02 22:28:51 +13:00
forc-tracing chore: bumpt rust version to 1.90 (#7427) 2025-10-02 22:28:51 +13:00
forc-util chore: bumpt rust version to 1.90 (#7427) 2025-10-02 22:28:51 +13:00
scripts chore: bumpt rust version to 1.90 (#7427) 2025-10-02 22:28:51 +13:00
sway-ast chore: bumpt rust version to 1.90 (#7427) 2025-10-02 22:28:51 +13:00
sway-core chore: bumpt rust version to 1.90 (#7427) 2025-10-02 22:28:51 +13:00
sway-error chore: bumpt rust version to 1.90 (#7427) 2025-10-02 22:28:51 +13:00
sway-features chore: bumpt rust version to 1.90 (#7427) 2025-10-02 22:28:51 +13:00
sway-ir chore: bumpt rust version to 1.90 (#7427) 2025-10-02 22:28:51 +13:00
sway-lib-std chore: bump version to v0.69.6 (#7425) 2025-09-29 12:10:34 -07:00
sway-lsp chore: bumpt rust version to 1.90 (#7427) 2025-10-02 22:28:51 +13:00
sway-parse chore: bumpt rust version to 1.90 (#7427) 2025-10-02 22:28:51 +13:00
sway-types chore: bumpt rust version to 1.90 (#7427) 2025-10-02 22:28:51 +13:00
sway-utils chore: bumpt rust version to 1.90 (#7427) 2025-10-02 22:28:51 +13:00
swayfmt chore: bumpt rust version to 1.90 (#7427) 2025-10-02 22:28:51 +13:00
templates chore: update templates to use newer fuels SDK (#7024) 2025-03-18 07:13:19 +11:00
test chore: bumpt rust version to 1.90 (#7427) 2025-10-02 22:28:51 +13:00
.gitattributes Remove syntax highlighting of Sway files as Rust (#5926) 2024-04-26 11:06:49 -07:00
.gitignore Merge std and core libraries (#6729) 2025-03-12 23:52:38 +01:00
.markdownlint.yaml add docs CI, rename docs README to index (#4874) 2023-08-09 10:51:10 -06:00
.markdownlintignore add docs CI, rename docs README to index (#4874) 2023-08-09 10:51:10 -06:00
.typos.toml Subroutine calls using the new JAL instruction (#7085) 2025-07-12 08:23:53 +00:00
benchmark.sh ci: fixing typos programmatically (#5975) 2024-05-09 10:21:32 +10:00
Cargo.lock chore: bump version to v0.69.6 (#7425) 2025-09-29 12:10:34 -07:00
Cargo.toml chore: bumpt rust version to 1.90 (#7427) 2025-10-02 22:28:51 +13:00
ci_checks.sh remove archived forc-explore plugin from CI and docs (#7257) 2025-06-27 12:53:25 +00:00
clippy.toml chore: bumpt rust version to 1.90 (#7427) 2025-10-02 22:28:51 +13:00
justfile One justfile to run them all (#7369) 2025-09-04 10:05:41 +10:00
LICENSE Create LICENSE (#452) 2021-12-11 22:28:09 -05:00
README.md One justfile to run them all (#7369) 2025-09-04 10:05:41 +10:00
rustfmt.toml chore: rename fn_args_layout to fn_params_layout in rustfmt.toml (#4530) 2023-05-04 08:23:35 +00:00
SECURITY.md feat: update security policy 2024-08-21 16:06:11 -07:00
update_fuel_dependencies.sh chore: add a script to bump all fuel maintained dependencies (#6684) 2024-11-03 22:20:09 -08:00

Sway

build crates.io docs twitter discord

Sway is a language developed for the Fuel blockchain. It is heavily inspired by Rust and aims to bring modern language development and performance to the blockchain ecosystem.

Documentation

For user documentation, including installing release builds, see the Sway Book: https://fuellabs.github.io/sway/latest/.

For Sway Standard library documentation, see: https://fuellabs.github.io/sway/master/std/

Also view the technical reference for the Sway programming language: https://fuellabs.github.io/sway/master/reference/

Building from Source

This section is for developing the Sway compiler and toolchain. For developing contracts and using Sway, see the above documentation section.

Dependencies

Sway is built in Rust. To begin, install the Rust toolchain following instructions at https://www.rust-lang.org/tools/install. Then configure your Rust toolchain to use Rust stable:

rustup default stable

If not already done, add the Cargo bin directory to your PATH by adding the following line to ~/.profile and restarting the shell session.

export PATH="${HOME}/.cargo/bin:${PATH}"

Building Forc

Clone the repository and build the Sway toolchain:

git clone git@github.com:FuelLabs/sway.git
cd sway
cargo build

Confirm the Sway toolchain built successfully:

cargo run --bin forc -- --help

All other scripts/commands

For all other scripts and commands use https://github.com/casey/just:

> just --list
Available recipes:
    [automation]
    update-contract-ids
    update-fuel-dependencies

    [benchmark]
    benchmark
    benchmark-tests
    collect-gas-usage

    [build]
    build-highlightjs
    build-prism
    generate-sway-lib-std

    [ci]
    ci-check
    install-ci-check

    [test]
    test-forc-fmt-check-panic

Contributing to Sway

We welcome contributions to Sway!

Please see the Contributing To Sway section of the Sway book for guidelines and instructions to help you get started.