Skip to content

aryamankukal/LeetReps_CalHacks

Repository files navigation

LeetReps - Master LeetCode with smart, spaced reviews and quizzes

A Chrome extension that implements spaced repetition for LeetCode problems to help you retain knowledge and improve your problem-solving skills.

Quick Setup

  1. Install Extension:

    • Download the extension .zip file below
    • Unzip the file to a folder on your computer
    • Open background.js and replace YOUR_OPENAI_API_KEY_HERE on line 367 with your actual OpenAI API key (see step 2 below)
    • Go to chrome://extensions/
    • Turn on Developer mode (top right)
    • Click "Load unpacked"
    • Select the unzipped extension folder
    • Click "Details" on the extension and toggle on "Pin to toolbar"
    • Make sure you click on the extension icon and input your Target Date before you start submitting solutions on leetcode
    • Go to LeetCode, start submitting problems, and play around with the extension features
  2. Use Quiz Feature:

    • Get API key from OpenAI
    • Open background.js and replace the API_KEY value on line 367
    • Solve a LeetCode problem and get it accepted
    • Click "🧠 Quiz" button on any problem in the extension
    • Quiz opens automatically in new tab with generated questions

Features

  • Automatic Problem Tracking: Problems are only added when you successfully submit and get an accepted solution on LeetCode.
  • Spaced Repetition Algorithm: Reviews are scheduled using exponential spacing, customizable to your target date (e.g., your next interview).
  • Custom Review Schedule: Set your own Target Date (like your next interview) and the extension will automatically space your reviews up to that date.
  • Daily Review Queue: See problems due for review today in a dedicated tab.
  • All Problems Management: View, filter, and manage all saved problems in a separate tab.
  • Time Tracking: Tracks how long you spend on each problem.
  • Data Export: Export your problem data for backup or analysis.
  • Dark Mode: Toggle a beautiful dark mode with a modern animated switch.
  • Quiz Feature: Test your knowledge with generated questions about specific problems.

Spaced Repetition Algorithm

The extension uses an exponential spacing system:

  • You set a Target Date (e.g., your next interview).
  • Reviews are scheduled at increasing intervals from when you solve a problem up to your chosen target date.
  • The algorithm adapts the number and spacing of reviews based on how far away your target date is.

Usage

  1. Solve Problems: Visit LeetCode and solve problems as usual. Problems are only added when you submit and get an accepted solution (currently adds all submissions, not just accepted ones, will fix this in the future)
  2. Set Your Target Date: On first use, the extension will prompt you to set your Target Date (e.g., your next interview). You can change this anytime via the gear icon.
  3. Check Reviews: Click the extension icon to see problems due for review today in the "Today's Reviews" tab.
  4. Mark as Reviewed: Click "Mark Reviewed" after reviewing a problem to schedule the next review.
  5. Manage Problems: Use the "All Problems" tab to view, filter by difficulty, and manage all saved problems.
  6. Take Quizzes: Click the "🧠 Quiz" button on any problem to test your knowledge with generated questions.
  7. Toggle Dark Mode: Use the switch in the footer to toggle dark mode.
  8. Export Data: Use the Export Data button to download your problem data.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors