LeetPick is a Chrome extension that helps you practice LeetCode faster by:
- Picking a random unsolved, free LeetCode problem.
- Playing a sound after submission (
Acceptedvs failure states likeWrong Answer,Runtime Error, etc.).
- Random problem picker from LeetCode's problem API.
- Filters out:
- paid-only problems
- already accepted problems
- Caches problem slugs in
chrome.storage.localfor faster future picks. - Submission feedback sounds on LeetCode problem pages:
success.webmfor accepted submissionsfail.webmfor failure outcomes
- Click the extension icon.
- Click Pick Problem.
- The extension opens a random unsolved free problem in a new tab.
- On a LeetCode problem page, click Submit as usual.
- Once result text updates, LeetPick plays the corresponding sound.
- Open Chrome and go to
chrome://extensions/. - Enable Developer mode.
- Click Load unpacked.
- Select the
srcfolder in this project.
src/
manifest.json # Extension manifest (MV3)
background.js # Fetch/cache problem list and open random problem tab
content.js # Watches submission result panel and plays sounds
popup.html # Popup UI
popup.js # Popup button logic and runtime messaging
style.css # Popup styling
tabs: open the random problem in a new tab.storage: cache fetched problem slugs locally.https://leetcode.com/*host permission: call LeetCode API and run on LeetCode pages.
- Cached problem data is stored under
leetcodeProblemsinchrome.storage.local. - To refresh the cached list, clear extension storage from Chrome extension settings and pick again.
- Audio autoplay restrictions are handled by priming audio on user click.
Current version in manifest.json: 1.0