{"id":676,"date":"2026-05-02T15:33:34","date_gmt":"2026-05-02T15:33:34","guid":{"rendered":"https:\/\/jackharvest.com\/?p=676"},"modified":"2026-05-03T03:36:56","modified_gmt":"2026-05-03T03:36:56","slug":"whothehecksentthis-add-sender-pictures-to-thunderbird-mail-with-zero-setup","status":"publish","type":"post","link":"https:\/\/jackharvest.com\/index.php\/2026\/05\/02\/whothehecksentthis-add-sender-pictures-to-thunderbird-mail-with-zero-setup\/","title":{"rendered":"WhoTheHeckSentThis &#8211; Add Sender Pictures to Thunderbird Mail with Zero Setup"},"content":{"rendered":"<div class=\"wp-block-image\">\n<figure class=\"alignleft size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"842\" height=\"842\" src=\"https:\/\/jackharvest.com\/wp-content\/uploads\/2026\/05\/WhoTheHeckSentThis_Icon_Rounded_Final.png\" alt=\"\" class=\"wp-image-679\" style=\"width:152px;height:auto\" srcset=\"https:\/\/jackharvest.com\/wp-content\/uploads\/2026\/05\/WhoTheHeckSentThis_Icon_Rounded_Final.png 842w, https:\/\/jackharvest.com\/wp-content\/uploads\/2026\/05\/WhoTheHeckSentThis_Icon_Rounded_Final-300x300.png 300w, https:\/\/jackharvest.com\/wp-content\/uploads\/2026\/05\/WhoTheHeckSentThis_Icon_Rounded_Final-150x150.png 150w, https:\/\/jackharvest.com\/wp-content\/uploads\/2026\/05\/WhoTheHeckSentThis_Icon_Rounded_Final-768x768.png 768w\" sizes=\"auto, (max-width: 842px) 100vw, 842px\" \/><\/figure>\n<\/div>\n\n\n<p>You open Thunderbird. Your inbox is a wall of names. &#8220;David Chen&#8221; \u2014 which David?  &#8220;Newsletter@somethingcorp.com&#8221; \u2014 the one you signed up for, or the one that found you? You scroll. You squint. You question your choices.<\/p>\n\n\n\n<p>WhoTheHeckSentThis puts a face \u2014 or at minimum a logo \u2014 next to every sender in your thread pane. Less time playing email CSI. More time reading your actual mail.<\/p>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:100%\">\n<figure class=\"wp-block-gallery has-nested-images columns-0 is-cropped is-style-rectangular wp-block-gallery-1 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large is-style-default\"><img loading=\"lazy\" decoding=\"async\" width=\"360\" height=\"369\" data-id=\"689\" src=\"https:\/\/jackharvest.com\/wp-content\/uploads\/2026\/05\/image-2.png\" alt=\"\" class=\"wp-image-689\" srcset=\"https:\/\/jackharvest.com\/wp-content\/uploads\/2026\/05\/image-2.png 360w, https:\/\/jackharvest.com\/wp-content\/uploads\/2026\/05\/image-2-293x300.png 293w\" sizes=\"auto, (max-width: 360px) 100vw, 360px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"639\" height=\"697\" data-id=\"690\" src=\"https:\/\/jackharvest.com\/wp-content\/uploads\/2026\/05\/Screenshot_20260502_213457.png\" alt=\"\" class=\"wp-image-690\" srcset=\"https:\/\/jackharvest.com\/wp-content\/uploads\/2026\/05\/Screenshot_20260502_213457.png 639w, https:\/\/jackharvest.com\/wp-content\/uploads\/2026\/05\/Screenshot_20260502_213457-275x300.png 275w\" sizes=\"auto, (max-width: 639px) 100vw, 639px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"646\" height=\"335\" data-id=\"687\" src=\"https:\/\/jackharvest.com\/wp-content\/uploads\/2026\/05\/image-1.png\" alt=\"\" class=\"wp-image-687\" srcset=\"https:\/\/jackharvest.com\/wp-content\/uploads\/2026\/05\/image-1.png 646w, https:\/\/jackharvest.com\/wp-content\/uploads\/2026\/05\/image-1-300x156.png 300w\" sizes=\"auto, (max-width: 646px) 100vw, 646px\" \/><\/figure>\n<\/figure>\n<\/div>\n<\/div>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>What It Does<\/strong><\/h2>\n\n\n\n<p>WhoTheHeckSentThis resolves sender avatars automatically, working through a priority list <strong>you<\/strong><br>&nbsp;control:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Address Book<\/strong> \u2014 if you&#8217;ve got a photo saved for a contact, it shows up. Fully local. No network required.<\/li>\n\n\n\n<li><strong>Gravatar<\/strong> \u2014 pulls public profile photos from gravatar.com. Opt-in, off by default.<\/li>\n\n\n\n<li><strong>DuckDuckGo Icons<\/strong> \u2014 company logos and domain icons via DuckDuckGo&#8217;s privacy-friendly CDN. Sends only the email domain. Off by default \u2014 the first-run setup screen recommends enabling this.<\/li>\n\n\n\n<li><strong>Google Favicon Service<\/strong> \u2014 a secondary fallback for domains DDG doesn&#8217;t have. Opt-in, off by default. It&#8217;s Google. You know the deal.<\/li>\n\n\n\n<li><strong>Generated Initials<\/strong> \u2014 if nothing else resolves, a clean color-coded initials avatar is generated entirely on your machine. Always last. Always there.<\/li>\n<\/ul>\n\n\n\n<p>Everything resolves once, then caches locally. For most senders you&#8217;ll never hit the network twice.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Features<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Zero<\/strong> <strong>setup<\/strong> \u2014 install and go. Avatars start appearing in your thread pane immediately.<\/li>\n\n\n\n<li><strong>Right-click to override<\/strong> \u2014 not satisfied with what got pulled automatically? Right-click any message \u2192 WhoTheHeckSentThis \u2192 Update Avatar Icon. Search the web, or upload an image directly.<\/li>\n\n\n\n<li><strong>Three badge styles<\/strong> \u2014 Peeking (rotated, tucked behind the message row), Corner, or Watermark. Pick the one that fits how you work. &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/li>\n\n\n\n<li><strong>Save to Address Book with avatar<\/strong> \u2014 one click saves the contact and embeds the resolved photo directly into the vCard. &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/li>\n\n\n\n<li><strong>Backup &amp; restore<\/strong> \u2014 export your custom avatars and settings to a JSON file. Import them back anytime, on any machine. &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/li>\n\n\n\n<li><strong>All density modes<\/strong> \u2014 Compact, Normal, and Touch (Relaxed) all render correctly.<\/li>\n\n\n\n<li><strong>Dark mode<\/strong> \u2014 settings follow your system preference.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Install<\/strong><\/h2>\n\n\n\n<p><strong>[Download on addons.thunderbird.net \u2192][ATN_PLACEHOLDER]<\/strong><\/p>\n\n\n\n<p>Requires Thunderbird 115.10.0 (Supernova) or later. Free. No account required.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Privacy &amp; Data Use<\/strong><\/h2>\n\n\n\n<p>Here is exactly what WhoTheHeckSentThis does and does not do with your data. No legalese \u2014 just the facts.<\/p>\n\n\n\n<p><strong>What never leaves your machine<\/strong>:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Your email content. The extension only ever sees a sender&#8217;s name and email address \u2014 never subject lines, message bodies, attachments, or anything else.<\/li>\n\n\n\n<li>Your address book data, beyond a lookup by the sender&#8217;s email address to find a matching photo.<\/li>\n\n\n\n<li>Generated initials avatars \u2014 computed locally from the sender&#8217;s name and email, never transmitted anywhere.<\/li>\n\n\n\n<li>Resolved avatars \u2014 once fetched, images are stored in your extension&#8217;s local storage on your own machine.<\/li>\n\n\n\n<li>The &#8216;full unrestricted access&#8217; warning is standard for any Thunderbird add-on that modifies the \u00a0\u00a0\u00a0\u00a0\u00a0<br>\u00a0message list UI \u2014 it&#8217;s the only API available for that.<br><\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>What may leave your machine<\/strong><\/h2>\n\n\n\n<p>This depends entirely on which sources you have enabled in Settings \u2192 Avatar Sources.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"744\" height=\"241\" src=\"https:\/\/jackharvest.com\/wp-content\/uploads\/2026\/05\/image.png\" alt=\"\" class=\"wp-image-680\" srcset=\"https:\/\/jackharvest.com\/wp-content\/uploads\/2026\/05\/image.png 744w, https:\/\/jackharvest.com\/wp-content\/uploads\/2026\/05\/image-300x97.png 300w\" sizes=\"auto, (max-width: 744px) 100vw, 744px\" \/><\/figure>\n\n\n\n<p><em><strong>A note on Gravatar:<\/strong> We send an MD5 hash rather than the raw email address. However, MD5 hashes of common email addresses can be reverse-looked up via publicly available rainbow tables. If that concerns you \u2014 leave Gravatar off. It&#8217;s off by default for exactly this reason.<\/em><\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>No analytics. No telemetry. No server.<\/strong><\/h2>\n\n\n\n<p>WhoTheHeckSentThis does not collect usage data, crash reports, or analytics of any kind. There is no server.  There is no account. Jack Harvest cannot see anything about how you use this extension \u2014 because the extension  never talks to Jack Harvest.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Going<\/strong> <strong>fully<\/strong> <strong>local<\/strong>?<\/h2>\n\n\n\n<p>Turn off all three external sources in Settings \u2192 Avatar Sources. With that done, the extension &nbsp;<br>&nbsp;runs entirely on your machine: Address Book photos and generated initials only. No network<br>&nbsp;requests are made.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Credits &amp; Open Source<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>MD5 Implementation<\/strong> by Joseph Myers (http:\/\/www.myersdaily.org\/joseph\/javascript\/md5-text.html) \u2014 bundled because Gravatar requires MD5 and the WebCrypto API doesn&#8217;t support it.<\/li>\n\n\n\n<li><strong>Gravatar<\/strong> \u2014 avatar lookup service by Automattic (https:\/\/gravatar.com)<\/li>\n\n\n\n<li><strong>DuckDuckGo<\/strong> \u2014 privacy-friendly icon CDN (https:\/\/duckduckgo.com)<\/li>\n\n\n\n<li><strong>Google Favicon Service<\/strong> \u2014 fallback favicon CDN (https:\/\/google.com)<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Support the Project<\/strong><\/h2>\n\n\n\n<p><mark style=\"background-color:var(--nv-dark-bg)\" class=\"has-inline-color has-nv-site-bg-color\">WhoTheHeckSentThis is free, and it&#8217;s staying that way.<\/mark><\/p>\n\n\n\n<p>If it&#8217;s saved you even five minutes of inbox squinting, buying Jack Harvest a coffee goes a long way:<\/p>\n\n\n\n<p><strong>[Support on Ko-fi \u2192][KOFI_PLACEHOLDER]<\/strong><\/p>\n\n\n\n<p>For bugs, feature requests, or &#8220;this broke on my specific weird setup&#8221; \u2014 file a report on the ATN listing page or track down Jack Harvest online.<\/p>\n\n\n\n<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;<\/p>\n\n\n\n<p>Thunderbird deserved better. Now it has it.<br><\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>You open Thunderbird. Your inbox is a wall of names. &#8220;David Chen&#8221; \u2014 which David? &#8220;Newsletter@somethingcorp.com&#8221; \u2014 the one you signed up for, or the one that found you? You scroll. You squint. You question your choices. WhoTheHeckSentThis puts a face \u2014 or at minimum a logo \u2014 next to every sender in your thread&hellip;&nbsp;<a href=\"https:\/\/jackharvest.com\/index.php\/2026\/05\/02\/whothehecksentthis-add-sender-pictures-to-thunderbird-mail-with-zero-setup\/\" rel=\"bookmark\">Read More &raquo;<span class=\"screen-reader-text\">WhoTheHeckSentThis &#8211; Add Sender Pictures to Thunderbird Mail with Zero Setup<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":679,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_seopress_robots_primary_cat":"none","_seopress_titles_title":"WhoTheHeckSentThis - Add Sender Pictures to Thunderbird Mail with Zero Setup","_seopress_titles_desc":"Your inbox is a wall of names. WhoTheHeckSentThis adds sender avatars to Thunderbird automatically \u2014 privacy-first defaults, local caching, zero setup.","_seopress_robots_index":"","neve_meta_sidebar":"","neve_meta_container":"","neve_meta_enable_content_width":"","neve_meta_content_width":0,"neve_meta_title_alignment":"","neve_meta_author_avatar":"","neve_post_elements_order":"","neve_meta_disable_header":"","neve_meta_disable_footer":"","neve_meta_disable_title":"","_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[73],"tags":[75,74],"class_list":["post-676","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-plugins","tag-plugin","tag-thunderbird"],"jetpack_featured_media_url":"https:\/\/jackharvest.com\/wp-content\/uploads\/2026\/05\/WhoTheHeckSentThis_Icon_Rounded_Final.png","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/jackharvest.com\/index.php\/wp-json\/wp\/v2\/posts\/676","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jackharvest.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/jackharvest.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/jackharvest.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/jackharvest.com\/index.php\/wp-json\/wp\/v2\/comments?post=676"}],"version-history":[{"count":4,"href":"https:\/\/jackharvest.com\/index.php\/wp-json\/wp\/v2\/posts\/676\/revisions"}],"predecessor-version":[{"id":691,"href":"https:\/\/jackharvest.com\/index.php\/wp-json\/wp\/v2\/posts\/676\/revisions\/691"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/jackharvest.com\/index.php\/wp-json\/wp\/v2\/media\/679"}],"wp:attachment":[{"href":"https:\/\/jackharvest.com\/index.php\/wp-json\/wp\/v2\/media?parent=676"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/jackharvest.com\/index.php\/wp-json\/wp\/v2\/categories?post=676"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/jackharvest.com\/index.php\/wp-json\/wp\/v2\/tags?post=676"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}