Skip to content

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 

Repository files navigation

LeetPick

LeetPick is a Chrome extension that helps you practice LeetCode faster by:

  • Picking a random unsolved, free LeetCode problem.
  • Playing a sound after submission (Accepted vs failure states like Wrong Answer, Runtime Error, etc.).

Features

  • Random problem picker from LeetCode's problem API.
  • Filters out:
    • paid-only problems
    • already accepted problems
  • Caches problem slugs in chrome.storage.local for faster future picks.
  • Submission feedback sounds on LeetCode problem pages:
    • success.webm for accepted submissions
    • fail.webm for failure outcomes

How It Works

  1. Click the extension icon.
  2. Click Pick Problem.
  3. The extension opens a random unsolved free problem in a new tab.
  4. On a LeetCode problem page, click Submit as usual.
  5. Once result text updates, LeetPick plays the corresponding sound.

Installation (Developer Mode)

  1. Open Chrome and go to chrome://extensions/.
  2. Enable Developer mode.
  3. Click Load unpacked.
  4. Select the src folder in this project.

Project Structure

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

Permissions Used

  • 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.

Notes

  • Cached problem data is stored under leetcodeProblems in chrome.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.

Version

Current version in manifest.json: 1.0

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages