EML Email Viewer

by Viggo Meesters
5
4
3
2
1
New Plugin

Description

This plugin has not been manually reviewed by Obsidian staff. Open .eml files locally with headers, safe body previews, attachment metadata, and raw MIME source.

Reviews

No reviews yet.

Stats

stars
downloads
0
forks
0
days
NaN
days
NaN
days
0
total PRs
0
open PRs
0
closed PRs
0
merged PRs
0
total issues
0
open issues
0
closed issues
0
commits

Latest Version

Invalid date

Changelog

README file from

Github

EML Email Viewer

EML Email Viewer is a read-only Obsidian plugin for opening local .eml files directly from the file explorer. It shows a header summary, plain text and sanitized HTML previews, attachment metadata, raw MIME source, parse warnings, search, and refresh.

EML Email Viewer preview

Features

  • Registers .eml files with a dedicated Obsidian file view.
  • Parses From, To, Cc, Bcc, Subject, Date, Message-ID, In-Reply-To, and References.
  • Shows body tabs for Text, sanitized HTML, and Raw MIME.
  • Lists attachments as metadata only: filename, content type, size when available, and disposition.
  • Searches across headers, body text, sanitized HTML text, and attachment names.
  • Shows MIME parse warnings while keeping raw source available.
  • Applies render caps for large mail bodies and source previews.
  • Keeps the viewer read-only: it never edits .eml files.

Privacy and security model

Email HTML frequently contains tracking pixels, remote images, scripts, styles, forms, and external links. EML Email Viewer blocks those in v0.1:

  • no mailbox sync
  • no IMAP or SMTP
  • no sending, reply, forward, archive, or import workflow
  • no remote image loading
  • no scripts, external styles, forms, or active URL attributes in HTML preview
  • no mail client launch
  • no attachment opening
  • no clipboard access
  • no plugin network APIs
  • no .eml write-back
  • no vault interaction-note creation

The Raw MIME tab remains available even when parsing is incomplete.

Email Reader overlap

The existing community plugin Email Reader renders embedded .eml files in preview mode. EML Email Viewer is positioned differently: it is a dedicated file-open viewer from Obsidian's file explorer with structured headers, body tabs, attachment metadata, raw MIME fallback, search, and explicit privacy controls.

Installation

Community plugin directory

EML Email Viewer is ready for submission to the Obsidian Community plugin directory. Once accepted, it can be installed from Settings -> Community plugins -> Browse inside Obsidian.

Manual installation:

  1. Download main.js, manifest.json, and styles.css from a release.
  2. Create .obsidian/plugins/eml-email-viewer/ in your vault.
  3. Place those three files in that folder.
  4. Reload Obsidian.
  5. Enable EML Email Viewer in Settings -> Community plugins.

BRAT installation

For beta testing, install the plugin with BRAT using this repository URL:

https://github.com/viggomeesters/obsidian-eml-email-viewer

Usage

Open any .eml file in your vault. Obsidian will open it with EML Email Viewer.

Use the toolbar to:

  • search headers, body text, sanitized HTML text, and attachment names
  • switch between Text, HTML, and Raw MIME
  • refresh the file after local changes

Attachments are intentionally metadata-only in v0.1.

Development

npm install
npm run build
npx tsc --noEmit
npm test

For local testing, copy or symlink this repository into .obsidian/plugins/eml-email-viewer/ inside a test vault.

Release process

Obsidian installs community plugin files from GitHub releases. For each release:

  1. Update manifest.json, package.json, and versions.json.
  2. Run npm install, npm run build, npx tsc --noEmit, and npm test.
  3. Create a GitHub release whose tag exactly matches manifest.json.version.
  4. Attach main.js, manifest.json, and styles.css.

The source repository intentionally does not track main.js; it is built and attached as a release asset.

The repository includes a GitHub Actions release workflow with artifact attestation support. If GitHub Actions is disabled for the owner account, manual releases are still usable for Obsidian, but the Community automated review may show a recommendation about missing artifact attestations.

Community directory submission

The repository is prepared for Obsidian Community plugin submission. The remaining submission step must be completed by the repository owner because it requires signing in, linking GitHub, and confirming the developer policies/support commitment.

Submit this repository URL:

https://github.com/viggomeesters/obsidian-eml-email-viewer

The current release is ready for review when:

  • root README.md, LICENSE, and manifest.json exist
  • manifest.json.id is eml-email-viewer
  • manifest.json.version is 0.1.1
  • GitHub release 0.1.1 exists
  • release assets include main.js, manifest.json, and styles.css
  • versions.json maps supported Obsidian versions

Official references:

License

MIT