Vishwas Upponi1 downloadsModular and customisable sci-fi HUD widgets and dashboards for your notes.
[!NOTE] Safe & Non-Destructive: This plugin operates strictly in read-only mode. It never modifies, edits, alters, or writes to any of your existing notes in your vault (with the sole exception of the Live Session Tracker widget, which creates and updates session log notes only when you explicitly start or end a session).
Modular and customisable sci-fi HUD widgets and dashboards for your notes.
.js files standalone, provided you have the Dataview plugin installed (with "Enable JavaScript Queries" turned ON).hud-blocks release files (main.js, manifest.json, styles.css, catalog.json, and widgets/) from the Latest Release..obsidian/plugins/.hud-blocks and copy the downloaded files into it.In any markdown note, add a hud codeblock with widget: <id or alias>:
```hud
widget: activity-heatmap
```
You can also use the direct tag for any widget:
```hud-heatmap
```
Open the Command Palette (Ctrl+P or Cmd+P) and type:
HUD Blocks: Insert HUD Widget...
Select any widget from the fuzzy-search list to insert it at your cursor.
| # | Widget Name | Primary ID | Aliases | Direct Codeblock Tag |
|---|---|---|---|---|
| 01 | Quick Actions | quick-actions |
1 |
```hud-quick-actions |
| 02 | Live Session Tracker | live-session-tracker |
2 |
```hud-live-tracker |
| 03 | Vault Navigator | vault-navigator |
3 |
```hud-vault-navigator |
| 04 | Activity Heatmap | activity-heatmap |
4 |
```hud-heatmap |
| 05 | Vault Stats | vault-stats |
5 |
```hud-vault-stats |
| 06 | Metrics Dashboard | metrics-dashboard |
6 |
```hud-metrics |
| 07 | Activity Timeline | activity-timeline |
7 |
```hud-timeline |
| 08 | Completion Trends | completion-trends |
8 |
```hud-completion-trends |
profile: parameter to give each block an independent identity:### Daily Tasks
```hud
widget: quick-actions
profile: daily_shortcuts
```
### Project Actions
```hud
widget: quick-actions
profile: project_actions
```
[!TIP] Interactive In-Widget Settings (
⚙️): Every widget has a⚙️Settings button in its top-right corner. Because HUD Widget Blocks does not hardcode any personal folder or property names, all folder and YAML property fields start blank by default so you can connect them to your own vault structure in seconds.
| Widget | Requires YAML Frontmatter? | YAML Properties Used (Configured in ⚙️ Settings) |
|---|---|---|
| 01. Quick Actions | ❌ No | None — configured 100% visually in ⚙️ Settings |
| 02. Live Session Tracker | ✅ Yes (Auto-created) | Start Time, End Time, and Tracked Item properties |
| 03. Vault Navigator | ⚡ Optional | banner (strictly lowercase) for card cover images + optional YAML Filter |
| 04. Activity Heatmap | ❌ No | None — automatically reads file creation (ctime) & modification (mtime) dates |
| 05. Vault Stats | ✅ Yes (for grouping) | Base Properties (comma-separated YAML keys linking notes to .base files/categories) |
| 06. Metrics Dashboard | ✅ Yes | Start Time, End Time, Completion Date, and Year properties |
| 07. Activity Timeline | ✅ Yes | Start Time, End Time, and Item / Activity properties |
| 08. Completion Trends | ✅ Yes | Completion Date property (also detects /YYYY/ year subfolders) |
quick-actions)⚙️ icon in the widget header to add custom buttons, choose Emoji or Lucide icons, and link each button to:.base Files (opens any file in your vault)obsidian:// URIs)live-session-tracker)⚙️ Setup: Open ⚙️ Settings and fill in:Logs/Sessions)..base file).start-time)end-time)activity or project)⚙️ Settings.vault-navigator) — & Card Banner Image Previews⚙️ Settings drawer, switch between Manual Selection Mode (pin specific notes or .base files) and Recent Notes Mode (automatically show recently edited notes). You can also narrow down results using the YAML Filter (by property key & value) or Folder Filter.[!IMPORTANT] 🖼️ How to Show Banner Image Previews on Cards (No Banner Plugin Needed!)
You do NOT need the Banners plugin (or any other community plugin) installed to display cover images on Vault Navigator cards!
Simply add a YAML frontmatter property named
banner(strictly lowercasebanner, notBanner) to any linked note and point it to an image in your vault or a web URL:
---
banner: "[[my-cover-image.png]]"
# You can also use a relative vault path or an external web URL:
# banner: "Attachments/cover-image.jpg"
# banner: "https://example.com/banner.jpg"
---
activity-heatmap).md and .base files across your vault and plots daily activity intensity using file creation (ctime) and modification (mtime) dates.⚙️ Settings: Switch between Yearly and 365-Day Rolling views or pick color themes directly in the header. Open ⚙️ Settings to customize the Widget Heading (supports {MODE} token) or add Excluded Folders (comma-separated folders to ignore).vault-stats).base Files & Radar Distribution: Automatically discovers .base files in your vault (as well as notes with type: base in YAML) and displays a Vault Categories & Bases list on the left alongside an interactive Radar Distribution Chart & Recent Modifications feed on the right.⚙️ Setup for Note Grouping: Open ⚙️ Settings and configure:.base file or category (e.g. base, database, category, type). Notes without these properties are grouped under NOT LINKED TO BASE.OTHER BASES.metrics-dashboard)⚙️ Setup: Open ⚙️ Settings and configure its two data sources:activity-timeline)7D, 30D, 90D, ALL) and a per-activity hours breakdown.⚙️ Setup: Open ⚙️ Settings and enter your Sessions Folder, Start Time Property, End Time Property, and Item / Activity Property (matching the exact properties configured in Widget 02).completion-trends)⚙️ Setup: Open ⚙️ Settings and configure:Archive, Projects, Completed — or leave blank to scan the entire vault).completedDate, date-watched, finish-date in YYYY-MM-DD format).You never need to configure a profile name manually:
Dashboard.md, the widget automatically detects the note name.Dashboard..obsidian/HUD Config/<widget>--Dashboard.json.If you want Project A.md and Project B.md to share identical settings:
Project B.md.Project A from the Profile dropdown.Project B will now automatically mirror Project A!The plugin features a modular updater:
[ ⬆️ Update to vX.X.X ], or click [ ⚡ Update All ]..obsidian/plugins/hud-blocks/widgets/..obsidian/HUD Config/ and are never overwritten during widget updates.[!IMPORTANT]
- If you install the HUD Widget Blocks plugin: All 8 widgets work 100% natively out of the box — you do NOT need Dataview installed.
- If you do NOT install the HUD Widget Blocks plugin: None of the raw
.jswidget scripts can run in vanilla Obsidian on their own. You MUST install and enable the Dataview community plugin (with "Enable JavaScript Queries" turned ON) to run them.
To run any widget without installing the HUD Widget Blocks plugin:
widgets/ folder (e.g. 04 - Activity Heatmap.js).dataviewjs codeblock:```dataviewjs
// Paste widget code here
```
The widget UI, animations, and settings modal will function identically.
To build the plugin from source:
npm install
npm run build
This project is licensed under the MIT License.
Developed by Vishwas Upponi.