Obsidian Live Asset Dashboard
A highly dynamic, premium interactive portfolio dashboard script for Obsidian. Built with DataviewJS and Chart.js to track your total assets across various categories (Stocks, Cryptocurrencies, Commodities/Gold, Cash, and Property) with real-time price fetching and multilingual support.
⨠Key Features
- Real-Time Yahoo Finance API Integration: Fetch stock prices (US, KR), cryptocurrency rates (e.g., BTC, ETH), and gold/commodity prices automatically.
- Multilingual Support (i18n): One-click toggle between English and Korean UI.
- Multi-Currency & Conversion: Easily toggle display currency between USD and KRW using real-time exchange rates.
- Asset Categories with Dynamic Form Fields:
- Stock/ETF: Enter unit price and quantity. (Supports Korean stock tickers via 6-digit codes like
005930). - Crypto: Automatic USD-crypto price lookup.
- Commodity/Gold: Automatically converts Yahoo Finance ounce price (
GC=F) to gram unit price with customizable physical premium logic (15%). - Cash/Bank: Simple balance amount input (hides unit price).
- Property/Other: Total estimated property values (hides quantity).
- Stock/ETF: Enter unit price and quantity. (Supports Korean stock tickers via 6-digit codes like
- Interactive Visualizations: Beautiful, minimal trend charts and portfolio allocation pie charts using Chart.js.
- Drag-and-Drop Reordering: Rearrange assets intuitively by dragging rows.
- Obsidian Vault Local Persistence: Auto-saves a time-series snapshot directly to an
assets.jsonfile in your vault.
š Directory Structure
Repository Structure
This repository contains the following files:
obsidian-asset-dashboard/
āāā Dashboard.md # Sample entry note containing the DataviewJS block
āāā README.md # Documentation
āāā lib/
āāā chart.min.js # Chart.js library for offline rendering
āāā dashboard.js # Core dashboard renderer script
Obsidian Vault Structure (Default Configuration)
To run the dashboard in your vault, place the files in a folder named ģģ° (if you want to use a different folder name, you must modify the paths in Dashboard.md and lib/dashboard.js):
YourObsidianVault/
āāā Dashboard.md # Entry note containing DataviewJS
āāā ģģ°/
āāā lib/
ā āāā chart.min.js # Chart.js library
ā āāā dashboard.js # Core dashboard renderer script
āāā raw/
āāā assets.json # Auto-saved snapshots (Auto-generated)
š Installation Guide
Step 1: Install Required Plugin
Make sure you have the community plugin Dataview installed and enabled in your Obsidian settings:
- Open Obsidian Settings -> Community plugins.
- Click Browse and search for
Dataview. - Install and Enable the plugin.
- Go to Dataview plugin settings and ensure Enable DataviewJS is toggled ON.
Step 2: Place the Files
- Create a folder named
ģģ°in the root of your Obsidian vault. - Inside
ģģ°, create a folder namedlib. - Copy both
lib/dashboard.jsandlib/chart.min.jsfrom this repository into your vault'sģģ°/lib/folder. - Copy
Dashboard.mdfrom this repository to your vault. - (Note:
ģģ°/raw/assets.jsonwill be automatically generated upon your first dashboard load, so you do not need to create it manually).
The Dashboard.md should contain the following DataviewJS block:
```dataviewjs
try {
const code = await app.vault.adapter.read("ģģ°/lib/dashboard.js");
const func = new Function('dv', code);
func(dv);
} catch (e) {
dv.paragraph("ā Failed to load dashboard script: " + e.message);
}
```
Step 3: Open the Dashboard
Open Dashboard.md in your vault and enter Reading/Preview mode. You should see a gorgeous, interactive dashboard ready for use.
How to Install
- Download the dashboard markdown file from GitHub
- Drop it into your vault (anywhere)
- Install the Homepage plugin and point it at the file
- Enable any listed CSS snippets for the intended look
Stats
Stars
0
Forks
0
Last updated 1mo ago
Categories