Blog: Firefox Manifest V3 Extension VS Chrome Manifest V3 Extension – My Developer’s Perspective

491 views
Skip to first unread message

Stefan Van Damme

unread,
Nov 30, 2023, 3:51:52 PM11/30/23
to Chromium Extensions
Hi everyone,

I am excited to share my latest blog post, where I delve into 5 important issues encountered while converting my Chrome extension to Firefox Manifest V3. The journey was not entirely smooth, and I have outlined my experiences with the code transition so other developers can know this too. You can check out the post here:

Your feedback is highly valued and appreciated. I hope you find the blog post insightful, particularly in understanding differences such as the service worker not being ready for Firefox. Feel free to share your thoughts, comments, and questions as I am eager to engage in discussions and provide additional insights.

Thanks,
Stefan vd

Khan Sahab

unread,
Nov 30, 2023, 4:52:50 PM11/30/23
to Stefan Van Damme, Chromium Extensions
--
You received this message because you are subscribed to the Google Groups "Chromium Extensions" group.
To unsubscribe from this group and stop receiving emails from it, send an email to chromium-extens...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/chromium-extensions/183e18d3-b293-43e2-b6a6-662a56a84be2n%40chromium.org.

Simeon Velichkov

unread,
Dec 1, 2023, 2:03:13 AM12/1/23
to Chromium Extensions, Chromium Extensions, Stefan Van Damme
About the missing service worker, in my code base I simply comment out the importScript statements and move the imports in my manifest.json file instead. Otherwise it works pretty much the same.

One issue that I'm having is the overly strict security policy handling, both on remote and local file URLs.

Stefan Van Damme

unread,
Dec 1, 2023, 2:37:35 AM12/1/23
to Chromium Extensions, Simeon Velichkov, Chromium Extensions, Stefan Van Damme
Hi Simeon Velichkov,

Yes, that is what I am also doing. The objective is to achieve equality in the browser extension code with minimal adjustments (the manifest.json file may be different). So I can use 1 GitHub repo for all 5 web browsers. That can be updated for all web browsers. This approach simplifies the development of the browser extension, making it both easy and fast to manage.

|| One issue that I'm having is the overly strict security policy handling, both on remote and local file URLs.
I have already reported the issue, emphasizing the need for a consistently robust security baseline across all web browsers. You can find the details in the W3C issue 500:

Thanks,
Stefan vd

Jackie Han

unread,
Dec 2, 2023, 4:15:55 AM12/2/23
to Stefan Van Damme, Chromium Extensions
Thanks for sharing

"use_dynamic_url": true

Although Chrome supports it in manifest, it doesn't implement this feature.


--

Peter Bloomfield

unread,
Dec 4, 2023, 5:11:27 AM12/4/23
to Chromium Extensions, Stefan Van Damme
Your blog post mentions that managed storage isn't available in Firefox. My understanding was that it only exists if you provision it, and it has to be provisioned in a very different way from Chrome:


I haven't actually tried it myself though, so I could be wrong. I ended up using native messaging instead of managed storage when I ported our extension to Firefox.


Stefan Van Damme

unread,
Dec 4, 2023, 5:40:09 AM12/4/23
to Chromium Extensions, Peter Bloomfield, Stefan Van Damme
Hi Peter,

The chrome.storage.managed is differently implemented in Firefox extension. So no copy-paste work.

For example, I use this in my Chrome extension:

Thanks,
Stefan vd

Reply all
Reply to author
Forward
0 new messages