Dashboard
Vault Dashboard
[!note] Requires the Dataview plugin Settings → Community plugins → turn off Restricted Mode → Browse → search "Dataview" → Install → Enable. Once enabled, every section below is live and re-renders each time you open this note.
Overview
const pages = dv.pages('-"Logs"');
dv.paragraph(`**${pages.length}** notes across the vault`);
const byFolder = {};
for (const p of pages) {
const folder = p.file.folder.split("/")[0] || "(root)";
byFolder[folder] = (byFolder[folder] || 0) + 1;
}
const rows = Object.entries(byFolder).sort((a, b) => b[1] - a[1]);
dv.table(["Folder", "Notes"], rows);
Latest Hermes Lint Findings
const log = dv.page("Logs/2026");
if (log) {
const lintItems = log.file.lists.filter(i => i.text.startsWith("[LINT]"));
const counts = {};
for (const item of lintItems) {
const match = item.text.match(/^\[LINT\]\s+([\w-]+):/);
if (match) counts[match[1]] = (counts[match[1]] || 0) + 1;
}
if (Object.keys(counts).length) {
dv.table(["Category", "Count"], Object.entries(counts));
} else {
dv.paragraph("No issues in the latest run.");
}
dv.paragraph("Full log: [[Logs/2026]]");
} else {
dv.paragraph("No Hermes log found yet.");
}
Scheduler Activity
const log = dv.page("Logs/2026");
if (log) {
const schedulerTags = ["VOCAB", "AIDIGEST"];
const counts = {};
for (const tag of schedulerTags) counts[tag] = 0;
for (const item of log.file.lists) {
const match = item.text.match(/^\[(\w+)\]/);
if (match && schedulerTags.includes(match[1])) counts[match[1]]++;
}
dv.table(["Scheduler", "Log entries"], Object.entries(counts));
dv.paragraph("Full log: [[Logs/2026]] — each cloud routine run appends one entry, tagged `[VOCAB]` (Weekend Vocab Scraper) or `[AIDIGEST]` (AI Digest Scraper), including quiet runs with nothing new.");
} else {
dv.paragraph("No log found yet.");
}
Orphaned Notes
Notes with no incoming or outgoing wikilinks — candidates for connecting into the graph.
TABLE file.folder AS "Folder"
FROM -"Logs"
WHERE length(file.inlinks) = 0 AND length(file.outlinks) = 0
SORT file.folder ASC
Recently Modified
TABLE file.mtime AS "Modified"
FROM -"Logs"
SORT file.mtime DESC
LIMIT 10
Project Manifests
TABLE file.mtime AS "Last updated"
FROM "Projects"
SORT file.mtime DESC