CodeBridge is a Manifest V3 Chrome extension that syncs solved problems from LeetCode, Codeforces, and HackerRank to a GitHub repository. It detects the problem, extracts your solution, generates a README, and uploads everything via the GitHub API.
- Detects problem metadata (title, difficulty, tags, URL, ID/slug).
- Extracts solution code from in-page editors or accepted submissions.
- Supports folder or flat file layouts with customizable templates.
- Uses GitHub device flow for authentication.
- Works on LeetCode, Codeforces, and HackerRank.
- Create a GitHub OAuth App and copy the Client ID.
- Update src/background/constants.js with your Client ID.
- Load the extension from chrome://extensions (Developer mode -> Load unpacked).
- Open a supported problem page and click Detect.
- Save to GitHub.
Full documentation is in docs/:
- docs/README.md
- docs/overview.md
- docs/architecture.md
- docs/project-structure.md
- docs/setup.md
- docs/configuration.md
- docs/development.md
- docs/security-privacy.md
- docs/troubleshooting.md
- docs/decisions.md (Architecture Decisions Log)
Codeforces loads accepted code on the submission page. When Detect runs on a problem page, Code Bridge prompts you to open your last accepted submission. You can enable "Don't ask again (Auto Redirect)" to skip the prompt next time. You can also open the accepted submission manually (click the submission ID) and open the popup there.
See docs/project-structure.md for the complete layout and module overview.
npm install
npm run buildThe build output is optional and used only for release packaging.
Tokens are stored in chrome.storage.local only when you choose to persist them. See docs/security-privacy.md for details.
ISC