OZ
Back to Portfolio
02 / Chrome extension

Tunewise

A Chrome extension that hides the distracting parts of YouTube page by page: Shorts, recommendations, comments, sponsored items and more. Changes apply live without a reload, and no data is collected. Published in the Chrome Web Store.

Manifest V3WXTPreactTypeScriptTailwind CSS v4Playwright
Visit Website
Tunewise popup with Home page options
Video page before and after hiding the sidebar and comments
Pages list with the options enabled on each page

Overview

Tunewise makes YouTube calmer: the user picks which distracting parts of each page disappear, and everything else stays as it is. Built from an empty repository to a published Chrome Web Store extension, with a spec-driven workflow, a strict privacy stance and an automated test suite that runs against YouTube page fixtures.

Goals

  • 01Hide distractions page by page — Home, Video, Search, Subscriptions, Channel, the left sidebar and pop-ups — with every option off by default
  • 02Apply changes live on open tabs, without a reload, and survive YouTube's single-page navigation
  • 03Collect no data: no network requests, no analytics, no remote code; settings sync through Chrome only
  • 04Keep YouTube working when its markup changes: an affected option simply stops, nothing else breaks

Tech Stack

  • //Manifest V3 extension built with WXT; popup and import page in Preact with Tailwind CSS v4
  • //One stylesheet for all hide options, switched by classes on the page root; MutationObserver-based marking for watched videos, batched per animation frame
  • //Typed, versioned settings with valibot schemas and migrations, stored in chrome.storage.sync with export and import
  • //TypeScript strict mode; Vitest unit tests and Playwright end-to-end tests that load the built extension against recorded YouTube markup

Results & Outcome

  • //1.0.0 published in the Chrome Web Store, approved on the day it was submitted
  • //Options for Home, Video, Search, Subscriptions and Channel pages, the left sidebar and pop-ups, including dimming or hiding already watched videos
  • //A lightweight package with only two permissions, storage and activeTab, running on youtube.com only
  • //Unit and end-to-end test suites run on every change