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

Stop relying exclusively on Infura for IPFS #27

Closed
Tracked by #184
asgeir-s opened this issue Apr 5, 2022 · 4 comments · Fixed by #200
Closed
Tracked by #184

Stop relying exclusively on Infura for IPFS #27

asgeir-s opened this issue Apr 5, 2022 · 4 comments · Fixed by #200
Assignees
Labels
app enhancement New feature or request

Comments

@asgeir-s
Copy link
Contributor

asgeir-s commented Apr 5, 2022

We should check if there is a local provider available, if not, we can check if Infura is accessible, if not, we spin up a js-ipfs node.

Check this link for hardcoded ipfs.infura.io URLs: https://github.com/gnosis/tabula/search?q=%22ipfs.infura.io%22

We do not want Tablua to be easy to censor ;)

@asgeir-s asgeir-s added the app label Apr 5, 2022
@auryn-macmillan auryn-macmillan added this to the Next release milestone May 20, 2022
@auryn-macmillan auryn-macmillan added the enhancement New feature or request label Jul 29, 2022
@cedricwaxwing cedricwaxwing modified the milestones: Next release, Quick wrap up/Confirm if finished Jan 16, 2023
@asgeir-s asgeir-s self-assigned this Jan 17, 2023
@asgeir-s asgeir-s changed the title Stop relying exclusively on Infura for IPFS Stop relying exclusively on Infura for IPFS and RPC Jan 18, 2023
@asgeir-s asgeir-s changed the title Stop relying exclusively on Infura for IPFS and RPC Stop relying exclusively on Infura for IPFS Jan 18, 2023
@asgeir-s
Copy link
Contributor Author

asgeir-s commented Jan 18, 2023

The current state
Upload:

  • we use Infura API
  • then pinning

Download:

  • we use Infura Gateway.

We should, in both cases use the user's locale IPFS node, but fallback to the Infura services.

The state that we want
Upload:

  • if a user has specified an IPFS node URL we use that (requires UI).
  • if not, we use a locale default IPFS node URL localhost:5001.
    Investigate if there is a way of getting the browser IPFS URL if it's configured via something like the IPFS companion or Brave. If that is possible use that instead of the two options mentioned above.
  • else we use Infura API
  • then pinning

Download:

@asgeir-s
Copy link
Contributor Author

@cedricwaxwing: we need UI for letting the user specify an IPFS URL.

How it currently works:
If the user has a running IPFS node at the default URL http://localhost:5001/api/v0, then we use that.
If that is not available we fall back to Infura.

What we need:
In addition to the above, the user should be able to specify a custom IPFS node URL.
If a custom IPFS URL is set, then we use that instead.

For me, it would make sense if this was an option in the "address dropdown menu", like "Update Pinning Service", we could add "Update IPFS Node". The pop-up needs to explain that if no URL is specified it first tries to connect to a locale IPFS node at the default endpoint (http://localhost:5001/api/v0), if that is not available, it will connect to Infura. It also needs a text box for letting the user input a URL.

@cedricwaxwing
Copy link
Collaborator

@manboy-eth I've taken a stab here. Let me know if this works or needs updating:

Modal popup for Updating IPFS Node:
https://www.figma.com/file/IaimIfw2pXyR9PlQqdo6M2/Tabula?node-id=1330%3A4710&t=TNzdtzW1Jl2zbKRc-4
image

And the updated dropdown (ignore the other changes, as those can be captured in #183 ):
https://www.figma.com/file/IaimIfw2pXyR9PlQqdo6M2/Tabula?node-id=1153%3A6497&t=TNzdtzW1Jl2zbKRc-4
image

@juliopavila juliopavila self-assigned this Jan 23, 2023
@juliopavila
Copy link
Collaborator

juliopavila commented Jan 23, 2023

Download:

@manboy-eth About the download process, I think, for now, we're going to use IPFS Gateway because the Infura Public Gateway is no longer available https://docs.infura.io/infura/networks/ipfs/how-to/access-ipfs-content/public-gateway, the only way to use it is creating a dedicated server

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
app enhancement New feature or request
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants