# Vault Schema
> [!abstract] What this note is
> The blueprint for this vault. If this vault were lost, a person (or an AI) could rebuild it from this one note. When the structure changes, change this note too.
## The idea
This vault is a **bullet journal with a reference library attached**. Two activities, two homes:
- **Writing happens in `journal/`** — one note per day, plus one running log per year.
- **Keeping happens in `reference/`** — anything worth finding again, filed by topic.
Everything else supports those two.
## Folder map
```
vault/
├── journal/ ← daily writing (the engine room)
│ ├── 2026/
│ │ ├── 07_July/ ← one folder per month
│ │ │ └── 2026-07-10 Friday.md
│ │ └── Yearly Log.md ← one-line-per-event running log
│ ├── Index/ ← maps of content: one index note per year
│ └── z_Archives/ ← finished years move here ("z_" sorts it last)
├── reference/ ← evergreen notes, filed by topic
│ ├── Obsidian/ ← notes about this system itself (you are here)
│ ├── Markdown/
│ └── <Topic>/ ← add topics as needed; prefer broad over narrow
├── clippings/ ← saved web articles (Obsidian Web Clipper)
├── templates/ ← Templater templates
├── images/ ← attachments
├── .claude/ ← Claude Code project: skills + scripts (see [[Claude Code Integration]])
├── .github/ ← automation: vault linting on every push
└── CLAUDE.md ← Claude Code's orientation file — a condensed copy of this note
```
## Naming rules
| Thing | Pattern | Example | Why |
|---|---|---|---|
| Daily note | `YYYY-MM-DD dddd` | `2026-07-10 Friday.md` | Sorts by date; weekday readable at a glance |
| Month folder | `MM_MMMM` | `07_July` | Number sorts, name reads |
| Year folder | `YYYY` | `2026` | — |
| Index note | `Journal Index — YYYY` | `Journal Index — 2026` | — |
| Archive folder | `z_` prefix | `z_Archives` | Sinks to the bottom of the file list |
## Frontmatter schema
**Daily note** (created automatically by the template):
```yaml
previous: '[[2026-07-09 Thursday]]' # yesterday, as a link
next: '[[2026-07-11 Saturday]]' # tomorrow, as a link
created: 2026-07-10 06:30 # timestamp the note was made
week: 'W28' # ISO week number
tags: [☀️] # ☀️ marks daily notes
resources: # links/URLs used that day
stakeholders: # people involved that day
```
**Yearly Log:** `tags: [yearly-log]` · **Index notes:** `tags: [index]` · **This note:** `tags: [schema, meta]`
## Configuration inventory
Obsidian keeps all machine settings in the hidden `.obsidian/` folder at the vault root. The ones that define this system:
| File | Controls | Key values here |
|---|---|---|
| `.obsidian/daily-notes.json` | Daily Notes core plugin | folder `journal`, format `YYYY/MM_MMMM/YYYY-MM-DD dddd`, template `templates/Daily Notes Template` |
| `.obsidian/community-plugins.json` | Which community plugins are enabled | `templater-obsidian` |
| `.obsidian/plugins/templater-obsidian/data.json` | Templater settings | see [[Templater Setup]] |
| `.obsidian/app.json` | Editor behavior | `alwaysUpdateLinks: true` |
> [!warning] Settings ≠ notes
> Obsidian only reads these files at startup. Editing them by hand (or by AI) requires an app reload to take effect — and the files are JSON, where a stray comma breaks everything. Prefer changing settings through the app UI; treat direct edits as surgery.
## Rebuilding from zero
1. Create an empty folder; open it as a vault in Obsidian.
2. Create the folder map above (only `journal/` and `templates/` are required on day one).
3. Install the **Templater** community plugin.
4. Copy in `templates/Daily Notes Template.md`.
5. Configure Daily Notes + Templater per the table above (or follow [[Templater Setup]]).
6. Reload Obsidian. Click the "Open today's daily note" ribbon icon. If the note appears with real dates (not raw `undefined` code), the system is alive.
7. `git init`, commit, and push — the vault is plain text; version control is its safety net.
## Related
- [[Templater Setup]] — the template engine's configuration, explained
- [[How To Get Started]] — beginner's introduction to Obsidian
- [[Organize Daily Notes]] — the thinking behind the journal layout
- [[Claude Code Integration]] — how the vault doubles as a Claude Code project