Skip to content

Automatically sync your leetcode solutions to your github account - with some updates to keep it working

License

Notifications You must be signed in to change notification settings

Akv2021/LeetHub-2.0

 
 

Repository files navigation

Modifications

  1. Merged PRs 104, 109 & 111
  • feature/access-public-repo
  • Accommodating Class Name Changes For Notes Section
  • added feature to manage the question as per group, topic
  1. Commands to merge more PRs
git fetch origin pull/<pr-number>/head:<local-branch-name>
git merge <local-branch-name>
  1. Update Extension with changes
  • npm run setup fails due to "name" in package.json. Fixed it.
  • npm run build (nvm use 18)
  • Load ./dist/chrome in chrome.

Original Blurb

LeetHub v2 - Automatically sync your code to GitHub.
LeetHub v2 - Automatically sync your code to GitHub.

license

What is LeetHub 2.0?

A chrome and (new) firefox extension that automatically pushes your code to GitHub when you pass all tests on a Leetcode problem. It's forked from the original LeetHub and improves on it to be faster, cleaner and compatible with the new dynamic LeetCode UI.

Why LeetHub 2.0?

1. Recruiters want to see your contributions to the Open Source community, be it through side projects, solving algorithms/data-structures, or contributing to existing OS projects.
As of now, GitHub is developers' #1 portfolio. LeetHub just makes it much easier (autonomous) to keep track of progress and contributions on the largest network of engineering community, GitHub.

2. 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?

2. Access to Public Repositories Only.
LeetHub 2.0 ensures your privacy by exclusively accessing your public repositories, so you can rest assured that your private repositories remain completely secure.

How does LeetHub work?

It's as simple as:

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

BONUS: Star this repository for further development of features. If you want a particular feature, simply request for it!

Why did I decide to work on LeetHub?

After the 2023 SVB bank closure and growing layoffs, it became clear to me that maintaining your skills is incredibly important. In that effort, it helps to have a source to contain all your learnings over the years: a repo you can go back to and see your commit history and any notes you've taken. With the previous and other extensions broken by recent LeetCode and GitHub changes, I decided to build one out myself using the original as a starting point.

Let's see you ACE that coding interview!

leetcode view

How to set up LeetHub for local development?

  1. Fork this repo and clone to your local machine
  2. Run "npm run setup" to install the developer dependencies
  3. Run npm run build to build the final extension files into the ./dist/ directory
  4. Go to chrome://extensions or about:debugging in firefox a. In Chrome, enable Developer mode by toggling the switch on top right corner
  5. Click Load unpacked or Load Temporary Add-on...
  6. Select the ./dist/chrome or ./dist/firefox LeetHub folder
  7. That's it! Be sure to npm run build and reload the extension after making changes

Other npm commands available:

npm run               Show list of commands available
npm run format        Auto-format JavaScript, HTML/CSS
npm run format-test   Test all code is formatted properly
npm run lint          Lint JavaScript
npm run lint-test     Test all code is linted properly

About

Automatically sync your leetcode solutions to your github account - with some updates to keep it working

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 90.4%
  • HTML 7.7%
  • CSS 1.9%