[GRANT REQUEST] ZEROX Data Layer

Basic Details

Project name: 0x Data Layer

Point of contact:

Discord: joaocampos_

Team background:

João Campos: Head Dev DexKIt, over 6 years experience on working on decentralized applications. We already developed Graphs for our products and developed products targeting 0x protocol.

Project Details

Describe the problem being solved:

DexKit utilizes the 0x protocol as the primary protocol for its white-label products. To date, our system has successfully deployed over 363 apps, encompassing NFT marketplaces, swap platforms, and exchanges. While developing an open limit order exchange, we encountered certain limitations in acquiring data providers at reasonable pricing. Given that our user base primarily comprises small projects, it’s imperative that we offer them a competitive solution.

Our proposed solution entails the creation of a Graph-based data layer originating from the 0x protocol, which will be extended to all chains supported by the 0x protocol. Presently, a 0x subgraph exists exclusively for Ethereum hosted at GitHub - 0xProject/ep-subgraph, but our plan involves broadening this graph to accommodate NFT trading and expanding its coverage to encompass all other chains supported by The Graph Protocol.

Explain how the funding will be used:

The funding will be allocated for the development and deployment of subgraphs across all chains. Our roadmap consists of the following steps:

  • Adapting the Graph to function seamlessly with all chains supported by the ZRX protocol and include NFT trades.

Development of React hooks to facilitate interaction with the graphs, including:

  • useCollectionHistory: This allows the creation of tables displaying all trades that have occurred on the ZRX protocol for a specific NFT collection.
  • useCollectionStats: This enables the generation of rows featuring collection-related analytics.
  • useCoinPairHistory: This facilitates the creation of tables showcasing pair history, such as ETH-USDC.
  • useCoinHistory: A simplified version of useCoinPairHistory, which always pairs with a stablecoin.
  • useCoinStats: Providing global coin statistics over specified periods (e.g., 24 hours, 72 hours).
  • useCoinPairStats: Offering global coin pair statistics over specified periods (e.g., 24 hours, 72 hours).
  • The creation of example components within the open-nft-marketplace and dexkit-open-monorepo, showcasing the functionality of this package.

This roadmap outlines our strategic plan for utilizing the funding and advancing our project.

We plan to finish all this work in 6 to 9 months.

Indicate whether your solution/product will integrate directly with the 0x Protocol contracts (such as the 0x Exchange Proxy) or via APIs. If APIs, please list them (if known):

This solution will integrate with The Graph and 0x protocol directly.

List any critical milestones and dependencies (if applicable):

  • Graph development to include NFT trading
  • Deployment of Graphs across all chains
  • Hooks development and npm publish
  • Documentation for React components

All code will be open source and additionally integrated as section plugins on DexAppBuilder widget system.

Describe how the solution/product benefits the 0x Protocol Ecosystem:

Add an additional data API on top of the 0x protocol, along with additional tools for developers to work with the 0x protocol.

Do you agree to tag your solution/product for visibility in 0x Explorer:

Yes

What are the actual and/or target usage metrics (such as users and volume) for your solution/product:

We are providing a library for other projects to build analytical tools on top targeting 0x protocol and also our product. We will measure our success based on forks, stars and npm package installs.

Funding Request

We are requesting 70K for deployment and development of all subgraphs, hook library to interact with Graph, and maintenance for two years.

Additional Notes

We seek improvements and feedback from community for next 2 weeks and we will move this to a snapshot vote.

As a delegate I will not vote on this proposal.

1 Like

Will you be recusing yourself from this vote, since you’re a rather large delegate?

I added on additional notes of this proposal a paragraph making it clear I will not vote on this proposal.

1 Like

The problem statement is unclear in the following areas:

  1. Definition of the problem and the implications, i.e., what exactly is the problem and why does it matter to protocol stakeholders

The solution description is unclear in the following areas:

  1. How the proposed solution addresses the problem

  2. How the proposed solution compares to alternate solutions, along with the trade-offs, i.e., why this solution is preferable to other options

  3. Details regarding the proposed subgraph specifications or a description of how the specifications will be determined

  4. Details regarding how the proposed features/libraries identified in the roadmap section were determined, along with any validating signals associated with these features indicating known or likely demand and usability/usage, and an indication of whether these represent a complete list or a preliminary/representative list

  5. Details regarding the maintenance and support efforts associated with the proposed solution

  6. Estimated likely usage of the proposed solution and how the estimate was determined, including an analysis of the existing subgraphs and their usage

  7. Meaningful metrics and/or success criteria

  8. Components of the cost and how the cost was determined

  9. List of deliverables and delivery schedule

Please address the following:

  1. Potential to drive new capabilities, use cases, and/or users for the 0x protocol

  2. Relative cost and proportional benefit, i.e., why the cost for this solution is justified and reasonable

Hi Nikita, thanks for the questions, let me address each one by order:

As of today, there is no decentralized solution for bringing data analytics regarding NFT trades happening on the 0x protocol on any network supported by the protocol. With what we are proposing, any developer can build NFT marketplaces with trading history and account trading history, which is crucial for any marketplace, in my opinion. Additionally, we propose to integrate this into our open NFT marketplace as a use case. This factor could be a deal-breaker for developers not using the 0x protocol.

Regarding token trading, there are subgraphs for Uniswap, but there are no such subgraphs for the 0x protocol (only on Ethereum). I believe this is another weak point of the 0x protocol. Accessing data analytics should be as easy as limit order settlement on the protocol. A dedicated open subgraph for the 0x protocol will enable more developments on top to power decentralized exchanges and analytics dashboards.

The solution description is unclear in the following areas:

We will create subgraphs for each network supported by the 0x protocol, and we will also develop React hooks with examples illustrating how to use them on production websites.

Alternative solutions are either proprietary, lack NFT trading capabilities, or do not support all the networks that the 0x protocol does.

We will expand the existing 0x subgraph deployed on Ethereum to include NFT trading, following the same pattern. This will enable developers to retrieve data on total NFT trades, total ERC721 trades, total ERC1155 trades, as well as trades per account and trades per collection.

Existing libraries were identified as necessary components for any NFT marketplace or limit order exchange. Analytics per account, collection, and token are commonly required functionalities.

The solution will be used by DexKit so we will commit to maintain it.

The current subgraphs were not being maintained and were deprecated in favor of the original developer’s internal solution.

We will quantify our success criteria for the react hook library: installations, stars and forks; The subgraph usage based on query fees

We estimate a project timeline of 6 to 9 months, with two developers working 200 hours per month at a rate of $40 per hour (considered a conservative price for development hours). The breakdown of the timeline is as follows:

  • Create a universal GitHub subgraph for all networks supported by the 0x protocol (BSC, ETH, Polygon, Base, Optimism, Arbitrum, CELO, Fantom, Avalanche, and any upcoming networks). This includes testing and deployment, which will take approximately 2.5 months.
  • Add NFT trading support to each subgraph, which is expected to take around 1.5 months.
  • Develop a React hooks library, with an estimated timeline of 3 months.
  • Prepare documentation and implementation examples, which will require 1 to 2 months.
  • Maintenance, including adding support for new networks, is planned for a duration of 2 years.

Please note that there may be additional costs associated with signaling the subgraph that are not included in our current estimation.

See last answer for proposed schedule.

Please address the following:

This project will empower developers to build analytics dashboards for both token trading and NFT trading across all networks supported by the 0x protocol. It opens the door for the creation of decentralized exchanges and NFT marketplaces with comprehensive trading history and account data.

We firmly believe that the benefits the 0x protocol could gain from this solution will far exceed the required investment. Based on our experience, there is currently no cost-effective decentralized solution for querying 0x protocol trades.

Definition of the problem and the implications, i.e., what exactly is the problem and why does it matter to protocol stakeholders

Happy to elaborate further if any of the answers is not clear.

I will provide some additional comments and followup questions later, but in general it seems like you are starting with a solution, and then saying that the problem is the lack of that specific solution, rather than starting with identifying and analyzing a problem, and then attempting to solve it.

I see three major issues currently hindering 0x Protocol’s ability to attract developers to build on top of the protocol:

  1. Lack of APIs and libraries for Analyzing Data Related to 0x Protocol for NFT Trades:
  2. Universal API for Limit Orders Across Different Networks:
  3. A Clearly Defined Process for Deploying the Protocol on Other Networks:

At present, we are actively addressing the first issue, which is the absence of APIs for accessing analytical data. This is a crucial requirement not only for our current marketplace and DEX solutions but also for any other project in this space.

We agree that there’s a need for this and not having tools to build on top of the the protocol hinders its growth.

However, upon reviewing the grant proposal, we believe that both the proposed timeline and cost are disproportionate to the output.

We have submitted a proposal for an alternate approach aimed at serving the needs of the 0x developer community. We have experience and a proven track record building, shipping and maintaining subgraphs for a number of clients and protocols and believe we are positioned to execute on this initiative.

Our proposal takes an MVP approach, we suggest initially focusing on building a well-documented and validated subgraph. As for the react hooks, although the effort implement is not high, we believe it’s best to hold off on that until we can assess the impact of the subgraph and validate their need in the community.

Link to our proposal here:

1 Like

Hello,

I concur that there’s a lack of a data source for 0x, and this often poses challenges when incorporating data-related features in product development due to limited options. Building a data pipeline from the ground up can swiftly escalate in cost owing to hosting/database expenses and the time required for its operation.

The Graph appears to be a promising choice in this scenario, particularly due to its decentralized network attributes and its accessibility for usage and exploration. While I’m uncertain about the cost implications of the Graph network fees in comparison to centralized services, the hosted service provision ensures that anyone can begin experimenting with 0x at a minimal cost.

I acknowledge that the React Hooks are an added advantage, although the current demand for them is ambiguous. Nonetheless, having the API is a significant facilitator and it’s stack-agnostic, which is advantageous.

The proposal by @PaperclipLabs presents numerous compelling aspects, with the standout features being the team’s proven track record and their expertise in building and maintaining subgraphs. Additionally, the cost and delivery timelines are much more appealing when compared to the current proposal.

Given these considerations, I am presently leaning more towards the alternate proposal.

Our proposal comes at a higher cost, mainly due to the inclusion of several add-ons, such as documentation and additional components, for our open NFT marketplace and DexAppBuilder. This approach positions it as the most advanced open-source solution utilizing the 0x protocol.

Through the integration of DexAppBuilder, developers will gain access to a variety of components and production-ready widgets. Furthermore, by directly incorporating data trading components into the open NFT marketplace, we aim to create an open-source marketplace using the 0x protocol that rivals other existing solutions in terms of sophistication and functionality.

If cost is a concern, we can potentially reduce the price to a level comparable to, or slightly lower than, the alternative proposal by focusing solely on the development of the graphs and their corresponding API.

We have a proven track record of maintaining and utilizing 0x-focused tools that are widely used by other developers. Personally, I have been involved in creating solutions using 0x that have not only been utilized by other developers but also served as reference implementations. My primary focus has always been on addressing real-use cases, and I firmly believe that this project will be another successful case in that regard.

The alternative proposal serves as an argument in favor of our approach, highlighting the demand from developers. Our history demonstrates our commitment to remaining in this space for the long term, not just for a year, but for many years to come. This development will undoubtedly add substantial value to both our ecosystem and the 0x protocol.

Your consideration of the importance of data analysis within the 0x protocol is certainly valid and bring one more argument in favour of our current proposal. If we were to exclusively implement what is outlined in this proposal, we could achieve it at a lower cost and commit to maintaining it for an extended duration, especially as it would be tightly integrated into our existing product offerings.

However, our decision to invest more work hours and resources into this project is driven by our commitment to advancing the 0x protocol, bringing practical use cases to the forefront, and delivering added value to the ecosystem. This broader scope of work aligns with our dedication to enhancing the protocol and addressing the needs and demands of developers in the long term.

Thanks for sharing your thoughts. We’d like to address both of the above previous responses in one.

If we were to exclusively implement what is outlined in this proposal, we could achieve it at a lower cost and commit to maintaining it for an extended duration

Our proposal comes at a higher cost, mainly due to the inclusion of several add-ons, such as documentation and additional components, for our open NFT marketplace and DexAppBuilder.

  • We see the primary difference between the two proposals to be the inclusion of React hooks and their documentation. While potentially valuable, we believe these additions do not justify the ~4x extended timeline and ~2x funding ask. For context our proposal also includes subgraph documentation and NFT data.

Through the integration of DexAppBuilder, developers will gain access to a variety of components and production-ready widgets. Furthermore, by directly incorporating data trading components into the open NFT marketplace, we aim to create an open-source marketplace using the 0x protocol that rivals other existing solutions in terms of sophistication and functionality.

  • This seems to be focused on benefiting your teams specific application, rather than aimed at serving the broader 0x community. If your product requires specialized features, you’re welcome to build them on top of the 0x Community Subgraph. However, we believe such features should only be funded by the community grants program if they offer widespread value to the community.

Our history demonstrates our commitment to remaining in this space for the long term, not just for a year, but for many years to come.

  • We will be here as long as we can add value to the community. Our proposal includes a commitment to long-term maintenance, contingent on community interest. Our included one-year sustaining period allows the community to assess the project’s value and decide on potential future funding through mini-grants. We want to prove we can add value and both us and the community are satisfied to continue any longer term solution.

Our goal is to bring value to the entire community. To be fully transparent, we have no vested interests in other products/services we are integrating with at this time; our focus is on building universally beneficial tools, for everyone.

1 Like

We have developed limit order exchange and NFT marketplaces centered around 0x. Currently, I believe we may be the team providing the most open-source UI tools for the 0x ecosystem. Building for our use case is not merely an experiment; instead, we are focused on creating subgraphs intended for use by all developers.

I want to emphasize that we are dedicated to building for the community. Our primary business involves creating white-label products that can be seamlessly integrated into various UIs beyond our own.

To clarify, we are not limited to React hooks and documentation. We have created a comprehensive component library that will be integrated into an existing open NFT marketplace. We are expanding an open-source, 0x-based marketplace by incorporating data components and introducing additional widgets for the community’s benefit. By doing so, we are already making a significant contribution and ensuring that the subgraphs we develop can be easily used through forking open nft marketplace Github.

In closing, it’s worth noting that we can deliver the same solutions as your proposed option at a more cost-effective rate because if we limit the scope to only develop subgraphs, half of that work was already done by 0x Labs (as we mentioned on our proposal), and extending with NFT trading is trivial. Additionally, we ensure long-term maintenance because we are deeply invested in the 0x Protocol.

considering this proposal is somewhat controversial, plus the relatively low voting participation from the broader community, and the fact that the Boardroom portal is live and migration of assets to the new treasury should start soon, would you be willing to consider making the onchain proposal when to the new treasury, after the migration? This would help in speeding migration to the new treasury and not force undecided community representatives to vote just to prevent a quorum from not being reached.

I honestly want to move this to a snapshot vote by tomorrow. I believe that all arguments were well explained, including the reason for the amount requested. Interestingly, a similar proposal appeared only after this one with a smaller scope. Now it’s time to choose which one the community prefers. I can adapt this proposal in several ways if the argument in favor of other proposals is primarily economical. I want to proceed with this as soon as possible because my project, and I believe others that build on top of the 0x protocol, need this, and I don’t want to rely on third parties for it.

As noted in my last post above, I had intended to provide some additional comments and follow-up questions. However, in the interim, another proposal for a subgraph-based solution has been submitted for consideration.

After reviewing the alternate proposal submitted by Paperclip Labs and comparing it with this proposal, including the relevant past work and references provided, my assessment is that the Paperclip proposal scores higher and provides a better value, particularly in the following areas:

  1. more mature approach and thoughtful plan referencing timeline, milestones, deliverables, metrics, and/or desired outcomes
  2. lower execution risk and shorter timeline/faster delivery
  3. more favorable cost structure and cost/benefit ratio
  4. better scope definition and solution quality
  5. higher overall confidence in likelihood of success

Okay, it seems we are going on economical approach. So if two major delegates already said are keen to another proposal, and I will not vote, it will be waste of my time put this on snapshot. As we are commited with ZRX protocol, we will be doing the subgraphs for free for the protocol and open source it. All the libraries will be closed source.

The next steps will involve developing ZRX subgraphs for all networks, and they will be made available on the DexKit Github. I will post the Github repository link here once it’s completed.

We just pushed the current development we have on 0x subgraph with support for NFT, OTC, and PancakeSwapVIP. Next weeks we will proceed with deployments.

We welcome actual builders of the protocol to contribute with us what they think maybe is missing to be covered.

This opens now to build explorers for NFT’s and other necessary metrics.