Finalize vault: fix Bases syntax, add Quartz fields, improve template

Changes from Codex review:
- Bases: rename .md -> .base, fix filter to file.name == 'index.md',
  fix formula to now() (not date(now)), add proper views section with
  table view and column order, add displayName for properties
- Frontmatter: add 'description' (SEO/link previews) and 'draft' (publishing
  control) fields for Quartz compatibility
- Template: add '## Scope' section, add '## Related Research' section for
  explicit wikilinks between topics, use path-qualified wikilinks in detail
  files section to avoid ambiguous basenames across topics
- README: fix cross-vault wikilink claim (separate vaults can't resolve
  cross-vault links; Quartz can't publish outside its content tree),
  document draft field, clarify that tags don't create graph edges
This commit is contained in:
hermes 2026-07-29 11:28:38 +00:00
commit 681d926797
4 changed files with 61 additions and 52 deletions

View file

@ -25,7 +25,7 @@ Each research topic is a **directory** at the vault root with an `index.md` entr
```
- **Small topics**: just `index.md` alone in the directory.
- **Big topics**: split into detail files as they grow. Link them from `index.md` with `[[wikilinks]]`.
- **Big topics**: split into detail files as they grow. Link them from `index.md` with path-qualified wikilinks (e.g. `[[topic-slug/sources|Sources]]`) to avoid ambiguous basenames across topics.
- Detail file names are up to you — `sources`, `analysis`, `methodology`, `notes`, `summary`, `next-steps` are common patterns.
### Frontmatter (in `index.md`)
@ -33,15 +33,21 @@ Each research topic is a **directory** at the vault root with an `index.md` entr
```yaml
---
title: One-line summary
description: Short description for search results and link previews
status: exploring | active | concluded | shelved
category: market | technical | competitive | legal | scientific | exploratory
tags: []
draft: true
created: YYYY-MM-DD
updated: YYYY-MM-DD
origin: buzz://<channel-uuid>/<event-id>
---
```
- `description` — improves search results, link previews, RSS, and SEO when published via Quartz.
- `draft: true` — excludes the topic from the published site. Set `draft: false` when ready to publish.
- `created` / `updated` — Quartz recognizes these for date display and sorting.
### Categories
Categories are in frontmatter, not folders — every topic lives at the vault root.
@ -69,11 +75,13 @@ exploring → active → concluded
## Bases
Open `Research Base` (in `bases/research-base.md`) to see all topics as a filterable, sortable table — by status, category, tags, or date. Only `index.md` files appear; detail files are excluded via the `file.name.is("index")` filter.
Open `Research Base` (in `bases/research-base.base`) to see all topics as a filterable, sortable table — by status, category, tags, or date. Only `index.md` files appear; detail files are excluded via the `file.name == "index.md"` filter.
## Graph View
Wikilinks between detail files within a topic, and between topics via shared tags, create a knowledge graph visible in Obsidian's graph view. Cross-links to [[index|Idea Dump]] entries (e.g., research that feeds a product idea) work natively since both vaults live under the same Obsidian vault.
Wikilinks between detail files within a topic, and between topics, create a knowledge graph visible in Obsidian's graph view. Use path-qualified links (`[[topic-slug/sources|Sources]]`) to avoid ambiguous basenames. Tags make topics discoverable and filterable but do not themselves create graph edges — only links do.
Note: cross-vault wikilinks (e.g. to idea-dump entries) only work if both vaults are directories within the same Obsidian vault. If publishing via Quartz, links can only resolve within the same content tree — use public URLs for cross-site references.
## Publishing (Future)
@ -82,4 +90,4 @@ The vault is structured for eventual publication as a public knowledge base:
- **Quartz** (recommended) — free static site generator for Obsidian vaults. Preserves wikilinks, backlinks, graph view, and full-text search. Self-hostable via NixOS.
- **Obsidian Publish** — paid, simplest, but not self-hosted.
The `index.md` + wikilink structure means the published site will render as a connected knowledge graph, not a flat list of documents.
The `index.md` + wikilink structure means the published site will render as a connected knowledge graph, not a flat list of documents. The `draft` frontmatter field controls which topics are published.

31
bases/research-base.base Normal file
View file

@ -0,0 +1,31 @@
filters:
and:
- file.name == "index.md"
formulas:
age_days: '((now() - file.ctime) / 86400000).floor()'
properties:
title:
displayName: Title
status:
displayName: Status
category:
displayName: Category
tags:
displayName: Tags
created:
displayName: Created
updated:
displayName: Updated
formula.age_days:
displayName: Age
views:
- type: table
name: Research
order:
- title
- status
- category
- tags
- created
- updated
- formula.age_days

View file

@ -1,40 +0,0 @@
---
filters:
and:
- file.name.is("index")
formulas:
age_days: 'date(now) - file.ctime'
properties:
status:
input: select
options:
- exploring
- active
- concluded
- shelved
category:
input: select
options:
- market
- technical
- competitive
- legal
- scientific
- exploratory
tags:
input: tags
created:
input: date
updated:
input: date
origin:
input: text
---
# Research Base
All research topics, filterable by status, category, tags, and date. Detail files are excluded — only `index.md` per topic directory appears here.
| Title | Status | Category | Tags | Created | Updated |
|-------|--------|----------|------|---------|---------|
| {{title}} | {{status}} | {{category}} | {{tags}} | {{created}} | {{updated}} |

View file

@ -1,8 +1,10 @@
---
title:
description:
status: exploring
category:
tags: []
draft: true
created: {{date:YYYY-MM-DD}}
updated: {{date:YYYY-MM-DD}}
origin:
@ -18,6 +20,10 @@ One or two sentences on what this research investigates.
What specific question are we trying to answer?
## Scope
What is included, excluded, and what would count as a sufficient answer?
## Key Findings
-
@ -30,17 +36,21 @@ Key references, links, and data sources. For a full list, see [[sources]] if the
## Detail Files
Optional — create these only when research grows and you want to modularize:
Optional — create these only when research grows and you want to modularize. Use path-qualified links to avoid ambiguous basenames across topics:
- [[sources]] — links, references, data sources, API docs
- [[analysis]] — deep analysis, findings, comparisons
- [[methodology]] — how the research was conducted, tools used
- [[notes]] — working notes, raw observations, intermediate results
- [[summary]] — final synthesis (when concluded)
- [[next-steps]] — follow-up questions, gaps, future research
- [[topic-slug/sources|Sources]] — links, references, data sources, API docs
- [[topic-slug/analysis|Analysis]] — deep analysis, findings, comparisons
- [[topic-slug/methodology|Methodology]] — how the research was conducted, tools used
- [[topic-slug/notes|Notes]] — working notes, raw observations, intermediate results
- [[topic-slug/summary|Summary]] — final synthesis (when concluded)
- [[topic-slug/next-steps|Next Steps]] — follow-up questions, gaps, future research
For small topics, keep everything in `index.md` and delete this section.
## Related Research
-
## Discussion
Notes from the Buzz channel discussion. Link back to the thread with the origin URL.
@ -51,4 +61,4 @@ Notes from the Buzz channel discussion. Link back to the thread with the origin
## Conclusion
What did we find? (concluded / shelved — update the frontmatter status too)
What did we find? (concluded / shelved — update the frontmatter status and set `draft: false` if publishing)