gyula-coder23 downloadsTreat local HTML project folders as single interactive documents, with full-text search and live refresh.
Turn a local HTML project folder into one interactive document in Obsidian.
Generated lessons, reports and small interactive projects often arrive as index.html plus scripts, styles and assets. HTML Coursebook keeps those files together on disk while presenting their folder as one clickable document in the native Files pane.
Your vault/
└── Motion lab/ ← one document in the Files pane
├── index.html ← opens when you click Motion lab
├── styles.css
├── app.js
└── assets/
No conversion, packing, local server or Web Viewer core plugin is required for self-contained HTML projects.
index.html or index.htm.The community listing is public. As of November 9, 2026, the plugin is still absent from the installation registry used by Obsidian 1.15.0, so searching the in-app community browser returns no result. Use manual installation below until the registry includes it. A public listing alone does not confirm in-app availability.
Manual installation:
Download main.js, manifest.json and styles.css from the latest GitHub release, or build them from source. Place the three files in:
<vault>/.obsidian/plugins/html-coursebook/
Reload Obsidian and enable HTML Coursebook under Settings → Community plugins. You do not need to enable “Show all file types.”
Minimum Obsidian version: 1.15.0. Desktop only. Manually tested on macOS; Windows and Linux have not yet been manually verified.
In Settings → HTML Coursebook, toggle live refresh or exclude specific vault-relative folder paths. Each exclusion also covers its descendants.
index.html takes precedence over index.htm. An index inside an already recognized course stays part of that course. Hidden folders and node_modules do not become courses.
HTML Coursebook focuses on automatic HTML-folder recognition, a single row in the native Files pane, and interactive reading. The source files remain ordinary files. Native folder operations still act on the entire folder.
Related projects include Local HTML View for opening HTML files, HTML Shelf for a separate HTML library, File Bundles for declared file dependencies, and NestNote for Markdown document folders. This project does not claim to be the first HTML reader or document-bundle plugin.
file:// URLs and can reference resources outside their own folder or outside the vault, subject to Chromium's normal file security. The plugin does not enforce a resource boundary around a course. The system-file-manager action reveals a course folder, and the browser action opens its entry file.Node.js 24 or later is required for development and the native TypeScript tests.
npm ci
npm run validate
Validation runs the official Obsidian ESLint rules, type checking, domain tests, a production build and release-metadata checks. The runtime has no bundled npm dependencies; Obsidian and Electron APIs are supplied by the desktop app.
src/core.ts contains discovery, path and search logic. src/main.ts contains the Files-pane adapter, settings and reader. Source files are not rewritten during reading. The public demo under demo/ contains only synthetic content.
The GitHub Actions configuration checks the build on Linux, macOS and Windows. All three CI platforms have passed validation; this checks the build and tests, not the desktop UI on those systems. An exact semantic version tag such as 0.1.2 triggers release creation with the three installation assets. See publishing notes.
MIT. This is an independent community plugin and is not an official Obsidian product.