I recently learned about browser extensions that customize YouTube and would like to build one myself. I'm completely new to coding and have created files named manifest.json, script.js, and style.css, but I'm not sure what code belongs in each file. I'd like to add images, change YouTube's background colors, and experiment with different fonts. Is this possible, and what should I learn or set up first?
3 Answers
Start with manifest.json, which acts like your extension’s configuration file. It tells the browser which scripts and styles to load and which websites they can run on. For a YouTube customizer, you’ll generally need a content script and a YouTube host permission, such as https://www.youtube.com/*. Then style.css can handle colors, fonts, and layout changes, while script.js can modify page elements or add new ones.
Yes, it’s possible, but you’ll need to learn some basic HTML, CSS, and JavaScript first. Free beginner tutorials on those three topics will make extension development much easier. Try building one small feature at a time, like changing the page background, before adding images or more complicated controls.
YouTube uses CSS variables for many of its colors, so your stylesheet can override some of them by targeting elements such as html and body. Fonts usually require targeting the classes or elements used by YouTube’s text, though those selectors can change when the site is updated. CSS can display background images, but if you want to create new elements or insert image tags into the page, use a content script in the manifest and add them with JavaScript.
Got it, thanks! I’ll start with CSS changes and learn how content scripts can add elements afterward.

That helps a lot—so the manifest connects the other files and gives them permission to run on YouTube?