Arora-Sir/TUFHub: Automatically sync your TakeUForward (TUF+) solutions to GitHub in real-time. - Arora-Sir/TUFHub

github.com · 2026-08-01 · by Long Nguyen ·github
Automatically sync your TakeUForward (TUF+) solutions to GitHub in real-time. - Arora-Sir/TUFHub

Arora-Sir/TUFHub

Automatically sync your TakeUForward (TUF+) solutions to GitHub in real-time. - Arora-Sir/TUFHub

2 stars · 0 forks · 0 watchers

README

TUFHub Automatically sync your TakeUForward (TUF+) solutions to GitHub.

🚀 What is TUFHub? TUFHub is a Chrome Extension that automatically syncs your accepted solutions from TakeUForward (TUF+) to your GitHub repository in real time. Inspired by LeetHub, it brings zero-friction automated GitHub sync specifically to TakeUForward: solve, submit, and your solution lands on GitHub instantly.

📥 Direct 1-Click Installation Option 1: Official Chrome Web Store (Recommended) Click below to install TUFHub directly into Google Chrome with automatic background updates:

Option 2: Manual Developer Mode (Unpacked Build)

Clone or download this repository: git clone https://github.com/Arora-Sir/TUFHub.git cd TUFHub && npm install && npm run build

Open Chrome → navigate to chrome://extensions → enable Developer mode. Click Load unpacked and select the generated dist/ directory.

📸 Screenshots & Showcase

📁 Master Solutions Repository Index Auto-maintains a structured README.md at the root of your solutions repository with real-time stats and topic badges.

⚡ Automated Solution Commits Commits code solutions with clean folder hierarchy, language extensions, and formatted problem statements.

✨ Features

Auto-Sync on 100% Pass: Only commits accepted solutions; ignores failing attempts. Multi-Category Organization: Categorizes problems under DSA, SQL, Aptitude, and Mock Tests. Smart Folder Hierarchy: Dynamically resolves subtopics and problem slugs. Problem Statement README: Generates per-problem README.md with difficulty & complexity analysis. Master Repository Index: Maintains a master README.md index table sorted by category & difficulty. Live Extension Popup: Tracks Solved, Easy, Medium, Hard counts with a 1-click ↻ Sync button. Conflict-Safe Commits: Sequential queue prevents Git 409 commit conflicts.

📁 Repository Folder Structure Your solutions repository is automatically organized like this: TUF-Solutions/ ├── DSA/ │ ├── Arrays/0001-set-matrix-zeroes/ (solution.cpp, README.md) │ ├── Linked-List/ │ ├── Recursion/ │ └── ... ├── SQL/ │ └── Joins/ ├── Aptitude/ ├── Mock-Tests/ └── README.md <-- Master Index

💻 Supported Languages

C++ (.cpp) Java (.java) Python (.py) JavaScript (.js) C# (.cs) Go (.go) SQL (.sql)

⚡ Quick Setup Guide 1. Connection

Personal Access Token (Recommended): Click the pre-configured link in the onboarding wizard to generate a PAT with repo scope, paste it, and save.

OAuth App Setup (Advanced)

Click Register OAuth App on GitHub (pre-fills app name and callback URL). Generate Client ID & Client Secret, paste them into TUFHub, and click Launch GitHub OAuth Flow.

2. Start Syncing! Go to TakeUForward TUF+, solve any problem, and hit Submit. Your solution will land on GitHub automatically!

🔒 Privacy & Security

Direct Local Communication: Data is transmitted strictly between your browser and api.github.com. Local Credential Storage: Tokens are stored securely in chrome.storage.local and never sent to third-party servers. Zero Telemetry: No analytics, tracking, or external logging.

📂 Developer Setup & Project Architecture Build Commands npm install # Install dependencies npm run build # Production Webpack 5 build (outputs to dist/) npm run dev # Development build with watch mode Directory Structure TUFHub/ ├── src/ │ ├── manifest.json # Chrome Extension Manifest V3 │ ├── popup.html # Extension popup UI │ ├── welcome.html # Onboarding wizard │ ├── css/popup.css # Shared styles │ └── scripts/ │ ├── popup.js # Popup controller │ ├── welcome.js # Onboarding wizard logic │ ├── background.js # Service worker & OAuth │ └── tuf/ # Network interceptor, README builders & GitHub API uploader ├── webpack.config.js └── package.json

❓ Frequently Asked Questions (FAQ)

Q: Will it sync if I only pass some test cases? No. TUFHub syncs strictly when 100% test cases pass. Q: What if I submit the same problem in another language? TUFHub adds the new language file alongside the existing solution in the same folder and updates the master index. Q: My stats show 0 after reinstalling. Click the ↻ Sync button in the popup to re-scan your repository and restore your stats instantly. Q: Can I use an existing repository? Yes. Enter the name of your existing repo during setup; TUFHub will connect to it and scan existing solutions. Q: Is this extension affiliated with TakeUForward? No. This is an independent open-source tool and is not officially affiliated with TakeUForward.

🙏 Acknowledgements & Inspiration TUFHub is inspired by open-source submission sync extensions:

LeetHub (QasimWani) - Original LeetCode sync tool. LeetHub 2.0 (arunbhardwaj) - Manifest V3 architecture reference.

TUFHub adapts these concepts for TakeUForward (TUF+) with multi-category support, network interception, and automated README indexing.

⭐ Support & Community If TUFHub helps you stay consistent on your coding journey, please consider supporting the project:

🎓 Enroll in TUF+: Get the official course via TakeUForward (TUF+) 🌐 Official Website: Visit tufhub.mohitarora.me 🛒 Chrome Web Store: Rate and review TUFHub on Chrome Web Store ⭐ Star this repository: Give TUFHub a star on GitHub ☕ Donate: Support via PayPal or UPI (mohit1998arora@yescred)

Crafted with ❤️ for Problem Solvers by Mohit Arora

source

github.com · 11 images · 121 links

Comments (0)

No comments yet