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. - **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. - Detail file names are up to you — `sources`, `analysis`, `methodology`, `notes`, `summary`, `next-steps` are common patterns.
### Frontmatter (in `index.md`) ### Frontmatter (in `index.md`)
@ -33,15 +33,21 @@ Each research topic is a **directory** at the vault root with an `index.md` entr
```yaml ```yaml
--- ---
title: One-line summary title: One-line summary
description: Short description for search results and link previews
status: exploring | active | concluded | shelved status: exploring | active | concluded | shelved
category: market | technical | competitive | legal | scientific | exploratory category: market | technical | competitive | legal | scientific | exploratory
tags: [] tags: []
draft: true
created: YYYY-MM-DD created: YYYY-MM-DD
updated: YYYY-MM-DD updated: YYYY-MM-DD
origin: buzz://<channel-uuid>/<event-id> 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
Categories are in frontmatter, not folders — every topic lives at the vault root. Categories are in frontmatter, not folders — every topic lives at the vault root.
@ -69,11 +75,13 @@ exploring → active → concluded
## Bases ## 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 ## 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) ## 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. - **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. - **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: title:
description:
status: exploring status: exploring
category: category:
tags: [] tags: []
draft: true
created: {{date:YYYY-MM-DD}} created: {{date:YYYY-MM-DD}}
updated: {{date:YYYY-MM-DD}} updated: {{date:YYYY-MM-DD}}
origin: origin:
@ -18,6 +20,10 @@ One or two sentences on what this research investigates.
What specific question are we trying to answer? What specific question are we trying to answer?
## Scope
What is included, excluded, and what would count as a sufficient answer?
## Key Findings ## Key Findings
- -
@ -30,17 +36,21 @@ Key references, links, and data sources. For a full list, see [[sources]] if the
## Detail Files ## 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 - [[topic-slug/sources|Sources]] — links, references, data sources, API docs
- [[analysis]] — deep analysis, findings, comparisons - [[topic-slug/analysis|Analysis]] — deep analysis, findings, comparisons
- [[methodology]] — how the research was conducted, tools used - [[topic-slug/methodology|Methodology]] — how the research was conducted, tools used
- [[notes]] — working notes, raw observations, intermediate results - [[topic-slug/notes|Notes]] — working notes, raw observations, intermediate results
- [[summary]] — final synthesis (when concluded) - [[topic-slug/summary|Summary]] — final synthesis (when concluded)
- [[next-steps]] — follow-up questions, gaps, future research - [[topic-slug/next-steps|Next Steps]] — follow-up questions, gaps, future research
For small topics, keep everything in `index.md` and delete this section. For small topics, keep everything in `index.md` and delete this section.
## Related Research
-
## Discussion ## Discussion
Notes from the Buzz channel discussion. Link back to the thread with the origin URL. 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 ## 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)