over budget
FT Smart Contracts for Marketplaces
Current Project Status
Unfunded
Amount
Received
$0
Amount
Requested
$75,000
Percentage
Received
0.00%
Solution

A set of open-source smart contracts that enable any marketplace to support NFT purchases with fungible tokens.

 

This Provides a framework for all Cardano native assets to have increased utility.

Problem

NFTs are driving user engagement and adoption of Cardano, yet the only asset being used to facilitate these trades is ADA.

 

This leaves a gap in utility for the fungible tokens of Cardano.

Impact / Alignment
Feasibility
Auditability

Team

2 members

FT Smart Contracts for Marketplaces

Please describe your proposed solution.

The proposed solution is a set of open source smart contracts for marketplaces to support fungible token based purchases of NFTs. Before we dive in deeper to this topic let's have a bit of an education lesson on Cardano based tokens and how they are transacted:

Due to the design of the Cardano blockchain all tokens, fungible and non-fungible, are considered Cardano Native Assets. This means they all follow the same standard of having a policy ID that assets are minted under. This policy ID catalogs the assets minted underneath it and allows for a locking time where assets can no longer be minted. The beauty of this design is if a smart contract can support 1 Cardano Native Asset it can support any other.

Another aspect of Cardano’s design is how it handles transactions with its Extended Unspent Transaction Output Model (eUTxO). A UTxO, as its name suggests, is a collection of assets (ADA and/or tokens) that is owned by a wallet and is waiting to be spent in the form of a transaction. A transaction can utilize multiple UTxOs from a given wallet in order to perform smart contracts and other functions on the Cardano blockchain. An easy way to visualize this is that your wallet is a plate holding a cake with each slice being a UTxO. The slices make it easy to transact with many friends all at once and engage with smart contracts.

Now let's bring Cardano Native Assets and UTxOs together. As a security mechanism the Cardano blockchain does not allow UTxOs to form without having a small amount of ADA in them. This ADA is generally referred to as the min UTxO. This is done to protect the Cardano blockchain from having an ever increasing amount of UTxOs and therefore on-chain data. In order to transact a Cardano Native Asset a user must have ~1.5 to 2 ADA move with the native asset to the new wallet.

Here’s an example of how UTxOs, min ADA amounts, and Cardano Native assets plays out in a Marketplace smart contact:

  1. Sally wants to sell her Happy NFT for Bob’s FUN tokens
  2. Sally deposits her Happy NFT into a smart contract. In order to complete the transaction 1.5 ADA must accompany her NFT in the smart contract
  3. There is now 1 UTxO of a Happy NFT and 1.5 ADA in the smart contract
  4. Bob now deposits his FUN tokens into the smart contract accompanied by 1.5 ADA
  5. There are now 2 UTxOs in the smart contract. One with 1 Happy NFT and 1.5 ADA. The other with the FUN tokens and 1.5 ADA
  6. The contract now completes by sending the FUN tokens and 1.5 ADA to Sally and sends the Happy NFT and other 1.5 ADA to Bob

This example illustrates the increased level of complexity when a marketplaces smart contracts support fungible token trading as opposed to just ADA. This complexity increases with the number of parties needing to receive Native Assets such as in the case of royalties paid out to NFT creators. The purpose of this proposal is to design a set of smart contracts that makes it easy for any NFT marketplace to support fungible token based trading.

Our Background

We are the team behind the PlayerMint project. PlayerMint is a protocol that rewards gameplay performance in existing games like Fortnite with a fungible token called PMX. This token is then spendable across an NFT marketplace. We have been in smart contract development of this protocol since last year with the dev consultancy MLabs. MLabs has contributed to notable Cardano projects such as Liqwid, SundaeSwap, Minswap, and SingularityNet. We are currently gearing up for the launch of our testnet. If you want to get the latest information on our development status (testnet may be live when reading this!) please check out our Public Development Update doc.

As a team we hold a strong belief in the benefit of a shared set of tools that all developers on a particular blockchain can take advantage of. We are already building a set of smart contracts that support fungible token based NFT trading for our own protocol. We believe that sharing them with other marketplaces will only benefit the projects of Cardano that mint Native Assets.

The Solution

The completed development, testing, and available integration of the following set of smart contracts into the NFT marketplaces of Cardano:

  • List NFT
  • Enables a seller to list a NFT that can be purchased with a set type (ex: PMX or MIN) and amount of fungible tokens
  • Change List Price
  • Enables a seller with a listed NFT to change the type and amount of fungible tokens required to purchase the NFT
  • Unlist NFT
  • Enables a seller with a listed NFT to unlist it and have the NFT return back to their wallet with the associated min UTxO
  • Purchase NFT
  • Enables a buyer to purchase an NFT from a seller with fungible tokens

<u>Phase 1 - Development</u>

The first phase of this solution will be completing development of the above smart contracts. We have completed the initial set and are currently deploying them in a testnet environment. During this deployment, MLabs conducted an internal audit that discovered better mechanisms for UTxO management. If this proposal is successful the 1st step would be deploying funds to optimize the above smart contracts and make them as robust as possible.

<u>Phase 2 - Testing</u>

The second phase of this solution would be deploying the optimized smart contracts into a testnet and mainnet environment with live user interaction. At PlayerMint we are already gearing up for a testnet launch and by the time you are reading this it could be live! Once we have launched the testnet we will analyze how the smart contracts function under stress and usage. Once we are confident in the smart contracts condition we will deploy them to the Cardano mainnet where users will be able to buy and sell NFTs with PMX. Once we are confident in the mainnet deployment of the contracts we will move on to the 3rd and final phase.

<u>Phase 3 - Available Integration</u>

After the smart contracts have seen much usage in a testnet and mainnet environment we will open source them for usage by other developers. After completing the licensing process for open sourcing all the smart contracts we will begin a campaign of working with existing NFT marketplaces to deploy the smart contracts on their platforms. Here is the standard flow we will follow for the campaign:

  1. Create a pitch deck displaying what the smart contracts are, how they can be implemented, and why they are beneficial
  2. Create a list of projects to reach out to along with intro messages catered to their project
  3. Contact projects and setup calls with their dev team
  4. Have intro calls with projects
  5. If a project expresses interest then continue conversation with them and work towards integration

Here are the projects we have in mind for deployment:

Why it’s Important

The Cardano ecosystem is strongest when the projects within it support one another. This set of open source smart contracts creates transactability between the two types of blockchain assets (fungible and non-fungible) that developers can utilize in their current and future projects.

Who it Benefits

Because the smart contracts create transactability between fungible and non-fungible tokens any project that has minted either can benefit from them, whether they are the project to implement them or not. In addition to this the standard user who is engaging with these projects by earning tokens and minting NFTs has new found utility.

<u>NFT Developer User Experience</u>

NFT Marketplace

  1. The Garage Sale marketplace is looking to bring on new users and add to its total trading volume
  2. Garage Sale discovers the set of open source smart contracts when they are message by PlayerMint
  3. With the help of PlayerMint, Garage Sale implements the smart contracts into their marketplace
  4. Garage Sale announces their new feature to the Cardano community
  5. Holders of fungible and non-fungible tokens are now visiting Garage Sale in order to trade their Cardano Native Asset
  6. Garage Sale experiences an increase in total volume and users

NFT Creator

  1. The creator of the Under the Sun NFT collection wants to increase total sales of their project
  2. The creator spreads the word of a new marketplace, Garage Sale, that enables trading with fungible tokens
  3. Potential buyers of the Under the Sun NFT head to the Garage Sale to purchase the NFT with tokens they earned through engaging with other dapps
  4. The creator of the Under the Sun NFT collection has a wider holder base and has received royalties based off of new found trading volume

<u>FT Developer User Experience</u>

  1. Bob created a fungible token called FUN that can be earned through making people laugh
  2. Bob’s community is earning FUN tokens and looking for ways to spend them
  3. Bob’s community discovers an NFT marketplace that has integrated the described smart contracts
  4. Bob’s community can now use the FUN tokens they earned to buy and sell NFTs

<u>Trader User Experience</u>

  1. Jenna is in the market for some NFTs and has a stockpile of PMX based off her gaming experience with PlayerMint
  2. Jenna heads to a fungible token supported marketplace and begins trading with her PMX
  3. Jenna is now the owner of a Under the Sun NFT and Sam, the seller, has a new fungible token to engage with

Please describe how your proposed solution will address the Challenge that you have submitted it in.

The Developer Ecosystem challenge is focused around enriching the developer experience on Cardano in order to produce high quality applications. The proposed solution meets this challenge by providing developers an easy way to service fungible tokens in NFT marketplaces. Doing so provides mass utility to the projects minting such tokens on Cardano.

The proposed solution is important to developers as it has a way of benefiting every project involving Cardano Native Assets.

What are the main risks that could prevent you from delivering the project successfully and please explain how you will mitigate each risk?

The main risks of the proposed solution involve its upkeep and adoption between NFT developers and collectors.

As we are seeing with the Vasil Hardfork and various CIPs the development environment of Cardano is getting updated over time. In order to keep up with these updates, smart contracts must evolve to take advantage of new features. The set of smart contracts proposed is being built by PlayerMint with development assistance from MLabs. The PlayerMint Marketplace relies on these smart contracts in order to enable trading with PMX. This means there is a natural incentive for PlayerMint to keep the smart contracts up to date and available to the NFT developers of the Cardano community.

In terms of NFT developers the adoption of fungible token integration makes a lot of sense. It increases the overall amount of potential trades that a marketplace can support and therefore its potential revenue. It can also bring new users to the marketplace seeking to utilize tokens they’ve accumulated.

On the side of NFT traders, many of these people already have a wallet full of tokens. If they didn’t obtain them through DEXs they could earn them through holding or staking the NFTs they own. Projects like Clay Nation, Yummi Universe, The Ape Society, Cornicopious, DEADPXLZ, Cardania, AdaQuest, and RatsDAO all service fungible and non-fungible tokens. From PlayerMint’s experience in communicating with some of these projects and their community members they are very interested in having their fungible token supported in marketplaces.

Please provide a detailed plan, including timeline and key milestones for delivering your proposal.

The following text provides insight into the timeline that this proposal will be completed in, along with the milestones and deliverables associated with it. Please reference the above “The Solution” section of the proposal to understand what each phase is.

Phase 1 - Development

Deliverables and Milestones

  • Weekly updates on the status of each of the smart contracts through the PlayerMint Discord based off communication with MLabs
  • Completion of the optimized smart contracts

Timeline

  • The development phase is predicted to take 1 month

Phase 2 - Testing

Deliverables and Milestones

  • Deployment of the optimized smart contracts on to the Cardano testnet and mainnet
  • Weekly updates on how the smart contracts are handling the volume of transactions. This could include the level of successful to unsuccessful smart contract usage and overall user impression of the experience

Timeline

  • The testing phase is predicted to take 3 months. 1 month in a testnet environment and 2 months on mainnet

Phase 3 - Available Integration

Deliverables and Milestones

  • The complete and published pitch deck displaying the benefits of fungible token support for marketplaces
  • Weekly updates on how many NFT developers we have messaged, their level of interest, and whether they plan to or have integrated the smart contracts

Timeline

  • The available integration phase is predicted to take 2 months. Both months will be used to contact and assist projects interested in integrating the smart contracts

This 6 month timeline is built upon padded estimates as we want to be prepared for potential bugs and issues found.

Please provide a detailed budget breakdown.

The proposed budget for this proposal is $75,000. All of these funds would be utilized in order to support the 3 phases described in “The Solution” portion of this proposal:

<u>Phase 1 - Development</u>

This phase will take 1 months and a total of $25,000. This budget will go towards paying MLabs for their work on optimizing the smart contracts and ensuring they work as intended.

<u>Phase 2 - Testing</u>

This phase will take 2 months and a total of $45,000. This budget will go towards paying MLabs for the deployment and testing of the smart contracts on the Cardano testnet and mainnet through the PlayerMint platform.

<u>Phase 3 - Available Integration</u>

This phase will take 2 months and a total of $5,000. This money will go towards covering the time spent by PlayerMint team members open sourcing the smart contracts and assisting NFT developers interested in integrating them.

Please provide details of the people who will work on the project.

PlayerMint may be the primary group coordinating the project, but we have extensive help from MLabs from a code based development perspective.

PlayerMint Team working on this project:

  • Grant Scholl - Chief Executive Officer. Has 2 years of experience in gaming and 4 years in blockchain. He works to build out the ultimate vision of PlayerMint and how it will evolve over time.
  • Aidan Rankin-Williams - Chief Experience Officer. Has 2 years of experience in gaming and 4 years in blockchain. He works to form the user experience from first contact marketing to engagement across the product and customer support.
  • Josh Shull - VP of Marketing Services. Has 8 months of experience in gaming and blockchain. He works to rally and strengthen a community of gamers, crypto enthusiasts, and NFT collectors so PlayerMint has a strong user base.
  • Jack Rousseau - VP Of NFT Business Development and Sponsorship. Has 6 months of experience in gaming and blockchain. He works to develop strong relationships with esports orgs, gaming content creators, and projects needing help in the world of NFTs, while driving them to the PlayerMint platform.
  • Courtney Guthrie - Project Coordinator. Has 5 months of experience in gaming and blockchain. She works to assist Josh, Jack, and Aidan across marketing, NFT development, and user experience design.
  • Greg Fox - Strategic Advisor. Has 7 years of experience in gaming and 2 years in blockchain. He works to provide advice and guidance as to how the project should progress and establish quality lines of revenue.

Collectively we have a passion for the gaming industry, blockchains like Cardano, and the assets and experiences we can build on top of them.

The following individuals are the lead developers PlayerMint works with from MLabs:

If you are funded, will you return to Catalyst in a later round for further funding? Please explain why / why not.

The 3 phases of the proposal that are described in “The Solution” section and the deliverables described in “Detailed Plan with Timeline and Key Milestones” will be considered the extent of this proposal if it is funded. That being said if projects continue to show interest in integrating the set of smart contracts, PlayerMint will always be open to assisting them.

PlayerMint’s natural need to update these smart contracts for our own platform will ensure they are as optimized as can be. That being said it is very possible that we will return to Project Catalyst in the hopes of further funding to ensure the set of open source smart contracts are maintained and integrated in the Cardano ecosystem

Please describe what you will measure to track your project's progress, and how will you measure these?

The following metrics will be used to determine the projects development cadence and success:

  • During Development phase
  • Number of weekly updates that express positive development
  • During Testing and Available Integration phase
  • Qualitative feedback on how users enjoy the smart contract experience
  • Qualitative feedback on how NFT/FT developers enjoy the set of smart contracts
  • Number of total unique wallets connected
  • Number of successful smart contract executions
  • Total volume of NFTs traded with smart contracts
  • Number of NFT collections traded
  • Number of fungible token types used
  • Total transaction volume of Cardano Native Assets before and after available integration
  • During Available Integration phase
  • Number of projects messaged
  • Number of projects pitched to
  • Number of projects expressing interest in usage
  • Number of projects integrated
  • Qualitative feedback on how easy (scale of 1-10) it was to integrate smart contracts

As we develop through the various phases we will add to our list of metrics. The above metrics will be obtained through a collection of on-chain analysis through tools like CardanoScan, website analytics, feedback forums, and project trackers like Monday.

What does success for this project look like?

Success is the completion of the 3 phases described in “The Solution” portion of this proposal along with hitting all of the provided milestones and deliverables in their associated timeline.

In a larger sense the PlayerMint team will truly base our level of success on the amount of utility we brought to NFT/FT developers, creators, and traders. If the entire Cardano ecosystem is seeing a boom in usability of their Cardano native assets we will know this proposal had the success we were hoping for.

Please provide information on whether this proposal is a continuation of a previously funded project in Catalyst or an entirely new one.

The stated proposal is completely new in the sense that it works to open source and bring the NFT smart contracts PlayerMint is developing to other projects. That being said, PlayerMint built these smart contracts with funding assistance from our proposals in Fund4, Fund6, and Fund8.

close

Playlist

  • EP2: epoch_length

    Authored by: Darlington Kofa

    3m 24s
    Darlington Kofa
  • EP1: 'd' parameter

    Authored by: Darlington Kofa

    4m 3s
    Darlington Kofa
  • EP3: key_deposit

    Authored by: Darlington Kofa

    3m 48s
    Darlington Kofa
  • EP4: epoch_no

    Authored by: Darlington Kofa

    2m 16s
    Darlington Kofa
  • EP5: max_block_size

    Authored by: Darlington Kofa

    3m 14s
    Darlington Kofa
  • EP6: pool_deposit

    Authored by: Darlington Kofa

    3m 19s
    Darlington Kofa
  • EP7: max_tx_size

    Authored by: Darlington Kofa

    4m 59s
    Darlington Kofa
0:00
/
~0:00