Implementation of the Swapping Tool with unique and demanded features for swapping NFTs and NFT collections
FlexiSwap is a universal Swapping Tool, which combines already presented features and introduces new ones.
We introduce:
All trades can be accomplished by wish list or any user can create his/her counteroffer to already existing trade.
For our feature plans we are going to:
Why we believe in FlexiSwap:
This project uses several parts to deliver the best UX. Trades are created and completed on-chain with FlexiSwap smart-contracts written in Solidity. Currently only ERC721 are supported, but we are planning to add support of ERC20 & ERC1155 in the future. All trades data are indexed with The Graph to provide an easy-to-use GraphQL API. NFTs metadata & ownerships are fetched from NFTPort. Also we have custom back-ends written with Nest.js for wrapping NFTPorts data to GraphQL and federate it with The Graph provided data. One last thing, front-end written with React.ja is fetching data from federated GraphQl API and writes data on-chain with ethers.js.
For our nearest plans, we want to get rid of GraphQL federation and compose GraphQL APIs directly on front-end with graphprotocol/graph-tools with composition API.