The Graph: merge feature
The Graph: merge feature

The Graph: merge feature

🌱 Introduction

The Graph is sunsetting its hosted service in Q1 2023 which is centralized which is why it’s been focusing on migrating dapps to its decentralized Mainnet. The migration is important as it continues The Graph’s values of being decentralized and all the benefits of it. However, this is a huge effort from the entire ecosystem because, despite all the announcements regarding sunsetting the hosted service, a large number of Subgraphs are still on the hosted service which includes some of the biggest web3 players like Uniswap’s Subgraph.

disclaimer: this was a independent project I did for fun for The Graph, shared this with then Graph CEO Yaniv Tal

💡 References & insights

I interviewed & surveyed 12 users/people in the web3 ecosystem including indexers, Subgraph devs, and engineers from Uniswap, Solana Labs, and Ethsign.

Other top insights & recommendations from users:

  1. Templates & automation in repetitive steps of creating Subgraphs
    • Example: “Increase the amount of chains supported. This is currently in the works with the Migration Infrastructure Provider program that The Graph announced.” - Subgraph Dev & Indexer
  2. Supporting more chains
    • Example: “I feel like most of the work you do on subgraphs is the same over and over again. I wish they had templates or some kind of feature that does common things like indexing standard attributes of ERC20 or ERC721 in the best way possible out of the box.” - Subgraph Dev

✨ Required outcome

Disclaimer: These requirements specify the minimum experience, but does not exclude any additional ideas that will improve the UX.

  • Based on these migration guide articles & videos, it’s not intuitive for users to know where to go & what to do in order to migrate their Subgraph. Currently, they have to start at the Subgraph studio which is confusing since that is an established place for creating, publishing, and testing. There needs to be a simple way to prompt users to migrate their Subgraphs like an easy-to-see, 1-click button to simplify the migration process
  • Important to make sure only the relevant person (owner of a Subgraph that is on the hosted service) is able to migrate a Subgraph to the decentralized Mainnet. This button should be simplifying that process.

🤖 Implementation Solutions

Two Possible Solutions to implementing this button:

  1. Add migrate button below GitHub sign-in button
  2. After the owner logs into Github, migrate button shows up on each individual Subgraph’s page that still needs to be implemented
    • leaning towards this solution because this makes sure only the owner of the Subgraph is promoted to migrate the Subgraph

🚫 Non-goals

  • This shouldn’t become a growth strategy to promote users to create Subgraphs on the decentralized Mainnet.
  • This is not trying to change how the migration process is done. Only trying to make the process easier and more intuitive especially to start.

📈 What is success

  • Increase in the number of grants requested from The Graph Foundation to help people migrate
  • Higher than 30% quarter-over-quarter subgraph migrations since it’s been up 30% quarter-over-quarter so far

❓ Risks & Questions

  • Could implementing this button create confusion between logging into The Graph and migrating? If so, how do we prevent this from happening?