Skip to content

chen21019/MailMeld

Repository files navigation

MailMeld

English | 繁體中文 | 简体中文 | 日本語 | 한국어 | Deutsch | Français | Nederlands | Italiano

MailMeld is a Thunderbird add-on for email synchronization with diff comparison and smart filtering.

Features

  • Compare two folders and preview differences before syncing.
  • Sync only messages that are missing in the target folder.
  • Filter by date, sender, subject, content, size, and flags.
  • Resume interrupted syncs across restarts.
  • Multi-language UI with built-in locales.

Install (Development)

  1. Open Thunderbird 128+.
  2. Go to Tools -> Developer Tools -> Add-on Debugging.
  3. Click "Load Temporary Add-on" and select manifest.json.

Usage

  1. Choose a source account and folder.
  2. Choose a target account and folder.
  3. (Optional) Configure filters.
  4. Click Compare to review differences.
  5. Click Sync to copy missing messages.

Settings

  • Batch size and retry behavior.
  • Preserve read/flagged state on copy.
  • Auto-resume interrupted syncs.
  • Log verbosity and theme.

Project Structure

imap_sync/
├── manifest.json          # Extension manifest
├── _locales/              # Localization strings
│   ├── en/
│   ├── zh_TW/
│   ├── zh_CN/
│   ├── ja/
│   ├── ko/
│   ├── de/
│   ├── fr/
│   ├── nl/
│   └── it/
├── background/            # Background scripts
├── core/                  # Core engines
│   ├── diff-engine.js     # Folder diff
│   ├── sync-engine.js     # Sync engine
│   ├── state-manager.js   # Persisted state
│   ├── log-store.js       # Log storage
│   ├── logger.js          # Logger
│   ├── message-utils.js   # Message helpers
│   ├── ngram-extractor.js # Content indexing
│   ├── i18n.js            # i18n helper
│   ├── theme.js           # Theme manager
│   └── types.js           # Type definitions
├── popup/                 # Popup UI
├── options/               # Options UI
├── styles/                # Shared styles
│   ├── design-tokens.css
│   ├── components.css
│   ├── animations.css
│   └── tag-input.css
├── icons/                 # Extension icons
├── LICENSE                # License
└── README*.md             # Documentation

Privacy

MailMeld runs locally inside Thunderbird and does not send data to external services. All processing is done on-device using Thunderbird APIs.

Localization

Supported UI languages:

  • English
  • 繁體中文 (Traditional Chinese)
  • 简体中文 (Simplified Chinese)
  • 日本語 (Japanese)
  • 한국어 (Korean)
  • Deutsch (German)
  • Français (French)
  • Nederlands (Dutch)
  • Italiano (Italian)

Locale files live under _locales/. See the existing language files for message keys and formatting.

Author

Note: This project was built using Vibe Coding via Codex CLI (gpt-5.2-codex high). The goal is to provide better email sync/backup and hopefully benefit others. If you run into issues, please be patient and let me know. Thanks!

License

Mozilla Public License 2.0. See LICENSE.

About

MailMeld is a Thunderbird add-on for email synchronization across folders. Compare visually, sync only missing messages, and filter by date, sender, subject, content, size, or flags. Supports batch processing with auto-resume for interrupted operations. Multi-language UI. For email migration, backup, and folder sync.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors