Deprecating a Mina Blockchain Explorer
Since writing this article a simplified MinaExplorer UI will be maintained post hard-fork, but the APIs will be deprecated.
After nearly four years, with countless networks supported, Testworld 2.0 will be the last network supported by ̶M̶i̶n̶a̶E̶x̶p̶l̶o̶r̶e̶r̶’̶s̶ ̶U̶I̶ and APIs. This means that all MinaExplorer services, with the exception of the staking pool, will be deprecated at the next hard fork.
Testworld 2.0 will be the last network supported for ̶M̶i̶n̶a̶E̶x̶p̶l̶o̶r̶e̶r̶’̶s̶ ̶U̶I̶ and APIs.
The date of the hard fork is still unknown and is still some time away (as Testworld 2.0, which is yet to start, must be completed first), so there is ample time for any services currently reliant on the MinaExplorer APIs to migrate before that date. Services will continue to run on Testworld and on mainnet until the hard fork to continue to help support and troubleshoot the network with the aim of bringing zkApps to mainnet!
As a bit of background, MinaExplorer was created before there was an archive node, primarily as a tool to visualize the network during its infancy. As the Mina daemon only retains the last 290 blocks of history, the current explorer works via storing GraphQL subscriptions (to a MongoDB backend) and exposing these via a GraphQL API that closely resembles the daemon GraphQL API but with additional filters and the full chain history. These APIs have served 100s of millions of requests over all of Mina’s supported networks (currently serving over 10 million GraphQL requests and 15 million REST API calls a month).
Since the initial development, there have been huge advances in the archive node. With the update to enabling zkApps on mainnet, the GraphQL schema has undergone some major changes. As a result, it is no longer feasible to use the current approach with zkApps (tested extensively here), particularly when dealing with custom tokens, and the archive node, with its Postgres backend, is much more suitable for the job.
While the explorer and associated services could be rearchitected to use the archive node, given the changes required for applications also to support zkApps on mainnet, it is a good a time as any to deprecate the services with the appropriate notice and allow alternatives to fill the void.
The MinaExplorer staking service will continue. Since developing the first payout algorithm on Mina, MinaExplorer has grown into the largest staking provider, offering timely payouts twice a week, every week, with full transparency.
The arrival of zkApps opens up many more opportunities for research and development into staking, such as a zkApp staking pool, the potential for liquid staking derivatives, and at a minimum, the ability to batch payouts via account updates to drastically reduce the network congestion at the start of epochs. This service will continue unabated — the only change, in addition to implementing MIP1 and the removal of supercharged rewards, will be the backend using the archive node instead of the existing GraphQL API for data.