raphaelheinz / LeetHub-3.0

This plugin automatically pushes your code to GitHub when you pass all tests on a Leetcode problem.
MIT License
130 stars 84 forks source link
leetcode

LeetHub v3 - Sync your code with GitHub

license chrome-webstore users

LeetHub v3

What is LeetHub-3.0?

A chrome extension that automatically pushes your code to GitHub when you pass all tests on a Leetcode problem. It's forked from LeetHub-2.0 which is not compatible with Leetcode anymore since the latest updates.

Why LeetHub?

There's no easy way of accessing your leetcode problems in one place! Moreover, pushing code manually to GitHub from Leetcode is very time consuming. So, why not just automate it entirely without spending a SINGLE additional second on it?

Screenshot

leetcode view

Supported UI

LeetHub-3.0 works with two different Leetcode UIs. There are known issues when using the plugin with the "non-dynamic layout". Please use one of the following:

  1. old layout or
  2. new "dynamic layout"

Manual synchronization

Your submission may not be successfully uploaded to GitHub if you update the text in the editor too fast. It is necessary to wait for 4 seconds (until the spinner stops) after submitting the solution before entering new characters, switching languages, or switching editors. During this period, your solution is being pushed to GitHub, and the website should maintain its layout without alteration. While this process is less than ideal, we have not found a better solution so far. Sorry for this inconvenience! If you find a fix, your PRs are welcome!

In the meantime, we have added a manual synchronization button next to notes icon. Please use the manual sync button only after you have successfully submitted your solution to Leetcode. Additionally, you can push previous submissions to GitHub by selecting the submission first and then click on the manual synchronization button.

Installation

Download leetcode plugin
  1. Chrome Web Store

    Install this plugin using Chrome Web Store. Please find the link above. This is the preferred way of installation. Updates are installed automatically.

  2. (Optional) Manual installation

    You can also install the plugin manually. Please follow the steps below.

Setup

  1. After installing the LeetHub, launch the plugin
  2. Click on "Authorize with GitHub" to set up your account with LeetHub
  3. Setup an existing/new repository with LeetHub (private by default) by clicking "Get Started"
  4. Begin Leetcoding! To view your progress, simply click on the extension!

Supported npm commands

npm run               # Show available commands
npm run setup         # Install dependencies
npm run format        # Auto-format JavaScript, HTML/CSS
npm run format-test   # Test if code is formatted properly
npm run lint          # Lint JavaScript
npm run lint-test     # Test if code is linted properly

Contribution

Please help to further improve this awesome plugin! We would appreciate your support. Your pull requests are welcome!

Don't forget to star this repository for further development of new features. If you want a particular feature, simply request for it!