🏠 Home 

GitHub Hide Own Feed Meta

A userscript that hides your own repo metadata in the GitHub feed

// ==UserScript==
// @name        GitHub Hide Own Feed Meta
// @version     0.1.9
// @description A userscript that hides your own repo metadata in the GitHub feed
// @license     MIT
// @author      Rob Garrison
// @namespace   https://github.com/Mottie
// @match       https://github.com/
// @run-at      document-idle
// @grant       none
// @require     https://greasyfork.org/scripts/28721-mutations/code/mutations.js?version=1108163
// @icon        https://github.githubassets.com/pinned-octocat.svg
// @supportURL  https://github.com/Mottie/GitHub-userscripts/issues
// ==/UserScript==
(() => {
"use strict";
const feedClass = ".watch_started"; // starred; not sure about watch event
// Set up user string as "/{user}/" to match the link's href
const user = `/${document.querySelector('meta[name="user-login"]').getAttribute("content")}/`;
function init() {
if (document.getElementById("dashboard")) {
[...document.querySelectorAll(feedClass)].forEach(el => {
// This is really fragile
// div.border.rounded-1.p-3.my-2
//  > div (no class)
//   > span.f3.lh-condensed.text-bold.text-gray-dark
//    > a.link-gray-dark.text-bold.wb-break-all[data-ga-click]
const link = el.querySelector("div.border a[data-ga-click]");
if (link.href.indexOf(user) > 0) {
link.closest("div.border").style.display = "none";
}
});
// ghmo observer isn't set up to watch the feed... we'll work around it for now
document.querySelector(".ajax-pagination-btn").addEventListener("click", () => {
setTimeout(() => {
init();
}, 1500);
});
}
}
document.addEventListener("ghmo:container", init);
init();
})();