Extensions
Extensions are software programs, built on web technologies (such as HTML, CSS, and JavaScript) that enable users to customize the Chrome browsing experience.
- Documentation for Chrome extensions developers.
- Recent changes to the Chrome extensions platform, documentation, and policy
- Where to go for help with questions not covered by the documentation.
- Getting Started Guides #
- Welcome Overview of all Chrome Extensions getting started guides.
- Extensions 101 Explore basic concepts of Chrome extension development.
- Development basics What to expect during the development of a Chrome extension.
- Run scripts on every page Learn how to automatically add new elements to existing webpages.
- Inject scripts into the active tab Learn how to simplify the style of the current page.
- Manage tabs Learn how to programmatically organize tabs using tab groups.
- Welcome
- Manifest V3 #
- Welcome to Manifest V3 An introduction to Manifest V3
- Extensions platform vision Where the extensions platform is headed and why
- Overview of Manifest V3 A description of the features and changes introduced by Manifest V3.
- Welcome to Manifest V3
- Overview #
- What are themes? Guidelines on how to create a theme.
- Frequently asked questions Frequently asked questions about Chrome Extensions.
- Extensions quality guidelines FAQ Frequently asked questions about the single purpose policy.
- What are themes?
- Migrate from Manifest V2 to Manifest V3 #
- Migrate to Manifest V3 A guide to converting Manifest V2 extensions to Manifest V3 extensions.
- Manifest V3 migration checklist A quick reference for upgrading your extensions from Manifest V2 to Manifest V3.
- Update the manifest The manifest.json file requires a slightly different format for V3 than for V2.
- Migrate to a service worker A service worker enables extensions to run only when needed, saving resources.
- Update your code The first of three sections describing changes needed for code that is not part of the extension service worker.
- Replace blocking web request listeners The second of three sections describing changes needed for code that is not part of the extension service worker.
- Improve extension security The last of three sections describing changes needed for code that is not part of the extension service worker.
- Manifest V2 support timeline Details of the Manifest V2 phase-out and end of life.
- Known issues when migrating to Manifest V3
- Migrate to Manifest V3
- The complete reference to all APIs made available to Chrome Extensions. This includes APIs for the deprecated Chrome Apps platform as well as APIs still in beta and dev.
- Examples of extensions that address various use cases and call appropriate Chrome APIs. Use these to learn how extensions work or as a starting point for building your own extensions.
- Develop extensions and themes #
- Extension development overview An overview of Chrome Extension capabilities and components.
- Manifest file format An overview of the manifest.json properties of a Chrome Extension.
- Architecture overview A high-level explanation of the architecture of Chrome Extensions.
- Declare permissions An overview of the valid values for the permissions property in manifest.json.
- Design the user interface UI and design guidelines for Chrome Extensions.
- Debugging extensions Step-by-step instructions on how to debug Chrome Extensions.
- Samples Intro to extension examples GitHub repository
- Extension development overview
- In depth: core concepts #
- Message passing How to pass messages between extensions and content scripts.
- Content scripts An explanation of content scripts and how to use them in your Chrome Extension.
- Manage events with service workers How to respond to browser triggers (events) from a Chrome Extension service worker.
- Match patterns How host permission and content script pattern matching works, with examples.
- Using promises How to use promises in extension APIs
- Cross-origin isolation Overview of cross-origin isolation for extensions
- Message passing
- In depth: security #
- Cross-origin XMLHttpRequest How to implement cross-origin XHR in your Chrome Extension.
- Using eval in Chrome extensions How to use eval() in a Chrome Extension.
- Cross-origin XMLHttpRequest
- In depth: more topics #
- Overriding Chrome settings How to override Chrome settings from a Chrome Extension.
- Extending DevTools How to create a Chrome Extension that adds functionality to Chrome DevTools.
- Fetching favicons How to get a website's favicon.
- OAuth2: Authenticate users with Google Step-by-step instructions on how to build an extension that accesses a user's Google contacts via the Google People API, the Chrome Identity API, and OAuth2.
- Overriding Chrome pages How to override the Chrome bookmark manager, history, and new tab pages from your Chrome Extension.
- Rich notifications API How to show notifications to your Chrome Extension users.
- Native messaging Exchange messages with native applications from your Chrome Extension.
- Overriding Chrome settings
- Best practices #
- Protect user privacy Guidelines for ensuring that your Chrome Extension protects user privacy.
- Declare permissions and warn users How to implement permissions to protect your users and your Extension.
- Stay secure How to keep your Chrome Extension secure.
- Accessibility (a11y) How to make your Chrome Extension accessible.
- Localization message formats Reference documentation about the format of the messages.json file for Chrome Extensions.
- Give users options How to let users customize your extension.
- Protect user privacy
- Distributing your extensions #
- Extension hosting How to host your Chrome extension.
- Alternative extension installation methods How to install Chrome Extensions via preferences JSON or Windows registry.
- Installing extensions on Linux How to package, host, and update crx files from a personal server for Linux users.
- Tutorial: Google analytics Step-by-step instructions on how to track usage of your Extension with Google Analytics.
- Extension hosting
- Manifest V2 #
- About Manifest V2 Documentation for Chrome extensions developers.
- Getting started Step-by-step instructions on how to create a Chrome Extension.
- Overview #
- Develop extensions and themes #
- In depth: core concepts #
- In depth: security #
- In depth: more topics #
- Best practices #
- Distributing your extensions #
- About Manifest V2