Data model and UI for exploring the PDP hot storage network
Detailed documentation is available in the following file:
- Documentation - System architecture, database schema, and development guide
This is a first draft at what the PDP explorer will look like 
The mockup file is created using Excalidraw. You can find it here.
A few user journeys: As a user storing data with PDP I can use the explorer to:
- Check if my SP has had any faults. And I can check which data in particular was faulted
- Validate that all of the data added to my proofset is data that I asked to store, not anything else
- Look at fault rate of SPs in the network when deciding who to store my data with
- Learn about data that has been removed from my proofset
This project uses subgraph technology and the Goldsky platform for data indexing and monitoring.
- Log in to goldsky
cd subgraph
# Login
goldsky login
# API key: enter your Goldsky API key
xxxxxxxxxxxx- Switch chain environment
- mainnet
- Update
subgraph.yamlwithcp subgraph_mainnet.yaml subgraph.yaml - Update
utils/index.tsto setexport const PDPVerifierAddress = "0xBADd0B92C1c71d02E7d520f64c0876538fa2557F"; export const MaxProvingPeriod = 2880;
- Update
- calibration
- Update
subgraph.yamlwithcp subgraph_testnet.yaml subgraph.yaml - Update
utils/index.tsto setexport const PDPVerifierAddress = "0x85e366Cf9DD2c0aE37E963d9556F5f4718d6417C"; export const MaxProvingPeriod = 240;
- Update
- mainnet
- Build and deploy subgraph
# mainnet
graph codegen
graph build
goldsky subgraph deploy <product-name>/mainnet_<version> --path ./
# calibration: switch chain environment first
graph codegen
graph build
goldsky subgraph deploy <product-name>/calibration_<version> --path ./- Sync
Wait until
mainnet_<version>andcalibration_<version>finish syncing.
- Configure environment variables
cd subgraph-client
# Parameters
# VITE_GOLDSKY_PROJECT_ID: see Goldsky documentation
# VITE_GOLDSKY_PROJECT_NAME: product-name
# VITE_GOLDSKY_MAINNET_SUBGRAPH_VERSION: mainnet_<version>
# VITE_GOLDSKY_CALIBRATION_SUBGRAPH_VERSION: calibration_<version>
cp .env.example .env
# Local test
yarn dev
# Build
yarn build