Backup, Restore & Security
Backup, Restore & Data Security
DodaMail is designed with complete local data sovereignty. You own your email database, configuration, and credentials. Unlike cloud clients that store your archive on remote proprietary servers, DodaMail provides comprehensive local backup, restore, and cryptographic security capabilities.
1. The Full Backup Engine (backup.ts)
Navigate to Settings -> Data & Storage to access the backup and restore tools.
Control-by-Control Breakdown of Data Tools
| Control Name | Control Type | Description & Purpose |
|---|---|---|
| “Create Full Backup (.dodabak)” | Primary Action Button | Compiles your complete local SQLite database (including threads, messages, attachments, folders, full-text search indexes) together with all local configurations (signatures, templates, snippets, rules, private notes) into a single timestamped archive: dodamail_backup_YYYY-MM-DD.dodabak. |
| “Export Configuration Only (.json)” | Secondary Action Button | Generates a lightweight JSON export containing your custom rules, signatures, snippets, and interface preferences. Ideal for setting up a secondary machine without transferring gigabytes of message history. |
| “Restore from Backup” | Action Button | Opens the system file selector to import a previously saved .dodabak or .json file. |
| Backup Integrity Verification | Checkbox / Validator | Automatically computes SHA-256 checksums and checks SQLite database integrity before committing any restore operation. |
| “Purge All Local Data & Reset” | Danger Button (Red) | Wipes all local SQLite tables, clears cached messages, deletes credentials from the keyring, and resets DodaMail to its initial out-of-the-box state. |
2. Restoring from a Backup Archive
When you click Restore from Backup:
- Select your
.dodabakor.jsonfile from the file explorer. - DodaMail decompresses the archive into an isolated staging buffer and verifies that:
- The archive version matches or is cleanly migratable to the current schema.
- The SQLite database header and table indexes are uncorrupted.
- The Restore Confirmation Modal displays:
[ WARNING: Restore Data Archive ] Restoring will replace all current local data with the contents of: dodamail_backup_2026-10-15.dodabak (Size: 420 MB) Existing accounts and messages will be overwritten. [ Cancel ] [ Confirm & Restore ] - Clicking Confirm & Restore replaces the active database and immediately triggers a seamless hot-reload of the DodaMail interface.
3. The Purge & Factory Reset Safeguard
To prevent catastrophic accidental data deletion:
- Clicking Purge All Local Data & Reset opens a security modal requiring you to manually type the confirmation phrase:
RESET-ALL. - The “Permanently Wipe Everything” button remains disabled until the exact string is matched.
- Remote server messages are unaffected; this operation purges only the local workstation’s SQLite database and cached files.
4. Operating System Credential Vault Integration
DodaMail never writes plaintext passwords to configuration files, disk logs, or unencrypted tables. All server passwords, OAuth tokens, and secret keys are delegated directly to the native OS keyring:
+-------------------------------------------------------------------------+
| OPERATING SYSTEM CREDENTIAL VAULT |
| |
| * Linux: GNOME Keyring / FreeDesktop Secret Service via libsecret |
| * Windows: Windows Credential Manager (CredWrite / CredRead API) |
| * macOS: Apple Keychain Services (SecItemAdd / SecItemCopyMatching) |
+-------------------------------------------------------------------------+Security Benefits
- Zero Plaintext Footprint: Even if an unauthorized party gains access to your
.sqlitefile, they cannot extract your email account passwords. - Biometric & OS Authentication: Unlocking credentials leverages your existing OS login password, Windows Hello (Fingerprint/PIN), or Touch ID on macOS.
- Sandboxed Process Isolation: Each operating system enforces strict inter-process access controls around vault secrets.
5. Local Data Paths & File Structure
DodaMail stores all application data in standardized system directories:
| Operating System | Default Storage Directory |
|---|---|
| Linux | ~/.local/share/dodamail/ |
| Windows | %APPDATA%\dodamail\ (e.g., C:\Users\Username\AppData\Roaming\dodamail\) |
| macOS | ~/Library/Application Support/dodamail/ |
Key Files in the Data Directory
dodamail.db: The primary SQLite database containing folders, threads, metadata, notes, and rules.dodamail.db-wal&dodamail.db-shm: SQLite Write-Ahead Logging journals for ACID transaction safety.attachments/: Locally cached attachment files and thumbnail previews.config.json: Local UI state, window coordinates, and active theme preferences.
6. Retention & Auto-Cleanup Policies
To ensure your local drive does not fill up with obsolete junk, navigate to Settings -> Data & Storage -> Retention Policies:
| Retention Setting | Options Available | Default | Description |
|---|---|---|---|
| Auto-empty Trash | After 14 DaysAfter 30 DaysAfter 60 DaysNever |
After 30 Days |
Automatically purges deleted messages from the Trash folder and syncs deletion with the IMAP server. |
| Auto-empty Spam | After 14 DaysAfter 30 DaysAfter 60 DaysNever |
After 14 Days |
Permanently deletes spam emails older than the specified duration. |
| Attachment Cache Limit | 1 GB5 GB10 GBUnlimited |
5 GB |
Sets the maximum disk quota for cached attachments. When reached, oldest unopened attachments are cleared while preserving headers and text. |