Put this plugin inline under the reviewers and follow the same style and spacing as github [Image 1]
Also, remove mentions of "Open Source Explorer" just at the bottom of it say in light Powered by the Open Source Explorer but very subtle
REmove all the borders etc so it looks like a part of the github page
Done — I moved the panel into GitHub’s PR sidebar and restyled it to blend in as a native section under Reviewers.
.discussion-sidebar, positioned immediately after the Reviewers block instead of floating in the viewport (content.js:272, content.js:309).content.js:62).content.js:325).content.js:346).content.js:414).node --check content.js (passes).If you want, next I can:
bookmarklet.js too so both extension + bookmarklet UIs are consistent.yes exactly, i don't want that popup style anymore
Perfect — I removed the popup treatment entirely.
content.js and bookmarklet.js).Powered by the Open Source Explorer.node --check content.js and node --check bookmarklet.js.If you refresh GitHub and still see the old UI, reload the extension once in chrome://extensions and hard refresh the PR page.
i dont see anything now
Got it — I just fixed that.
I updated the mount logic so it no longer silently fails when GitHub renders the sidebar late or uses a different sidebar container.
content.js and bookmarklet.js.Please do this once:
chrome://extensionsCmd+Shift+R)If it still doesn’t appear, send me what this returns in DevTools console and I’ll patch immediately:
({ panel: !!document.querySelector("#md-expert-pr-panel"), sidebar: document.querySelector(".discussion-sidebar, .Layout-sidebar")?.className || null})i ju[Image 1]
Thanks — that screenshot was super helpful.
sidebar: null means your GitHub PR view doesn’t use the old .discussion-sidebar classes, so the previous selector path missed it.
I just patched this again in both content.js and bookmarklet.js:
Please do this once:
chrome://extensionsCmd+Shift+R)If it still doesn’t show, run this in console and send me output:
({ styleLoaded: !!document.getElementById("md-expert-pr-style"), panelMounted: !!document.getElementById("md-expert-pr-panel"), reviewersTextNodes: [...document.querySelectorAll("h2,h3,h4,[role='heading']")] .filter(n => (n.textContent || "").trim().toLowerCase() === "reviewers") .length})great. now just drop the "Github" and "market.dev" links
Done — I removed those two links from the contributor card in both places:
content.jsbookmarklet.jsSpecifically, the GitHub and Market.dev link row is gone now (and related row styling removed).
I also rechecked syntax for both files.
If you want, I can also make the contributor name non-clickable too.
also remove browse directory
Done — removed “Browse directory” in both files.
content.js and bookmarklet.js so the not-found state now just shows:
No contributor profile found yet.Syntax checks still pass for both files.
pls commit and push
Done — committed and pushed.
230ee91main pushed to origin/main successfully (ed79474..230ee91)change projects heading to "Notable Projects"
Done — I changed the section heading from Projects to Notable Projects in both:
content.jsbookmarklet.jsI left the stats label (Projects count) unchanged.
provide link to Open Source Explorer (explore.market.dev)
Done — I added a subtle footer link to https://explore.market.dev (“Open Source Explorer”) in both content.js and bookmarklet.js.
It keeps the muted styling and only underlines on hover. Refresh the PR page to see it.
commit and push; can we add a keyboard shortcut so that we can cycle through to the next PR? is that psosible
Done — committed and pushed.
19c69e3main -> origin/mainYes, keyboard shortcut navigation is definitely possible in this extension.
Best implementation options:
+1/-1) — simpler but can jump to closed/missing PRs.If you want, reply with 1 or 2 and I’ll implement it next (I can use ] for next and [ for previous by default).
1
Implemented option 1 in the extension (content.js).
] = next PR[ = previous PR/pulls list you visited in that repo (so it tracks current list ordering/filtering).Notes:
/pulls once, then shortcuts work.Make the arrows -> do the nav, and add a small hint at the bottom after Powered by: saying "View next PR using <- ->"
Done — I updated it.
-> (ArrowRight) = next PR<- (ArrowLeft) = previous PR[ and ] working too, so both options work.View next PR using <- ->File updated: content.js
Refresh the PR page (hard refresh) to load the new shortcut behavior.
Nah, I don't like that hint here. Put 2 arrow buttons under this code button [Image 1], make it match the width of the code button with a small gap, the arrow should show the character -> not - >
Done — I removed the footer hint and moved navigation to two buttons under the GitHub Code button.
What I changed in content.js:
<- and ->) that mounts directly under the detected Code button.Code button dynamically.6px) between the Code button and nav row, and between the two nav buttons.ArrowLeft / ArrowRight, and [ / ]).Also removed:
Reload the extension and hard-refresh the PR page to see it.
[Image 1]
Close, but look at this
Fixed — I adjusted both issues in content.js:
"<-" and "->" with monospace styling so they read as single arrow strings cleanly.I also kept keyboard navigation (ArrowLeft / ArrowRight) working.
Please hard refresh the PR page (Cmd+Shift+R) so the updated content script loads.
[Image 1] Placement is better, although heihgt still off a bit
But the arrow character is off
Great catch — I fixed both in content.js:
← and → (not <- / -> text combos).Code button height exactly.Code button so the shape feels native.Please hard refresh the PR page (Cmd+Shift+R) and check again. If it’s still 1–2px off on your zoom level, I can add a tiny visual offset tweak.
share this trace
Yep — here’s the trace from the current state (shareable):
git status --shortM content.jsKey diff trace in content.js:
NAV_CACHE_KEY, NAV_BUTTONS_ID, nav retry/reposition state.normalizePullPath, readNavigationCache, writeNavigationCache, cachePullListOrdergetAdjacentPullPath, navigateToAdjacentPullArrowLeft / ArrowRight (plus [ / ])findCodeButton, ensureNavButtons, retry + viewport reposition listeners← and →#md-expert-pr-nav-buttons and .md-pr-nav-btn.init() now binds keyboard + viewport listeners and mounts nav buttonsapplyCheck() also calls ensureNavButtons().If you want, I can commit this as a separate “PR navigation controls” commit now.
({ panel: !!document.querySelector("#md-expert-pr-panel"), sidebar: document.querySelector(".discussion-sidebar, .Layout-sidebar")?.className || null})({ styleLoaded: !!document.getElementById("md-expert-pr-style"), panelMounted: !!document.getElementById("md-expert-pr-panel"), reviewersTextNodes: [...document.querySelectorAll("h2,h3,h4,[role='heading']")] .filter(n => (n.textContent || "").trim().toLowerCase() === "reviewers") .length})git status --shortM content.js