How to Build a Chrome Extension in 2026 (Manifest V3 Guide)
Originally published on the MatrixInn Solutions blog . Chrome extensions give you superpowers over the browser — blocking ads, automating tasks, injecting UI into web pages, capturing screenshots, managing tabs, and much more. The Chrome Web Store has over 100,000 extensions used by hundreds of millions of people. This guide walks you through building a complete Chrome extension from scratch…
Building a Chrome extension in 2026, using Manifest V3, involves creating several key components: manifest.json, popup.html, popup.js, and background.js. The manifest.json file is the configuration file that declares permissions, scripts, and extension metadata. It specifies the extension's name, version, icons, actions, background service worker, content scripts, permissions, and host permissions.
The popup.html file defines the user interface of the extension, including a heading and a button. However, unlike older tutorials, inline scripts are not allowed in extension HTML files due to Content Security Policy (CSP). Therefore, all scripts must be placed in external .js files.
popup.js contains the JavaScript code that runs when the user clicks the button in the popup. It queries the active tab using the chrome.tabs API and sends a message to the content script. The response from the content script is then displayed in the status div.
background.js is the service worker file that runs in the background. It listens for events such as the extension installation and sets a local storage item to indicate that the extension is enabled. Service workers in Manifest V3 run on demand and terminate when idle, unlike the old background pages in Manifest V2.
Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.