Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

More useful html with dag-cbor #307

Closed
anjor opened this issue May 17, 2023 · 6 comments · Fixed by #315
Closed

More useful html with dag-cbor #307

anjor opened this issue May 17, 2023 · 6 comments · Fixed by #315
Assignees
Labels
dif/medium Prior experience is likely helpful effort/hours Estimated to take one or several hours kind/enhancement A net-new feature or improvement to an existing feature P1 High: Likely tackled by core team if no one steps up topic/gateway Issues related to HTTP Gateway

Comments

@anjor
Copy link
Contributor

anjor commented May 17, 2023

I have been working with @linuskendall on onboarding solana blockchain data to filecoin. The data is encoded with dag-cbor.

We are thinking of supporting retrievals (backed by Saturn) in an IPFS gateway. The intended UX was similar to what a user gets with a unixfs dag in ipfs gateway — they see directories that they can click into till they get to a file, at which point they can decide to download it.

Unfortunately this doesn’t work with dag-cbor — relevant slack thread . With Kubo 0.18, it recognises the block as dag-cbor and gives the user a helpful message, however, the user still has to download the block and then decode it themselves.

Screenshot 2023-05-15 at 2 34 46 PM

A user should be able to start at the epoch level, and go down the dag to the point where they want to start downloading, and then download everything under — similar to unixfs.

@anjor anjor added the need/triage Needs initial labeling and prioritization label May 17, 2023
@welcome

This comment was marked as resolved.

@anjor
Copy link
Contributor Author

anjor commented May 17, 2023

Chatted with @lidel @BigLep and @magik6k about this over slack as well, so tagging them in.

@lidel lidel added P1 High: Likely tackled by core team if no one steps up dif/medium Prior experience is likely helpful effort/hours Estimated to take one or several hours topic/gateway Issues related to HTTP Gateway kind/enhancement A net-new feature or improvement to an existing feature and removed need/triage Needs initial labeling and prioritization labels May 17, 2023
@lidel
Copy link
Member

lidel commented May 17, 2023

Thanks for filling this, discussed internally, team has hands full,
but we will try to make a stab at basic traversal UI next week
(start with something basic, but enough to enable end users to browse the DAG like they can UnixFS directory listings).

@anjor
Copy link
Contributor Author

anjor commented May 17, 2023

@anjor
Copy link
Contributor Author

anjor commented May 24, 2023

// copy pasting @magik6k 's comment here:

simply dumping ipld-prime datamodel tree - https://github.com/lotus-web3/dagparts/blob/main/cmd/dataexpl/hnd_view_ipld.go#L77-L235 might work.

@lidel @hacdias i tried looking into this but got a bit stuck.

Will it be as simple as adding Magik's code here -- https://github.com/ipfs/boxo/blob/main/gateway/handler_codec.go ?

(sorry i am not a frontend dev, and am struggling a bit with the go <> html interface here and could use help)

@lidel
Copy link
Member

lidel commented May 25, 2023

@anjor thanks for trying! I think @hacdias can take this over for now:

  • There is wip refactoring of HTML templates happening feat(gateway): improved templates, user friendly errors #298
    • GUI for browsing CBOR needs to happen on top of that, so makes sense @hacdias does both
  • MVP will be a basic UI that allows for traversing links inside DAG-JSON and DAG-CBOR
    • Once this is in place, defining user interface could be iterated on without touching low level stuff

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dif/medium Prior experience is likely helpful effort/hours Estimated to take one or several hours kind/enhancement A net-new feature or improvement to an existing feature P1 High: Likely tackled by core team if no one steps up topic/gateway Issues related to HTTP Gateway
Projects
No open projects
Archived in project
Development

Successfully merging a pull request may close this issue.

3 participants