mozilla now requires "add-on signing" [0]; extensions now have to be "signed" (By mozilla) before you can permanently side-load your own private extension onto regular firefox. they also require you to use 2FA [1] when setting up a firefox.com account (which is required in order for you to upload extensions so they can be signed).
at least with chrome you can just enable 'developer mode' and drag and drop your own extensions and use it right away without having to deal with any of that.
[0] https://blog.mozilla.org/addons/2020/03/10/support-for-exten...
[1] https://blog.mozilla.org/addons/2021/03/11/two-factor-authen...
1. Ctrl-shift-a to open add-ons page
2. Click the cog, and select "debug add-ons"
3. Click "load temporary add-on"
4. Select a file in your extension.
5. Done.
This worked for me earlier this week.
https://github.com/JacksonKearl/FeelingBlue/blob/main/extens...
Eg:
"permission": [ "storage", "https://google.com" ]
Not certain that's this user's issue, but that is another thing to check.
It seems the overall handling of network errors in add-ons has a lot of room for improvement.
It should be noted that chromium allows the network request regardless of the CSP. This is the correct, User-Empowering approach. Firefox’s deference to the Origin to control the code the User is attempting to run is the antithesis of what a User Agent ought to be.
I could set up server logs locally, but there’s only so many hours in my life.
Key word from the parent post: "temporary"
Ah missed that; yep, the add-on will remain installed until the browser is restarted. That is a little annoying!
[0] https://github.com/fanfare/googleimagesrestored/releases
I have an implementation on GitHub for my personal hybrid bookmark-manager / hackernews-reader newtab extension[0]. Its still a wip but i use the website version[1] daily as it doesn’t need to be installed and can still be set as my newtab page (warning as I’ve never opened it on mobile).
[0] https://github.com/fractalhq/nutab [1] https://nutab.vercel.app
I’m excited about the ongoing push towards cross-browser standards in this area; Safari has become way more compatible recently as well.
You can also use React/Next.js or another frontend library too if you prefer. I had created an extension a while ago out of pure HTML, CSS, and TypeScript but I found that was quite annoying to add more complex features with lots of state. I switched to Next.js and it's now on par with regular web DX [1].
[0] https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/Web...
[1] https://css-tricks.com/nextjs-chrome-extension-starter/