SeenThat
SeenThat is a chrome extension that hides YouTube video recommendations depending on how much of that video has already watched. It functions like any other extension in that that runs this functionality in the background while the user browses the web. What gets hidden can be easily customized by clicking the extension icon on the chrome toolbar and changing the settings in the corresponding popup window. These range from toggling which YouTube pages SeenThat will be active in, to details regarding the types of recommendations and the minimum percentage watched to hide.
The programming for the extension is written in javascript with the structure and styling for the popup window being described with html and css. The hiding behaviour works by first finding html elements on YouTube pages that match the css identifiers for video previews. Information about these previews is then generated by looking at the elements' identifiers and looking for other child elements such as the red progress bar that is displayed for videos the user already started watching. Then, based on the customizable filtering options, the script iterates through the previews and modifies their css styling to either hide or display the previews. This hiding logic is triggered whenever the parent elements that contain these previews get updated or when the filtering options are modified. Additionally, the extension can also hide recommendations on video endscreens by cross-referencing information gathered from previews on the page.
Before SeenThat could be published, the extension had to be submitted to Google for review. This serves to both ensure items added to the Chrome Web Store aren't malicious and to make sure that extensions only use as many permissions as necessary. This holds true for any updates to extensions, meaning that there will be a delay before new features and bug fixes will be available to users.
If you're sick of being recommended videos that you've already watched, you can find the extension from the Chrome Web Store and install it by clicking "add to chrome".