Extension development overview
After reading the Getting Started guides and Architecture Overview, use this guide as an outline of extension components and their capabilities in Manifest V3. You are encouraged to explore and expand extension functionality.
Customize the user interface
- Action
- Control the display of an extension's icon in the toolbar.
- Commands
- Add keyboard shortcuts that trigger actions.
- Menus
- Add items to Google Chrome's context menu.
- Omnibox
- Add keyword functionality to the address bar.
- Pages
- Create a version of the New Tab, Bookmark, or History page.
- Actions
- Dynamically display icons in the toolbar.
Build extension utilities
- Accessibility
- Make an extension accessible to people with disabilities.
- Service workers
- Detect and react when something interesting happens.
- Internationalization
- Work with language and locale.
- Identity
- Get OAuth2 access tokens.
- Management
- Manage extensions that are installed and running.
- Message passing
- Communicate from a content script to its parent extension, or vice versa.
- Options page
- Let users customize an extension.
- Permissions
- Modify an extension's permissions.
- Storage
- Store and retrieve data.
Modify and observe the Chrome browser
- Bookmarks
- Create, organize, and manipulate bookmark behavior.
- Browsing data
- Remove browsing data from a user's local profile.
- Downloads
- Programmatically initiate, monitor, manipulate, and search for downloads.
- Settings
- Manage Chrome's font settings.
- History
- Interact with the browser's record of visited pages.
- Privacy
- Control Chrome privacy features.
- Proxy
- Manage Chrome's proxy settings.
- Sessions
- Query and restore tabs and windows from a browsing session.
- Tabs
- Create, modify, and rearrange tabs in the browser.
- Top sites
- Access users most visited URLs.
- Themes
- Change the overall appearance of the browser.
- Windows
- Create, modify, and rearrange windows in the browser.
Modify and observe the web
- Active tab
- Securely access websites by removing most needs for
<all_urls>
host permission. - Content settings
- Customize websites features such as cookies, JavaScript, and plugins.
- Content scripts
- Run JavaScript code in the context of web pages.
- Cookies
- Explore and modify the browser's cookie system.
- Cross-origin XMLHttpRequest
- Use XMLHttpRequest to send and receive data from remote servers.
- Declarative content
- Perform actions on the content of a page without requiring permission.
- Desktop capture
- Capture content of screen, individual windows or tabs.
- Page capture
- Save a tab's source information as MHTML.
- Tab capture
- Interact with tab media streams.
- Web navigation
- Status updates of navigation requests in-flight.
- Declarative net request
- Provide rules that tell Chrome how to intercept, block, or modify requests in-flight.
Package, deploy, and update
- Chrome Web Store
- Hosting and updating extensions with the Chrome Web Store.
- Other deployment options
- Distribute extensions on a designated network or with other software.