• Stars
    star
    1,580
  • Rank 29,563 (Top 0.6 %)
  • Language
    Rust
  • License
    Apache License 2.0
  • Created over 2 years ago
  • Updated 2 months ago

Reviews

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

Repository Details

Swaypplications

SwayApps logo

Overview

The purpose of this repository is to contain end-to-end applications that are written in Sway in order to demonstrate what can be built.

This means that a project will generally consist of a Sway contract and a user interface in order to interact with the contract however that is not a hard rule.

Note
Sway is a language under heavy development therefore the applications may not be the most ergonomic. Over time they should receive updates / improvements in order to demonstrate how Sway can be used in real use cases.

Repository Structure

Each project within this repository is independent of the other projects and thus every project has its own directory with all of the files required to make it work.

That being said they are all under the same CI so any updates to a project must make sure that the other projects continue to pass.

The following is a visual sample of how the repository is structured.

sway-applications/
├── Project-1
|    └── P-1 Directories & files
├── Project-2
|    └── P-2 Directories & files
├── LICENSE
└── README.md

Projects

Asset Management

  • Airdrop is a token distribution program where users are able to claim tokens given a valid merkle proof.
  • Escrow is a third party that keeps an asset on behalf of multiple parties.

Warning
The Fractional-NFT has been archived until the release of the Sway multi-token standard.

  • Fractional-NFT allows multiple parties to claim ownership of an NFT directly proportional to the number of tokens they hold.

Warning
The Non-Fungible Token (NFT) has been archived until the release of the Sway multi-token standard.

  • Non-Fungible Token (NFT) is a token contract which provides unique collectibles, identified and differentiated by token IDs, where tokens contain metadata giving them distinctive characteristics.
  • Timelock is a contract which restricts the execution of a transaction to a specified time range.

Decentralized Finance

  • Automated Market Maker (AMM) is a decentralized exchange protocol that manages liquidity pools supplied by its users and determines prices algorithmically while exchanging assets.
  • English Auction is an auction where users bid up the price of an asset until the bidding period has ended or a reserve has been met.
  • Fundraiser is a program allowing users to pledge towards a goal.
  • OTC Swap Predicate is a predicate that can be used to propose and execute an atomic swap between two parties without requiring any on-chain state.

Governance

Other

  • Counter-Script is a script that calls a contract to increment a counter.
  • Name-Registry allows users to perform transactions with human readable names instead of addresses.
  • Oracle is a smart contract that provides off-chain data to on-chain applications.

Games

  • TicTacToe is a game where two players compete to align three markers in a row.

Running a project

If you wish to run any of the projects then clone this repository and go through the general installation steps required to use our tools.

Any instructions related to running a specific project will be found within the README.md in the root of that project.

The projects are pinned to specific versions which can be seen at the top of the README.md inside the /<app>/project directory and inside the fuel-toolchain.toml.

Contributing

Check out the book for more info!

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

fuels-rs

Fuel Network Rust SDK
Rust
44,281
star
5

fuel-specs

📝 Specifications for the Fuel protocol and the FuelVM, a blazingly fast blockchain VM.
1,779
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
169
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
68
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

sway-by-example-lib

Library for compiled sway programs
17
star
47

block-explorer-v2

Block explorer frontend for Fuel.
TypeScript
17
star
48

sway-lib-core

Sway standard library core primitives.
Rust
15
star
49

infrastructure

Shared infrastructure templates for Fuel services
HCL
15
star
50

EVM-Wallet-Connector

TypeScript
14
star
51

bridge-fungible-token

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

fuel-tx

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

sway-vs-solidity

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

github-actions

Reusable Actions workflows
JavaScript
12
star
55

tree-sitter-sway

C
12
star
56

chain-configuration

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