Giter VIP home page Giter VIP logo

sway-applications's Introduction

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 an asset distribution program where users are able to claim assets given a valid merkle proof.
  • Escrow is a third party that keeps an asset on behalf of multiple parties.
  • Non-Fungible Native Asset (NFT) is an asset contract which provides unique collectibles, identified and differentiated by IDs, where assets contain metadata giving them distinctive characteristics.
  • Fractional Non-Fungible Token (F-NFT) is a token contract which issues shares or partial ownership upon locking an NFT into a vault.
  • Timelock is a contract which restricts the execution of a transaction to a specified time range.
  • Native Asset is a basic asset contract that enables the use of Native Assets on Fuel using existing standards and libraries.

Decentralized Finance

  • 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.

Low maintenance

The below apps are updated to the latest version, but may have broken tests or broken functionality. Use at your own discretion.

  • Automated Market Maker (AMM) is a decentralized exchange protocol that manages liquidity pools supplied by its users and determines prices algorithmically while exchanging assets.

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!

sway-applications's People

Contributors

k1-r1 avatar swaystar123 avatar braqzen avatar bitzoic avatar supiket avatar matt-user avatar pandabadger avatar fgimenez avatar geckosplat avatar brandonsurh avatar simonr0204 avatar omahs avatar hummusonrails avatar niravprajapati1 avatar nfurfaro avatar voxelot avatar x86cow avatar miles-six avatar collinwootan avatar hal3e avatar haadfida avatar samantatarun avatar rubyt0x avatar flipflopapp avatar luizstacio avatar kirito-excalibur avatar kaisersakhi avatar adlerjohn avatar alicanc avatar izaakwltn avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.