extensions icon indicating copy to clipboard operation
extensions copied to clipboard

Educate users on CORS proxys.

Open yuri-kiss opened this issue 1 year ago • 4 comments

Heres the relativly hidden docs on this: https://docs.turbowarp.org/cors

https://github.com/TurboWarp/extensions/pull/1492 spiked a vital conversation about the topic of CORS proxys and how they should be handled.

As a compromise (as suggested) we need to find a way to educate people on CORS and the uses of CORS proxys as it would help with bug reports and mean we do not need to make a whole separate extension for this purpose or add a block that is basically just a join block.

The docs themselves could use some updates for stuff like privacy concerns and some extra info.

As GarboMuffin suggested at some point when will we need to run our OWN CORS proxy? image

Please read what I said here: https://github.com/TurboWarp/extensions/pull/1492#issuecomment-2561492807 for some more context on the extension PR itself and some of the issues with it in general.

yuri-kiss avatar Dec 24 '24 23:12 yuri-kiss

The straightforward solution would be to make Scratch.fetch() give an extra warning about CORS if it detects a CORS error. This warning would likely link to the documentation you listed in the OP. The biggest issue is how we intend to convey that to the user.

Obviously, we could just put it in the JavaScript console, however I feel like that wouldn't help to educate users-- the JavaScript console already has an error for CORS, and so if a user is knowledgeable enough to use the JavaScript console, they probably don't need to be educated on CORS proxies.

I know TurboWarp has an error tab used mostly for logging compiler errors. I wonder if that'd be a good place to link to the documentation; it doesn't require DevTools to access, and it's fairly obvious for the average user. The only issue I see is that the error tab currently tells users to report all errors to GarboMuffin; obviously, CORS isn't an error, and we probably don't want to encourage users to make reports about it.

Image

NexusKitten avatar Mar 01 '25 01:03 NexusKitten

Part of the problem is that a CORS-related error, as far as I know, looks identical to websites as the error when offline or a website is down. So we would have to explain all of these things at the same time

GarboMuffin avatar Mar 01 '25 02:03 GarboMuffin

The straightforward solution would be to make Scratch.fetch() give an extra warning about CORS if it detects a CORS error. This warning would likely link to the documentation you listed in the OP. The biggest issue is how we intend to convey that to the user.

Obviously, we could just put it in the JavaScript console, however I feel like that wouldn't help to educate users-- the JavaScript console already has an error for CORS, and so if a user is knowledgeable enough to use the JavaScript console, they probably don't need to be educated on CORS proxies.

I know TurboWarp has an error tab used mostly for logging compiler errors. I wonder if that'd be a good place to link to the documentation; it doesn't require DevTools to access, and it's fairly obvious for the average user. The only issue I see is that the error tab currently tells users to report all errors to GarboMuffin; obviously, CORS isn't an error, and we probably don't want to encourage users to make reports about it.

Image

I think theres a safer way to go about this

yuri-kiss avatar Mar 01 '25 02:03 yuri-kiss

Thanks for mentioning me, @yuri-kiss! In retrospect, Fetch+ was a very bodged (British for "sloppily put together") extension.

I fully support this educational initiative. This has my badge of approval.

PPPDUD avatar Mar 01 '25 15:03 PPPDUD