HTML Docs

by Sam
5
4
3
2
1
Score: 35/100

Description

This plugin has not been manually reviewed by Obsidian staff. A minimal zero-depenedency plugin to work with .md AND .html docs in your vault

Reviews

No reviews yet.

Stats

stars
downloads
0
forks
1
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

HTML Docs Obsidian Plugin

A zero-dependency minimal plugin to enable .html docs inside Obsidian. Inspired by Thariq's "unreasonable effectiveness of HTML".

  • HTML is rendered in a sandboxed <iframe>, and works across tabs, embeds (![[doc.html]]), and Canvas.
  • JS can run inside the HTML for interactivity but the iframe is isolated from your other notes and Obsidian's own data.
  • No other bells and whistles.

The plugin maintains a small TypeScript surface, no runtime dependencies, and cli-driven E2E tests.

Demo

A demo page (test/fixture.html) demonstrates all the passing HTML features.

Installation

Note: Obsidian only shows .md files in your file explorer, by default. To see your .html files too, be sure to enable: Settings → Files & links → Show all file types

Install from Obsidian directly

Install manually

  1. Download main.js, manifest.json, and styles.css from the latest release
  2. Place those files into <vault>/.obsidian/plugins/html-docs/.
  3. Enable HTML Docs in Obsidian's Community Plugins settings.

Releases are built and signed by GitHub Actions (.github/workflows/release.yml) so the binaries carry a build attestation you can verify against the source.

Build and install from source

git clone https://github.com/smcllns/obsidian-plugin-html-docs/
npm install
npm run dev      # watch + rebuild
npm run build    # production bundle at `dist/html-docs/`

Test

An E2E test runner validates features, embeds, Canvas cards, and sandboxing are working correctly. Requires obsidian-cli, Obsidian running with a vault open, the plugin installed and enabled, and jq available.

npm test
npm run release:check

npm run release:check runs the production build, the official Obsidian plugin lint rules, and the E2E test. The E2E script builds the current plugin, copies it into the active vault's plugin folder, reloads it, copies test/fixture.html into the vault temporarily, opens it in Obsidian, verifies the tab view plus markdown and Canvas embeds, collects the iframe’s own self-test results via postMessage, then cleans up.

See test/fixture.html for the full list of features exercised — and the inline notes for what is intentionally blocked.

Obsidian Official Resources

Feedback / Support

This plugin will stay simple and do this one thing well.

File issues here, or message me on X: @smcllns.

If you want more features, please fork and customize as you need.