Ipfs-desktop: Improve onboarding via OS-level protocol handler

Created on 15 Sep 2020  路  6Comments  路  Source: ipfs-shipyard/ipfs-desktop

Right now, IPFS Desktop installs system-wide protocol handlers (dweb, ipfs, ipns) which converts ipfs://<cid> URI to gateway URL and opens that in default browser.

It is fine, but may be confusing on the first use.

We could improve this behavior and show a dialog window, where user can choose how to open IPFS resource via radio-button-like selector:

  • open from public gateway in the default web browser (default)
  • open from a local gateway (show only if daemon in running)
  • open in webui/Files (show only if daemon in running)
  • open in webui/Explore (show only if daemon in running)
  • (checkbox) remember the choice for the future

    • should be accompanied by a toggle in menubar menu: _"Ask how to handle IPFS URIs"_ so user can change their mind later

(thx @aschmahmann for noticing that onboarding is especially confusing if user's default browser is not the one with ipfs-companion)

P1 areprotocol-handler dimedium efforhours good first issue help wanted kinenhancement statuready topidesign-front-end

All 6 comments

This is also a good opportunity to emphasize on first use that Desktop is acting as the intermediary - otherwise, the flow is like this:

  • user types ipfs://QmY7Yh4UquoXHLPFo2XbhXkhBvFoPwmQUSa92pxnxjQuPU into their browser bar
  • they get a "do you want to open this in IPFS Desktop?" dialog, and click "OK"
  • but then they just stay in their browser and see their requested resource in a new tab

This is super-confusing if you've never encountered it before.

Quick mockup of menu item mentioned above:

image

Quick mockup of choice modal (note this could appear over whatever screen the user currently has open in Desktop):
image

Thank you, yes, this would do the trick.

nit: this modal is specific to Desktop app, so I think it should not be part of WebUI, but a separate window that loads the modal page.

a separate window that loads the modal page

Confirmed this just means modal appears in its own window without Web UI furniture behind it: i.e., ignore grayed-out Web UI interface behind the modal in the mockup above. Can amend mockup if this is absolutely necessary, but this should be ready to work. Text (for copy-paste convenience) is as follows:

How would you like IFPS Desktop to open this ipfs://URI?

  • In my default browser using a public gateway
  • In my default browser using my local gateway
  • In the Files screen
  • In the Explore Screen

(checkbox) Remember this choice for all ipfs:// URIs

(buttons) Close / Continue

Note that the image in the modal is the standard stroke_link icon from ipfs-css.

image

This is a significant UX improvement, bumped a priority a bit.

ps. I suspect protocol handler does not work everywhere (eg. https://github.com/ipfs-shipyard/ipfs-desktop/issues/1549).

Was this page helpful?
0 / 5 - 0 ratings

Related issues

nlko picture nlko  路  3Comments

lidel picture lidel  路  5Comments

bertrandfalguiere picture bertrandfalguiere  路  3Comments

daviddias picture daviddias  路  6Comments

olizilla picture olizilla  路  3Comments