Table of contents About Thunderbird Contributing to Thunderbird Getting Started Building Thunderbird Windows Build Prerequisites Linux Build Prerequisites macOS Build Prerequisites Artifact Builds Codebase Overview Account Configuration Address Book Chat Core Notifications Message Styles Keyboard shortcuts Chat Core Protocols Contacts Mail Front-End Tutorials and Examples Hello World Example Thunderbird Live Development Videos Fixing a Bug Bug Triaging 101 Bug Status Classicification Bug Types Garbage Collection Narrow the Scope Using Mercurial Bookmarks Using Mercurial Queues Lint and Format Code Using ESLint to Format Javascript Code Try Server Landing a Patch Care and Feeding of the Tree Testing Running Tests Adding Tests Writing Mochitest Tests Planning Roadmap Backlog Android Roadmap Add-on Development Introduction What's new? A "Hello World" Extension Tutorial Using WebExtension APIs Using a Background Page Using Content Scripts A Guide to Extensions Supported Manifest Keys Supported UI Elements Supported WebExtension APIs Examples in the Sample Extensions Repository Introducing Experiments A Guide to Themes Manifest V3 Tips and Tricks Developer Community Documentation & Resources Add-on Update Guides Update for Thunderbird 68 Convert Overlay Extension to Legacy WebExtension Convert Bootstrapped Extension to Legacy WebExtension Adapt to Changes in Thunderbird 61-68 Update for Thunderbird 78 Adapt to Changes in Thunderbird 69-78 Update for Thunderbird 91 Adapt to Changes in Thunderbird 79-91 Update for Thunderbird 102 Adapt to Changes in Thunderbird 92-102 Update for Thunderbird Supernova Adapt to Changes in Thunderbird 103-115 Historical Overview