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

Experiment: use js-ipfs as a fallback for uploading content when IPFS API is down #304

Closed
lidel opened this issue Oct 30, 2017 · 2 comments
Assignees
Labels
exp/intermediate Prior experience is likely helpful help wanted Seeking public contribution on this issue kind/enhancement A net-new feature or improvement to an existing feature
Milestone

Comments

@lidel
Copy link
Member

lidel commented Oct 30, 2017

Here is an idea (well, a rough brain-dump actually – sorry!)

While we can't use embedded js-ipfs as HTTP gateway replacement at the moment (elaborated on this in #248 and ipfs/in-web-browsers#60), we could use it as a fallback solution for uploading content.

Consider a scenario:
IPFS API is down and user tries to upload content (via context menu or using Quick Upload).

It should be possible for the browser extension to:

  • open a new (pinned?) tab and spawn an ephemeral js-ipfs node in it

    • display basic status in the tab (eg. connecting to swarm etc)
      • if js-ipfs can't connect to any peers, display a sad face and inform user what happened and finish work
      • if connected, add content to the node
  • when content is hashed and node is connected to the swarm, open resource CID using URL at a preferred public gateway (this happens in a new tab)

    • public gateway downloads content from ephemeral node
    • when a tab with resource at public gateway finishes loading, we can:
      • close the tab with ephemeral node,
      • or just update status (display a happy face) inform user that CID is preloaded at a public gateway, but will disappear if it is not pinned anywhere soon etc

This would make browser extension more useful for people that are unable to run 3rd party daemon.

@lidel lidel added exp/intermediate Prior experience is likely helpful kind/enhancement A net-new feature or improvement to an existing feature help wanted Seeking public contribution on this issue P4 - Very Low labels Oct 30, 2017
@lidel lidel changed the title Add experiment: use js-ipfs as a fallback for uploading content when IPFS API is down Experiment: use js-ipfs as a fallback for uploading content when IPFS API is down Oct 30, 2017
@lidel
Copy link
Member Author

lidel commented Nov 16, 2017

A related work is being done in PR #310 👀

@lidel lidel self-assigned this Feb 22, 2018
@lidel lidel added this to the 2018-Q1 milestone Feb 22, 2018
@lidel
Copy link
Member Author

lidel commented Feb 22, 2018

Delivered in #310 and #381 🚀

tl;dr Users can now toggle between embedded and external node, so it is always possible to upload content, even when user has no go-ipfs and is running extension under Firefox/Chrome.

Expect Beta release soon 👀

@lidel lidel closed this as completed Feb 22, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
exp/intermediate Prior experience is likely helpful help wanted Seeking public contribution on this issue kind/enhancement A net-new feature or improvement to an existing feature
Projects
None yet
Development

No branches or pull requests

1 participant