4th time Rejected React Chrome Extension.

11 views
Skip to first unread message

manny

unread,
1:43 PM (3 hours ago) 1:43 PM
to Chromium Extensions
Hello,
Extension link: pemlkhapmjigahgemeoakjmgglpfephk
I'm a new developer trying to submit my first React-based Chrome extension to the Web Store. I've encountered several issues and would greatly appreciate some guidance On the very bottom is link to my Rejection message:


1. Submission process: I'm unsure which files to compress and upload. In my previous attempts, I only compressed and uploaded the manifest.json file. Is this correct, or should I be including other files?

2. Permission conflicts: My extension was rejected with the following message:

'Requesting but not using the following permission(s): sidePanel, identity, tabs
How to rectify: Remove the above permission(s)'

However, when I remove these permissions as suggested, my extension doesn't work correctly when tested locally. How can I resolve this conflict?


3. Functionality issues: I received an error stating 'side panel file path must exist'. How can I ensure my side panel is correctly configured in a React-based extension?

4. General structure: Could you provide guidance on the correct file structure for a React-based Chrome extension? I'm particularly unsure about where to place files like background.js, content.js, index.html, and manifest.json in relation to my React components.

Rejection Notification

Building Quality Products - Minimum Functionality:

  • Violation reference ID: Yellow Magnesium
  • Violation:
    Not providing promised functionality
    • Upon trying to install the extension dynamically it gives an error. Error: Package is invalid. ‘side panel file path must exist’. No functionality providing js files found in the code package.
  • How to rectify: Test the code that you submit to the web store locally, verify that your submission contains the files you expect at the paths you expect, and is working as intended. For more information, please refer to the documentation and migration checklist on Manifest V3 version.
  • Relevant section of the program policy:
    • Extensions with broken functionality - such as dead sites or non-functioning features - are not allowed. (learn more)


Use of Permissions:

  • Violation reference ID: Purple Potassium
  • Violation:
    Requesting but not using the following permission(s):
    • sidePanel
    • identity
    • tabs
  • How to rectify: Remove the above permission(s)
  • Relevant section of the program policy:
    • Request access to the narrowest permissions necessary to implement your Product's features or services. Don't attempt to "future proof" your Product by requesting a permission that might benefit services or features that have not yet been implemented. (learn more)



My extension uses React, Chakra UI, and Supabase, if that's relevant. Any advice or resources you could provide would be immensely helpful. Thank you!

Sebastian Benz

unread,
1:53 PM (3 hours ago) 1:53 PM
to manny, Chromium Extensions
Hi,

I can help you with 1. and 2. (comments inline). 3 and 4 depends on how you bundle your react application. There are quite a few react + extensions tutorials out there, which might be a good starting point.


1. Submission process: I'm unsure which files to compress and upload. In my previous attempts, I only compressed and uploaded the manifest.json file. Is this correct, or should I be including other files?

You need to upload all files your extension needs to run (but not more ideally). You can test this by copying everything into a separate directory and installing the extension in your browser from there.

2. Permission conflicts: My extension was rejected with the following message:

'Requesting but not using the following permission(s): sidePanel, identity, tabs
How to rectify: Remove the above permission(s)'

However, when I remove these permissions as suggested, my extension doesn't work correctly when tested locally. How can I resolve this conflict?

This might be a result of you incompletely uploading your extension (see 1.). 
 
3. Functionality issues: I received an error stating 'side panel file path must exist'. How can I ensure my side panel is correctly configured in a React-based extension?
 
4. General structure: Could you provide guidance on the correct file structure for a React-based Chrome extension? I'm particularly unsure about where to place files like background.js, content.js, index.html, and manifest.json in relation to my React components.

Rejection Notification

Building Quality Products - Minimum Functionality:

  • Violation reference ID: Yellow Magnesium
  • Violation:
    Not providing promised functionality
    • Upon trying to install the extension dynamically it gives an error. Error: Package is invalid. ‘side panel file path must exist’. No functionality providing js files found in the code package.
  • How to rectify: Test the code that you submit to the web store locally, verify that your submission contains the files you expect at the paths you expect, and is working as intended. For more information, please refer to the documentation and migration checklist on Manifest V3 version.
  • Relevant section of the program policy:
    • Extensions with broken functionality - such as dead sites or non-functioning features - are not allowed. (learn more)


Use of Permissions:

  • Violation reference ID: Purple Potassium
  • Violation:
    Requesting but not using the following permission(s):
    • sidePanel
    • identity
    • tabs
  • How to rectify: Remove the above permission(s)
  • Relevant section of the program policy:
    • Request access to the narrowest permissions necessary to implement your Product's features or services. Don't attempt to "future proof" your Product by requesting a permission that might benefit services or features that have not yet been implemented. (learn more)



My extension uses React, Chakra UI, and Supabase, if that's relevant. Any advice or resources you could provide would be immensely helpful. Thank you!

--
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 visit https://groups.google.com/a/chromium.org/d/msgid/chromium-extensions/0fc4b777-53b2-4206-ab35-e141a71f22f6n%40chromium.org.

Dr. Sebastian Benz

Developer Relations Engineer


Google Germany GmbH

Erika-Mann-Straße 33

80636 München


Geschäftsführer: Paul Manicle, Liana Sebastian

Registergericht und -nummer: Hamburg, HRB 86891

Sitz der Gesellschaft: Hamburg


Diese E-Mail ist vertraulich. Falls Sie diese fälschlicherweise erhalten haben sollten, leiten Sie diese bitte nicht an jemand anderes weiter, löschen Sie alle Kopien und Anhänge davon und lassen Sie mich bitte wissen, dass die E-Mail an die falsche Person gesendet wurde. 

     

This e-mail is confidential. If you received this communication by mistake, please don't forward it to anyone else, please erase all copies and attachments, and please let me know that it has gone to the wrong person.


Reply all
Reply to author
Forward
0 new messages