Get started
Welcome to Chrome Extension development. Discover everything you need to start building and distributing your first Chrome Extension.
Overview
What are extensions?
Chrome extensions enhance the browsing experience by customizing the user interface, observing browser events, and modifying the web. Visit theChrome Web Store for more examples of what extensions can do.
How are they built?
You can build extensions using the same web technologies that are used to create web applications:HTML,CSS, andJavaScript.
What can they do?
In addition toWeb APIs, extensions also have access toChrome Extension APIs to accomplish different tasks. For a more detailed overview, take a look at theDevelop guide.
Extension terminology
A Chrome extension is composed of parts that play different roles.
Manifest
The extension's manifest is the only required file that must have a specific file name: manifest.json. It also has to be located in the extension's root directory. The manifest records important metadata, defines resources, declares permissions, and identifies which files to run in the background and on the page.
Service workers
A service worker runs in the background and handles browser events, like removing a bookmark, or closing a tab. They don't have access to the DOM, but you can combine it with an offscreen document for this use case.
Content scripts
Content scripts run JavaScript in the context of a web page.
Toolbar action
Execute code when the user clicks on the extension toolbar icon or show a popup using the Action API.
Side Panel
Display custom UI in the browser's side panel.
DeclarativeNetRequest
Intercept, block, or modify network requests.
Publish to the Chrome Web Store
If you are building the extension for yourself, check out ourgetting started tutorial. If you want to publish to the Chrome Web Store, there are a few things you need to know first.
Design a high-quality extension
When choosing which features to support, make sure your extension fulfills asingle purpose that is narrowly defined and easy to understand.
Become familiar with the policies
Extensions distributed on the Chrome Web Store must comply with thedeveloper program policies. Explore these policies to ensure your extension can be hosted in the Chrome Web Store.
Include all extension logic
When writing your code, keep in mind that all logic must be included in the extension package. This means no additional JavaScript code may be downloaded at runtime.Improve extension security provides alternatives to executing remotely hosted code.
Tutorials
Choose any of the following tutorials to begin your extension learning journey.
Your first extension
Create your first hello world extension, where you will become familiar with the extension development workflow.
Inject scripts into the active tab
Learn to simplify the style of the current page by clicking the toolbar icon.
Handle events with service workers
Learn to create and debug an extension service worker.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],[],[],[]]