
Building a keyword-filtered notification reader Chrome extension: two Manifest V3 architectural challenges and their fixes
Original: How I built a Chrome extension that speaks your notifications aloud — and the two Manifest V3 problems nobody warned me about
Short summary
A developer built a Chrome extension that speaks browser notifications aloud only when they match user-defined keywords. The post details two undocumented Manifest V3 challenges: content scripts in the ISOLATED world cannot intercept the Notification API, requiring a MAIN world script bridged via custom DOM events to an ISOLATED world script for Chrome extension APIs. It also covers using optional_host_permissions to avoid scary install warnings and handling permission loss on extension updates.
- •MAIN world content scripts can override window.Notification but lack Chrome extension APIs, requiring a two-script bridge pattern
- •Optional host permissions eliminate the scary all-sites install warning, improving conversion from 33% uninstall rate
- •Extension updates that move required permissions to optional silently revoke them — existing users need a re-prompt flow
Generated with AI, which can make mistakes.
Is this a good recommendation for you?



