Repository navigation
v1.0.0
crossDSA is a Manifest V3 Chrome extension that surfaces the same or
similar DSA problem from other platforms while you solve on any one of
five sites: LeetCode, GeeksforGeeks, Codeforces, CodeChef, and
TakeUForward (search-only on TUF for now).
Matching
- Content-script engine tokenizes problem titles and statements,
strips stopwords, stems (Porter), and applies IDF weighting plus
bigram overlap so matches are content-aware rather than keyword-only. - Combines title and description similarity into a single confidence
score, flags exact vs similar, dedupes near-identical titles, and
respects an adjustable threshold with Lenient/Moderate/Strict presets. - Results panel groups matches by platform with tabs, difficulty,
topic tags, and match%; built-in YouTube solution search that builds
platform-specific queries (contest+index code for Codeforces,
problem codes for CodeChef, etc.). - Works around SPA navigation and mutating DOMs via re-injection and a
floating fallback button.
Extension
- Popup toggles the button, picks search platforms, and exposes
problem counts per platform and last-results stats. - Settings persist via chrome.storage (background service worker routes
storage between popup and content script).
Data & scrapers
- Four Python scrapers (LeetCode GraphQL, GfG practice API,
Codeforces problemset API, CodeChef list/detail API) write to
data/ as separate JSON datasets (~10k+ problems indexed). - Scrapers are resumable: skip IDs already present and checkpoint
every 50 problems; scrape.py runs one, several, or all interactively
(CodeChef supports --limit/--pages for quick tests).