Jörg Lortz333 downloadsInteractive family trees, org charts and timelines from YAML frontmatter — with avatars, inline editing and multiple view modes

Requirements: Obsidian 1.7.0 or later · Desktop and Mobile · No external dependencies
An interactive family tree, org chart and timeline viewer for Obsidian. All data lives in your vault as plain Markdown notes with YAML frontmatter — no external services, no proprietary formats, no telemetry.

| Tree mode | Inline editing |
|---|---|
![]() |
![]() |
| List mode + photo upload | Timeline mode |
|---|---|
![]() |
![]() |
Search for "People Tree" in Obsidian → Settings → Community plugins.
main.js, manifest.json and styles.css from the latest release..obsidian/plugins/people-tree/.Safe to install on existing vaults. The plugin never overwrites or deletes existing notes. It only reads notes with
type: personin their frontmatter and writes to notes you explicitly interact with.
When no person notes exist yet you see two buttons:
+ Create first person — creates a blank note, opens it as a card with the name field focused so you can start typing immediately🎭 Create sample family — generates 8 pre-filled demo contacts (3 generations, including dates, jobs, cities, emails) so you can explore all features right away1. Toolbar button — Click + Person at the top. A dialog opens where you enter a name and optional birth date. The note is created and linked automatically.
2. From within a person — Expand any card with ▼ and click the + button next to Parents or Children. This creates or links the person and updates both notes bidirectionally.
3. Drag from file explorer — Drag any Markdown note from Obsidian's left sidebar directly onto the tree canvas. The plugin adds type: person to its frontmatter and the note appears as a card immediately.
4. Manually — Create a Markdown note anywhere in your vault with type: person in the frontmatter:
---
type: person
name: Jane Doe
born: 15.03.1970
died:
avatar: People/Photos/jane.jpg
parents:
- John Doe
- Mary Doe
spouse: Bob Smith
children:
- Alice Smith
---
| Action | What happens |
|---|---|
| ⊖ Remove from tree | Note stays in your vault; type: person is hidden internally. The 👤 icon in the file explorer dims. You can re-add the person via + Person → chips shown at the top. |
| 🗑 Delete note | Note is permanently moved to trash. A confirmation dialog is shown first. |
| Field | Required | Description |
|---|---|---|
type: person |
Yes | Marks the note as a person. Without this the note is ignored. |
name |
No | Display name. Defaults to the file name if omitted. Renaming the name field also renames the file. |
born |
No | Birth date (any format). Used to place nodes on the Timeline axis. |
died |
No | Death date. |
avatar |
No | Vault-relative path to an image file. |
parents |
No | List of parent names. Draws parent → child connection lines. |
spouse |
No | Name of spouse/partner. Draws a line between the two nodes. |
children |
No | List of children's names. |
| any other field | No | Shown in the expanded detail panel; editable inline. |
Open Settings → People Tree:
| Setting | Default | Description |
|---|---|---|
| Photos folder | Attachments/Photos |
Vault-relative folder where uploaded photos are saved. |
| Person notes folder | People |
Limit person scan to this folder. Leave empty to search the whole vault. |
Classic top-down family tree with smooth Bézier curves connecting parents to children.
Same layout as Tree, but connections use right-angle elbow lines — useful for hierarchical org structures.
Nodes are positioned horizontally by birth year. Useful for spotting generational overlaps. Requires born fields with a 4-digit year.
Searchable, sortable table of all persons. Click any column header to sort. Click a cell to edit the value inline.
In List mode: click the 📷 button at the end of any row.
In Tree / Org Chart / Timeline: expand a node with ▼, then click 📷 next to the "Photo" field.
A dialog opens with three options:
The uploaded photo is saved to the configured Photos folder and the avatar path is written to the frontmatter automatically.
Enter to save, Esc to cancel..md file automatically.| # | Issue | Status |
|---|---|---|
| 1 | Long field values are truncated in tree nodes (hover to reveal full text). | partial fix |
| 2 | Timeline mode requires at least 2 persons with a 4-digit year in born. |
by design |
| 3 | No mobile-optimised touch controls for zoom/pan yet. | todo |
type: person are included..obsidian/plugins/people-tree/data.json, not in the notes themselves — your frontmatter stays clean.| Obsidian | 1.7.0 or later |
| Platform | Desktop (Windows, macOS, Linux) and Mobile (iOS, Android) |
| Dependencies | None — fully self-contained |
The plugin uses only the official Obsidian API (metadataCache, fileManager.processFrontMatter, vault.createBinary, fileManager.renameFile). No npm packages are bundled at runtime.
git clone https://github.com/juppinger0/obsidian-people-tree
cd obsidian-people-tree
npm install
npm run build # production build → main.js
Copy main.js, manifest.json and styles.css to .obsidian/plugins/people-tree/ in your vault and reload the plugin in Obsidian.
MIT — © Jörg Lortz