Visualizing DAG-CBOR with IPLD Schema (.ipldsch)
- Dominant language
- JavaScript
- Stars
- 134
- Forks
- 34
- PR merge metrics
- No merged PRs in 30d
Description
DAG-CBOR documents should have an option to visualize them against type(s) from user-provided `.ipldsch`.
## Problem
We've found UX papercut identified with @aschmahmann while trying to provide useful interface for exploring DAG built with IPLD Schema tuples.
DAG-CBOR data is just numbers, and IPLD Explorer does not provide a way of leveraging IPLD Schema `.ipldsch` definitions.
## Solution
Perhaps "Add IPLD Schema" button on DAG-CBOR pages?
Details TBD, but I envision two flows:
- Ad-hoc: User clicks the button, then selects the `.ipldsch` file from their disk, and then user selects the type to use. The schema and type choice per CID is remembered locally (cookie/localstorage)
- Permalinks: User clicks the button, enters URL of the `.ipldsch` file, selects the type to use, and both URL and type are persisted in the URL, so the view that uses schema can be shared by copying current URL.
### References and Test Data
- https://ipld.io/docs/schemas/
- https://github.com/ipld/js-ipld-schema
- Sample CIDs and IPLD Schema can be sourced from https://old-faithful.net/ project
- Sample Schema: https://github.com/rpcpool/yellowstone-faithful/raw/refs/heads/main/ledger.ipldsch
- `bafyreif22uctcerymml3ahgs2ezkcbkxip4fptrn57gh2eiau7vokwrrzm` corresponding to [this transaction](https://explorer.solana.com/tx/5Tcw5BT8Spsh3pg6nMaVyrydWSZdiN1YVheVXBHyHrUDTzBJR4pQ3GW9bC5ELJhEThWKgYQtSp71wXzsF4oz9wYX)
- `bafyreifepnsied7dsdqlrz4ok2pmnsipl5qvhyjlupnpjcwl2utxo4xvyy` corresponding to [this transaction](https://explorer.solana.com/tx/47PBYLe5QxJxXpvdsEYuRnzUYekDu77XbDNpbgWPKn8qd43qaytJreJURdRh1VmML3XT1DZ39EXT5wR9iPxPMgH7)
- getting more cids: `/api/v1/sig-to-cid/5Tcw5BT8Spsh3pg6nMaVyrydWSZdiN1YVheVXBHyHrUDTzBJR4pQ3GW9bC5ELJhEThWKgYQtSp71wXzsF4oz9wYX` returns `bafyreif22uctcerymml3ahgs2ezkcbkxip4fptrn57gh2eiau7vokwrrzm`
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.