onflow / developer-grants

Grants for developers that contribute to the broader developer ecosystem
Apache License 2.0
50 stars 18 forks source link

Conditional Ownership of NFTs #62

Closed AlexanderBZ closed 1 year ago

AlexanderBZ commented 2 years ago

Creating an open source protocol for the conditional ownership of NFTs on Flow

Grant category

Please select one or more of:

Description

At Kickback Podcasts, we are developing a protocol for creators to receive recurring revenue for their projects through the conditional ownership of NFTs. This will be done through things such as NFT renting, subscriptions, ticketing, and more.

Problem statement

Over the past five years, there have been numerous ICOs and NFT projects created for celebs and creators that have fizzled out. Creators like Tyga, Floyd Mayweather, and more have all lost interest in keeping up with their own launched projects, as many of these celebs lose interest once they see the lack of recurring revenue. We believe we can help change this by implementing many of the NFT technology stated above.

Proposed solution

We believe that by implementing conditional ownership of NFTs on Flow, we can help creators connect with their 1000 true fans and earn a recurring revenue that will keep them engaged for years to come.

Impact

Gaming:

Ticketing:

NFTs:

Milestones and funding

Note: You can leave the USD proposal empty / "TBD". Please consider adoption and/or maintenance milestones at the end of your project.

Milestone Deliverables Timeline Risks USD proposal
1 - MVP Smart Contracts 6 weeks Taking longer than expected $10,000
2 - Audit Audit the contracts to ensure security 3 weeks Costing more than expected $7,500
3 - Onboard Devs Create three different hour+ long video tutorials to walk through devs on how to create and use the contracts in React websites themselves (1 for NFT lending website, 1 for minting of time based expiration website, and 1 for minting of use-based expiration website) 3 weeks Costing more than expected $1,500
4 - Adoption Develop a mirco grant program to inventive developers to use the protocol 3 months Developers wanting more money from the grant program $2,500
5 - Maintenance Maintain and expand the smart contracts/protocol based on developer feedback 3 months No real risks here $3,000

Team

Name Role Bio Contact
Alexander Full-Stack Engineer Alexander is a full stack/Flow developer with 5+ years of experience in the creator/audio economy via. co-producing podcasts and writing about musicians alexander.zwerner@gmail.com
Elie Lead Engineer Elie is a smart contract developer with a Masters in engineering and is currently working as a CTO at Citi Group elie.hamouche@gmail.com
alxflw commented 2 years ago

@AlexanderBZ can you provide us more information about:

AlexanderBZ commented 2 years ago

Thanks for the questions. I'll address both below:

  1. the implementation and the concept of conditional ownership?

    • Overview: Web3 in 2021 was dominated by NFTs. Big projects from teams like Flow and Yuga Labs amassed massive success and changed how people look at crypto. Creators also flooded the scene, creating wildly interesting projects. However, all these projects have struggled to create recurring revenue as most of the money is made when NFTs are minted. This has caused many creators to lose interest in NFT projects in the long run as they spend the initial money from the mint. We believe that by creating an open protocol for creators to time gate, rent, or use expire NFTs, they can create long-term recurring revenue, which will keep them more engaged and thus keep projects stronger long term. While we see a large use of these Flow contracts with creators, we also see a clear use for these protocols with other products like ticketing, real estate, and gaming.
    • Concept: Creating different ways for creators to earn recurring revenue by creating NFTs that expire/can be rented in several ways. This can be done through ways such as having them expire after a year, expire after multiple uses, or be returned to the original user after a couple of months. You may be asking how creators can make a recurring revenue from this? By time gating, NFTs creators can essentially launch collections every year to fund a project. On the renting side, creators can rent NFTs for a year instead of expiring them after a year. Once we create these conditional NFTs contracts, the sky is really the limit for how they can be used.
    • Implementation: We see these contracts being largely used by developers just starting in the Flow ecosystem. We see javascript SDKs doing exactly this in tokens like Arweave and Solana, but something like this doesn't exist for conditional ownership NFTs on Flow.
  2. the direct benefits that will make it easier for developers to build apps?

    • Web3 can be confusing, to say the least. There's Cadence, Rust, Solidity, etc. All of these languages are a lot to learn. The one language arguably everyone knows, though, is Javascript. We're planning on creating a SDK that developers can import into ReactJS and NextJS sites and use the contracts to create NFT renting websites, Token gated creator websites, use-based gaming NFTs, etc. all using javascript (essentially abstracting away Cadence for coders dipping their toe into Flow). We also see a world where these open source contracts serve as a starter kit for creating utility NFTs on top of like Open Zeppelin.

Happy to expand on the proposal further!

alxflw commented 2 years ago

thanks for the response! two more things:

1) can you expend on the methods your contract would have? 2) you're mentioning an SDK but that doesn't seem to be included in the milestones. should it be?

AlexanderBZ commented 2 years ago
  1. Initial contracts methods include:

    • time-based expiration
    • use-based expiration
    • renting of NFTs (time-based return to owner)
  2. With the creation of these open source contracts, we're planning on creating a super simple way for developers to use said contracts. This can be done through an SDK that allows devs to download it and then use a local JSON and image file to create the NFTs, similar to how Metaplex works. We also can do in-depth video breakdowns and tutorials on how to use them instead. Developing a useful SDK can take a lot of time and money, so we may go for in-depth tutorials instead in the beginning. We've reflected this in the updated budget/milestone breakdown/can discuss budget for this project and what the grant community would prefer - SDK or in-depth tutorials.

AlexanderBZ commented 2 years ago

Hi @alxflw. Just wanted to check in on if this proposal were something the Flow grant community would be interested in.

alxflw commented 2 years ago

hey @AlexanderBZ we'd be in favor of approving this grant but could you make the following changes:

AlexanderBZ commented 2 years ago

@alxflw just made the necessary changes

alxflw commented 2 years ago

awesome, thanks! this application is now accepted 🚀

I'll follow up with you via email with next steps!

AlexanderBZ commented 2 years ago

We recently created all of the NextJS websites - https://github.com/AlexanderBZ/Kickback-Projects, finished the time based contracts - https://github.com/AlexanderBZ/Flow-Time-Expiring-NFTs.git, and halfway done with the use based contracts. Making great progress 🚀

AlexanderBZ commented 2 years ago

We’ve just finished our MVPs of the contracts. Check them out here - https://github.com/AlexanderBZ/Flow-Conditional-NFTs

AlexanderBZ commented 1 year ago

We just finished all the videos to accompany our code, check them out here -> https://youtube.com/playlist?list=PLImTfrmjYO9oXdqnBzG7gtvk7QvS7kPWb

AlexanderBZ commented 1 year ago

Also make sure to submit a proposal to our grant program (https://docs.google.com/forms/d/e/1FAIpQLSef9xjqcggZmxY6yRaqnhAzoqZDR2HCapsiWbA4RGVTL46OXQ/viewform) to potentially win $500 to implement our contracts into a product that uses our contracts