Linked e-resources
Details
Table of Contents
Intro
Table of Contents
About the Author
About the Technical Reviewer
Acknowledgments
Foreword
Introduction
Chapter 1: What Are Browser Extensions?
History of Browser Extensions
Customizing Software with Plugins
History of Web Browsers
Native Browser Plugins
From Browser Add-ons to Extensions
The Browser Extension Landscape
Comparing Mobile Apps and Browser Extensions
Browser Extension Stores
Types of Browser Extensions
Ad and Tracking Blockers
Password Managers
Smart Writing Management Tools
Accessibility Tools
Content and Link Aggregators
Tab Management Tools
Screen Recording Tools
Integrations for Software Platforms
Digital Currency Wallets
Developer Tools
Summary
Credits
Chapter 2: Fundamental Elements of Browser Extensions
The Browser Model
Browser Tabs
Same-Origin Policy
The Browser Extension Model
Independent JavaScript Pages and Runtimes
Native APIs and User Interfaces
Tab and Domain Access
Observing and Intercepting Network Requests
Elements of Browser Extensions
Extension Manifest
Manifest v2 and v3
Background Scripts
The Popup Page
The Options Page
Content Scripts
Devtools Panels and Sidebars
Extension Elements in Action
Honey
LastPass
Grammarly
React Developer Tools
Summary
Chapter 3: Browser Extension Crash Course
Creating the Manifest
Minimum Viable Extension
Installing Your Extension
Reloading Your Extension
Adding a Background Script
Adding a Popup Page
Adding an Options Page
Adding a Content Script
Working with Multiple Tabs
Adding a Devtools Panel
Summary
Chapter 4: Browser Extension Architecture
Architecture Overview
Plurality, Lifecycles, and Updates
Background Service Worker
Popup and Options Pages
Devtools Pages
Content Scripts
Browser Extension File Server
Sandboxed Pages
Summary
Chapter 5: The Extension Manifest
The Manifest File
Supporting Different Locales
Match Patterns and Globs
File Path Match Patterns
URL Match Patterns
URL Globs
Manifest Properties
action
default_icon
default_popup
default_title
browser_style
theme_icons
author
automation
background
Manifest v2 background scripts
Manifest v2 background page
Manifest v2 persistent pages and event pages
Manifest v3 service worker
browser_action
browser_specific_settings
chrome_settings_overrides
Custom Homepage
Custom Search Engine
Custom Startup Page
chrome_url_overrides
commands
Command Syntax
Defining Key Shortcuts
Multi-browser Support
Reserved Commands
Custom Commands
Global Commands
content_capabilities
content_scripts
content_security_policy
Manifest v2 content security policy
Manifest v3 content security policy
converted_from_user_script
cross_origin_embedder_policy
Table of Contents
About the Author
About the Technical Reviewer
Acknowledgments
Foreword
Introduction
Chapter 1: What Are Browser Extensions?
History of Browser Extensions
Customizing Software with Plugins
History of Web Browsers
Native Browser Plugins
From Browser Add-ons to Extensions
The Browser Extension Landscape
Comparing Mobile Apps and Browser Extensions
Browser Extension Stores
Types of Browser Extensions
Ad and Tracking Blockers
Password Managers
Smart Writing Management Tools
Accessibility Tools
Content and Link Aggregators
Tab Management Tools
Screen Recording Tools
Integrations for Software Platforms
Digital Currency Wallets
Developer Tools
Summary
Credits
Chapter 2: Fundamental Elements of Browser Extensions
The Browser Model
Browser Tabs
Same-Origin Policy
The Browser Extension Model
Independent JavaScript Pages and Runtimes
Native APIs and User Interfaces
Tab and Domain Access
Observing and Intercepting Network Requests
Elements of Browser Extensions
Extension Manifest
Manifest v2 and v3
Background Scripts
The Popup Page
The Options Page
Content Scripts
Devtools Panels and Sidebars
Extension Elements in Action
Honey
LastPass
Grammarly
React Developer Tools
Summary
Chapter 3: Browser Extension Crash Course
Creating the Manifest
Minimum Viable Extension
Installing Your Extension
Reloading Your Extension
Adding a Background Script
Adding a Popup Page
Adding an Options Page
Adding a Content Script
Working with Multiple Tabs
Adding a Devtools Panel
Summary
Chapter 4: Browser Extension Architecture
Architecture Overview
Plurality, Lifecycles, and Updates
Background Service Worker
Popup and Options Pages
Devtools Pages
Content Scripts
Browser Extension File Server
Sandboxed Pages
Summary
Chapter 5: The Extension Manifest
The Manifest File
Supporting Different Locales
Match Patterns and Globs
File Path Match Patterns
URL Match Patterns
URL Globs
Manifest Properties
action
default_icon
default_popup
default_title
browser_style
theme_icons
author
automation
background
Manifest v2 background scripts
Manifest v2 background page
Manifest v2 persistent pages and event pages
Manifest v3 service worker
browser_action
browser_specific_settings
chrome_settings_overrides
Custom Homepage
Custom Search Engine
Custom Startup Page
chrome_url_overrides
commands
Command Syntax
Defining Key Shortcuts
Multi-browser Support
Reserved Commands
Custom Commands
Global Commands
content_capabilities
content_scripts
content_security_policy
Manifest v2 content security policy
Manifest v3 content security policy
converted_from_user_script
cross_origin_embedder_policy