Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

BackStore | Marketplace #103

Closed
AmarildoGrembi opened this issue Oct 11, 2022 · 3 comments
Closed

BackStore | Marketplace #103

AmarildoGrembi opened this issue Oct 11, 2022 · 3 comments

Comments

@AmarildoGrembi
Copy link

AmarildoGrembi commented Oct 11, 2022

BackStore | Marketplace

Grant category

  • Developer tools / services
  • Open source maintenance

Description

An easy, simple and quick way to set up and ship a Flow Marketplace. In order to achieve that, we would like to build a marketplace API on top of NFTStorefrontV2 in the form of open source software.

Problem statement

NFT related projects are the most active so far in the Flow ecosystem. This is mostly due to Dapper Labs partnerships and solutions built based on their CryptoKitties experiences and conclusions. Hence, there is a clear need for NFT marketplaces, and at buildsquad we believe that NFT marketplaces are going to eventually be as prevalent as e-commerce sites one day.

New projects and developers want (and will eventually want) to build their own marketplace (or NFT related solutions) on Flow but have no experience with it or Flow Dapps. The main reason being that the Flow ecosystem is still quite segregated as it has its own smart contract programming language, which requires prior knowledge and experience. The existence of NFTStorefront is already a good step as experienced builders do not have to write a custom smart contract and the community is already embacing it. But for less experienced developers, there is an entry barrier.

  • Target audience: Web3 Builders

    • Who are looking to upgrade to NFTStorefrontV2 straightforwardly.
    • Who want to create an NFT marketplace or marketplace-related tooling on Flow.
    • Who want to learn how to create a marketplace on Flow.
    • Who want to use/take advantage of NFTStorefrontV2 without cadence knowledge.
    • Who want to port their marketplace to Flow in a simple way.
    • Who are looking for an indexer for NFTstorefrontV2.
  • Evidence for the need:

    The existence of NFTStorefront with over 9 million transactions is a great contribution towards standardizing NFT marketplaces, I quote its description:

    NFTStorefront uses modern Cadence run-time type facilities to implement a marketplace that can take any currency in order to vend any token in a safe and secure way. This means that only one instance of the contract is needed (see below for its address on Testnet and Mainnet), and its resources, transactions, and scripts can be used by any account to create any marketplace.

    The NFTStorefrontV2 that we will specifically utilize, is an upgraded version of NFTStorefront, and the community has already started to integrate it. Having said that, the integration so far is less than 5% (this is deduced by simply counting transactions of NFTStoreFront against those of NFTStoreFrontV2 ), and obviously, there is no indexer for it. With our proposed API, some of the blocking barriers will be eliminated and it will allow builders to jump-start with the essential things of their project.

Proposed solution

We propose to create an end-to-end solution of a Flow marketplace that will be fully open source. Our main aim is to build on top of NFTStorefrontV2 so we could leverage its capabilities and create the necessary tooling to allow everyone to easily do so. Specifically, we would have a backend module and a Proof-of-Concept Open Marketplace:

  • Backend module: An easy and simple way to set up and ship a marketplace on Flow, consisting of:

    • Database
      • Listings
      • Sales History
      • NFT metadata
      • Collection metadata
      • Events related to the marketplace (e.g new storefronts being initialized)
    • Indexer
    • Marketplace API
      • Searching through collections
      • Sorting collections
      • Searching through NFTs within the collection via metadata attributes
      • Sales history for specific NFT items
      • Display NFTs for a particular address
      • Display collections for a particular address
  • PoC Open Marketplace:

    • Connect with the wallet
    • Raw Transactions and scripts
    • Connection with backend marketplace API
    • Core functionalities
      • Create a collection
      • Transfer one, multiple or all NFTs of a collection
      • Add nfts for sale (fixed price)
      • Remove nfts from the sale
      • Mint/Create NFT
      • Search by collection - ID or name
      • Sorting collection
      • Burn one, multiple or all NFTs of a collection

Impact

  • In what ways does this benefit the broader Flow developer ecosystem?
    This project will impact significantly the Flow developer ecosystem, specifically:

    • Speed up NFT Marketplace standardization via an easy solution that is created using NFTStorefrontV2.
    • Speed up transition to NFTStorefrontV2.
    • Developers will be able to learn how to easily ship a marketplace on Flow and interact with its different components.
    • Being an open source and public good solution implies that anyone can use it/improve it for their project, developers won't need to reinvent the wheel thus improving developer experience, speed and adoption.
    • Developers who don't know about cadence will be able to create a marketplace.

    This project will also benefit the wider Flow ecosystem by using the PoC Open Marketplace to showcase to community members how to mint and trade collections (as well as any regular functionality that the NFTstorefrontV2 smart contract allows).

Milestones and funding

Milestone Deliverables Timeline Risks USD proposal
1 - Research & Design Backend Module & PoC Open Marketplace - Set up and design 3 weeks - TBD
2 - MVP Backend module - Dockerized container that deploys a marketplace MVP 5 months - TBD
3 - PoC Open Marketplace Complete all target functionalities 2 months - TBD
4 - Documentation API Docs 2 weeks - TBD
5 - Testing Tests for backend module & PoC Open Marketplace 2 weeks - TBD
6 - Adoption 5 teams using this project 6 weeks - TBD
7 - Maintenance Resolving issues and bug fixing 6 months - continuously, if needed - TBD

Planning

  • Milestone 1 will be collectively worked on by the entire team and it is a prerequisite for all other milestones.
  • For Milestones 2 and 3, we will first need to have a working skeleton of the backend module, and then the PoC Open Marketplace can be done in parallel. Most likely at around 2-3 months after working on the backend module, we can begin with the PoC Open Marketplace implementation.
  • For Milestones 4 and 5, it is a good idea to work on these while we work on Milestones 2 and 3, as it is going to increase our development productivity by having tests and docs. Making changes down the road, will be easier and less error prone.
  • Milestone 6 does not require any development effort, it is mostly about exposure and advocacy of the project, and the previous milestones are prerequisites for this one.
  • Milestone 7 is about keeping the project active and supporting developer / community requests. This will require some triaging for incoming issues / requests and of course some development effort.

Team

BuildSquad (a startup that launched recently) is a curated squad of web3 builders that aim to enrich the web3 ecosystem by developing products, tools, prototypes, and tutorials in the form of open-source public goods.

Name Role Bio Contact
Amarildo Co-Founder Software Engineer Experienced in full-stack web development and blockchain integrations (including Flow), and, a successful track record in early phase start ups. Dreaming of full adoption since late 2018. [email protected] amarildo#3686
Matthias Co-Founder Regulatory lawyer advising major international DeFi and CeFi platforms on their market entry in Europe, product compliance, governance and AML frameworks. [email protected] Matthias Winter#3465
Marco Full-Stack Engineer Freelance full-stack developer with over 10y experience, 2y focusing on Flow & ETH. Web Developer @ Chainmonsters, focusing on website, marketplace and onchain interactions. [email protected] maggo#1337
Ardit Back-end Engineer A seasoned back-end engineer with focus on problem solving and designing robust software systems. Over 8 years of experience building high-traffic search engines, marketplaces, and exchanges and in-house analytics solutions. Lead cross-functional teams to deliver both web and mobile apps, participating in all steps of the software development lifecycle. Open source lover and advocate. [email protected] mpeter#2138
Aleksa Full-Stack Developer Full-stack developer with over 6y experience. 2y focusing on Flow & 4y on ETH. Mostly developing smart contracts or backend integrations for smart contracts. Dreaming of becoming chain whisperer in order to support full adoption. [email protected] Ten Walls#1056
@chrisackermann
Copy link

Hi @AmarildoGrembi, thanks again for submitting your proposal! We're reviewing and will get back to you shortly.

@AmarildoGrembi
Copy link
Author

Edit: made some small corrections on the proposed solution and small changes on milestones timeline.

@chrisackermann chrisackermann removed their assignment Jul 3, 2023
@Aliserag
Copy link
Collaborator

We appreciate your proposal and taking the time to fill it out. After careful review we've decided not to proceed at this time. Please stay connected to our Twitter and working groups to stay on top of the latest developments in the ecosystem and new grant opportunities.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants