webrecorder / wacz-uploader

A straightforward single page application for uploading your WACZ archives to IPFS
GNU Affero General Public License v3.0
5 stars 0 forks source link

Enable customizing backend settings #12

Open SuaYoo opened 1 year ago

SuaYoo commented 1 year ago

Users should be able to enter in their own backend storage keys.

RangerMauve commented 1 year ago

I think @Shrinks99 is gonna sketch up some UI for this. We can probably reuse some of the forms from https://ranger.mauve.moe/auto-js-ipfs/ https://github.com/RangerMauve/auto-js-ipfs/blob/default/example.js#L15

Shrinks99 commented 1 year ago

That UI mockup work is already done. What's not done is directing people to it as an intentional push to use your own back-end. If we want to push people toward that we will have to do more than highlight the settings button. If we want to make that the default experience and not host anything with Web3Storage (possible in the future, who knows) this can accommodate that with little rework (the settings window will be displayed first kinda thing).

Screenshot 2022-11-08 at 5 40 00 PM
RangerMauve commented 1 year ago

I think it'd be good if we pushed them to use their own backend, but gave the option for using WebRecorder's backend with the disclaimer that we don't guarantee uptime for the data.

I think your UI having "Webrecorder default" selected by default is good, and the disclaimer + a "why use your own backend" on the right would be perf.

Oh! Not sure if this is the best option, but if we detect Agregore support it'd be nice if we set it as a default so that we wouldn't need to touch cloud services at all if we didn't need to.

ikreymer commented 1 year ago

The problem with this is that I'm not sure the 'use your own backend' is really feasible at this point. If someone is running their own kubo daemon, it needs to be configured to allow connections from wacz uploader via CORS, which we'll need to provide docs for, but seems sort of beyond the scope of what we're doing here?

I think using web3.storage is the only user-friendly option, either with default key (limited to 100MB), or own key (limited by your own plan). Same for estuary, although that's less of an end-user solution at the moment.

What exactly is 'Webrecorder Default backend'? That's our web3.storage key, right? Maybe it should just be called that..

It seems like a lot of the workflows get a bit murky, and not sure we have good answers - and not specific to our tools (eg. how to get more people to run own IPFS node), so perhaps we should figure out with broader IPFS community..

I think the main thing we can do right now easily is offering a way to add a custom web3.storage key, and a link to web3.storage as to how to get a key..

Also, if we want to expand this to non-IPFS storage providers, may want to think about how to specify UI for entering different types of credentials (eg. AWS-style access key + secret key + upload endpoint)