uworld-customizer

Chrome Web Store Submission — Copy/Paste Answers

Ready-to-paste answers for every field in the Chrome Web Store Developer Dashboard for UWorld Customizer.

Facts this extension is built on (all answers below follow from these):


1. Store listing tab

Name

UWorld Customizer

Summary (132 chars max)

Hide solved-question cues and layout panels in the UWorld review interface so you can re-test questions without spoilers.

Description

UWorld Customizer lets you clean up the UWorld review interface for honest self-testing.

Toggle any of these on or off from the popup:

• Radio dots — hide previously filled answer markers
• Check and cross icons — hide correct/incorrect indicators
• Answer percentages — hide answer-choice popularity percentages
• Stats bar — hide the correctness and time summary
• Hide sidebar — expand the question area to full width

Your preferences are saved with Chrome's built-in sync storage and applied
automatically when you revisit UWorld. The extension does not collect, transmit,
or sell any data. It only runs on apps.uworld.com and does nothing on any other
site.

This is an independent tool and is not affiliated with or endorsed by UWorld.

Category

Productivity

Language

English (United States)

2. Privacy practices tab

Single purpose

UWorld Customizer has a single purpose: it lets the user show or hide specific
UWorld review-page elements (answer markers, correct/incorrect icons, answer
percentages, the stats bar, and the sidebar) so they can re-attempt questions
without seeing prior answers or spoilers.

Permission justifications

storage justification

The "storage" permission is used solely to save the user's own show/hide
toggle preferences (a handful of booleans) via chrome.storage.sync so their
chosen settings persist and apply automatically the next time they open UWorld.
No other data is stored. Nothing is sent off the device.

Host permission justification — https://apps.uworld.com/*

The extension's content script must run on apps.uworld.com to find the specific
review-page elements the user chose to hide and apply a "display: none" style to
them. This host access is required for the extension's only feature and is
limited strictly to apps.uworld.com; the extension has no effect on any other
website.

The dashboard may also show a generic “content script” / activeTab style prompt. Use the same host-permission justification text above.

Remote code

Select: No, I am not using remote code.

All code is contained in the extension package. There are no <script> tags
pointing to remote URLs, no eval of remote strings, and no remotely hosted
modules. The extension makes no network requests at all.

Data usage — what user data do you collect?

Leave every category unchecked. For reference, here is each category and why it does not apply:

Data type Collected? Reason
Personally identifiable information No Never read or stored
Health information No Never read or stored
Financial and payment information No Never read or stored
Authentication information No Never read or stored
Personal communications No Never read or stored
Location No Never read or stored
Web history No Never read or stored
User activity (clicks, keystrokes, etc.) No Not monitored
Website content (text, images, page data) No Page DOM is only matched against fixed CSS selectors to toggle visibility; nothing is read, copied, or transmitted

Data use certifications (the three required checkboxes)

Check all three — every statement is true for this extension:

Privacy policy URL

A privacy policy URL is required once host permissions / content scripts are involved. The policy lives in this repo at PRIVACY_POLICY.md — that one file is the single source of truth. Once the repo is pushed to GitHub (public), use one of these public URLs:

Option A — GitHub rendered file (zero setup, recommended)

Works the moment the repo is public. GitHub renders the Markdown as a readable page:

https://github.com/<github-username>/<repo>/blob/main/PRIVACY_POLICY.md

Option B — GitHub Pages (cleaner URL, one-time setup)

Repo → Settings → Pages → Source: Deploy from a branch, Branch: main, folder / (root). After it builds:

https://<github-username>.github.io/<repo>/PRIVACY_POLICY

Paste the chosen URL into the Privacy policy URL field. If the default branch is master (not main), adjust Option A accordingly.


3. Privacy Policy

The privacy policy is maintained as a single file in this repo: PRIVACY_POLICY.md. Do not duplicate the text elsewhere — edit that one file and the hosted URL (see above) updates automatically once pushed.

Before publishing, confirm in PRIVACY_POLICY.md:


4. Account / contact tab


5. Updating / resubmitting (version bumps)

Chrome rejects an upload whose version is not higher than the published one. Before running the build for an update:

  1. Increase "version" in both platforms/chrome/manifest.json and platforms/firefox/manifest.json (e.g. 0.1.00.1.1). Also bump "version" in package.json to keep them aligned.
  2. Build and zip the Chrome package:
    npm run package:chrome
    

    Output: dist/uworld-customizer-chrome.zip

  3. In the dashboard, open the existing item → Package → upload the new ZIP.
  4. Re-confirm the Privacy practices tab (answers above do not change unless the permissions change) and submit for review.

Only the Privacy/permission answers need revisiting if you ever add a new permission or host. For element-only or UI changes, the answers above stay the same. ```