Canvas Roots plugin: Genealogical Family Trees for Obsidian

Canvas Roots transforms your Obsidian vault into a powerful genealogy workspace. Import GEDCOM files, manage relationships through native Canvas visualizations, and export back to standard formats—all while keeping your research notes linked and accessible.

Core Features

  • Native Canvas integration - Trees built from file nodes, every person links to research notes
  • GEDCOM import/export - Full round-trip support with UUID preservation
  • Automated layout - Four algorithms (Standard, Compact, Timeline, Hourglass) for different visualization needs
  • Interactive preview - Pan, zoom, and verify layouts before generating canvases
  • Bidirectional sync - Relationship changes automatically update both sides
  • Obsidian Bases compatible - Bulk data management with pre-configured views
  • Multiple spouse support - Track complex marital histories with marriage metadata

Who’s This For?

  • Genealogists: GEDCOM workflow, relationship tracking, research organization
  • Historians: Document family networks and dynasties
  • World-builders: Fantasy lineages, political marriages, succession tracking

Get Started

Install via BRAT: https://github.com/banisterious/obsidian-canvas-roots

Documentation: User Guide | Roadmap

Feedback Welcome

Canvas Roots is in beta—core features are stable and production-ready. I’m particularly interested in hearing from:

  • Genealogists: Missing workflows or GEDCOM compatibility issues?
  • World-builders: What dynasty/faction features would help your projects?
  • General users: Workflow pain points or confusing UI?

GitHub Issues | Demo Video

8 Likes

Features Added Since Beta

v0.5.0 - Canvas Navigation & Organization

  • Split Canvas Wizard - Break large trees into manageable canvases with 6 split methods (generation, branch, lineage, collection, ancestor-descendant, surname)
  • Surname extraction - Extract people by surname even without established family connections

v0.4.0 - Import Cleanup & Merge Tools

  • Staging workflow - Safe import processing with isolated staging folder
  • Merge wizard - Field-level conflict resolution when combining duplicate records
  • Data quality tools - Quality scoring, issue detection, and batch normalization

v0.3.0 - Interactive Family Chart

  • Family chart view - Pan, zoom, and edit relationships in real-time with bidirectional sync
  • PDF/PNG/SVG export - High-quality exports with customizable filenames

v0.2.x - Core Features

  • GEDCOM & CSV import/export - Full round-trip support with selective branch export
  • Layout algorithms - Standard, Compact, Timeline, and Hourglass layouts
  • Relationship calculator - Find connections between any two people
  • Reference numbering - Ahnentafel, d’Aboville, Henry, and generation systems
  • Smart duplicate detection - Fuzzy matching to find potential duplicates
  • Collections & groups - Organize people and filter tree generation
  • Per-canvas styling - Customize individual canvases with style overrides
  • Bidirectional relationship sync - Automatic reciprocal link maintenance

Changed title to replace version number with “plugin”.

1 Like

More updates!

v0.5.2 - Geographic Features

  • Place note creation with parent picker and coordinates

  • Templater template support for person and place notes

  • Place filtering and standardization

  • Migration diagram with region aggregation and time filtering

  • Geocoding lookup for coordinates

v0.6.0 - Interactive Map View and Expanded Export

  • Leaflet.js map view with OpenStreetMap

  • Custom map images with pixel coordinate support

  • Map alignment editor for georeferencing images

  • Route/journey visualization for life events

  • Multiple marker types (birth, death, residence, etc.)

  • GEDCOM X and Gramps XML export

v0.6.2 - Maps Tab

  • Maps management tab in Control Center

  • Create, edit, delete custom maps from UI

v0.6.3 - Schema Validation

  • Schema definitions for person note validation

  • Validation rules (required fields, types, constraints)

  • Schemas tab in Control Center

v0.7.0 - World-Building Suite

  • Custom Relationships - Define relationship types beyond family

  • Fictional Date Systems - Create custom calendars (fantasy, historical)

  • Organizations - Track memberships in groups, guilds, factions

Also, we have a wiki now!

Christmas come early this year… thank you… I will test this as soon as I got some time…

v0.12.9 Update

Six major releases have shipped since v0.7.0, adding statistics/reports, event timelines, Calendarium integration, import improvements, and data quality tools:

Statistics & Reports

  • Statistics Dashboard with entity counts, data completeness metrics, gender distribution, and date range overview
  • Data quality analysis with severity-coded alerts for date issues, missing data, orphaned people, and unsourced events - all with drill-down to affected records
  • Extended statistics including longevity analysis, family size patterns, marriage patterns, migration flows, and timeline density with gap detection
  • Genealogical reports - Family Group Sheet, Individual Summary, Ahnentafel, Gaps Report, Register Report, Pedigree Chart, Descendant Chart

Events & Timelines

  • Event notes with 22+ event types, date precision, confidence levels, and before/after relationships
  • Timeline export to Canvas, Excalidraw, or Markdown with layout styles, color-coding, and group/faction filtering
  • Person timeline view and Family timeline view showing events for individuals or family units
  • Place timeline view showing events at specific locations with family presence analysis
  • Compute sort order for automatic topological ordering of events from before/after relationships
  • Source event extraction from census, vital records, and other source notes

Import & Export

  • GEDCOM Import v2 with event notes, source notes, hierarchical place notes, progress indicator, and pre-import data quality preview
  • Gramps XML import with source/citation extraction, repository metadata, and automatic gzip decompression
  • Export v2 with full entity support (events, sources, places) and round-trip fidelity for GEDCOM, GEDCOM X, Gramps, and CSV
  • Source Image Import Wizard for bulk-importing source images with filename parsing and metadata extraction
  • Source Media Linker for attaching images to existing source notes with smart suggestions

Data Quality & Place Management

  • Batch data quality operations - remove duplicates, normalize names, fix bidirectional relationships, validate dates, remove placeholder values, standardize place names
  • Place management tools - merge duplicates, enrich hierarchy via geocoding, normalize state abbreviations, standardize place types

Family Chart

  • Interactive Family Chart with pan/zoom, click navigation, edit mode for adding relationships, and SVG/PNG/PDF export
  • Family Chart “Open note” button on person cards for quick access to notes

Evidence & Sources

  • Evidence visualization - fact-level source tracking, source quality classification, proof summary notes, canvas conflict markers
  • Source indicators on trees showing research documentation quality with color-coded badges
  • Citation generator supporting Chicago, Evidence Explained, MLA, and Turabian formats

Worldbuilding & Customization

  • Custom relationships for godparent, guardian, mentor, apprentice, and other non-family links with canvas edge styling
  • Fictional date systems for worldbuilding with custom calendars and eras
  • Organization notes for noble houses, guilds, corporations, military units, and other hierarchies
  • Calendarium integration for importing calendar definitions from the Calendarium plugin

Configuration & UX

  • Type customization for events, sources, organizations, relationships, and places with category management
  • Property aliases to use custom frontmatter property names without editing notes
  • Value aliases to map custom property values to canonical values
  • Sex/gender identity fields with separate gender_identity property distinct from biological sex
  • Unified property configuration UI with collapsible sections and search/filter
  • Settings UX overhaul with search, collapsible sections, sliders, and folder autocomplete
  • Style Settings integration for customizing Family Chart and evidence visualization colors

Note Templates

  • Dynamic content blocks (canvas-roots-timeline and canvas-roots-relationships) that render live computed content in person notes with freeze-to-markdown option
  • Obsidian Bases templates for People, Events, Places, Sources, and Organizations with pre-configured views

Changes since 0.12.9:

  • Excalidraw Export Enhancements - Smart connectors, wiki links, style customization (drawing style, fonts, fills)
  • Post-Import Cleanup Wizard - 10-step guided wizard for data quality operations after GEDCOM import
  • Control Center overhaul - Dashboard with quick actions, statistics, and organized tabs for all features
  • Import/Export Hub - Step-by-step wizards for GEDCOM/Gramps/CSV import and export with privacy controls
  • Calendarium Integration Phase 2 - Full timeline sync with Calendarium plugin for fictional date systems
  • Family Chart Export Wizard - Multi-step wizard for exporting interactive family charts to PNG/PDF/SVG
  • Family Chart Styling Panel - Customize colors, fonts, node sizes, and connection styles for family charts
  • Universal Media Linking - Attach images/documents to any entity type, not just sources
  • ODT & PDF Exports - Generate formatted reports in Open Document and PDF formats
  • Visual Tree Exports - Export canvas trees to PNG, PDF, and Excalidraw formats
  • Extended Report Types - 13 report types across 5 categories (genealogical, research, timeline, geographic, summary)
  • Universe Management - Organize fictional worlds with universe tags and filtering
  • Step & Adoptive Parent Support - Stepfather, stepmother, adoptive father, adoptive mother relationship fields
1 Like

Features Added Since v0.17.2

Import/Export — Gramps notes on persons, events, and places now import with style conversion and privacy flags. Timeline exports consolidated into Reports wizard. Research Level round-trips through GEDCOM/Gramps.

Relationships — Family Creation Wizard for building families. Inclusive parent relationships with gender-neutral support. Edit Modal supports inline person creation and children management. Picker modals include “Create new” buttons throughout.

Maps — Custom Map Authoring wizard with right-click place creation and draggable markers. “All places” layer in Map View. Pixel coordinates for fictional maps. Auto-refresh on changes.

Data Quality — Cleanup Wizard adds batch progress, keyboard nav, and accessibility. Property normalization migrates childchildren. Flat properties replace nested sourced_facts and events.

Media — Direct upload with 6-tile Media Manager and entity picker. Bulk Media Linker supports configured folders with pagination.

UI — Reorganized context menus. Form state persistence for 24 hours.

Person Notes — Nickname property. Research Level (0-6) with Gaps Report integration.

1 Like

Happy New Year
I am most grateful for this plugin you have developed. For many novelists, it undoubtedly serves as a small yet powerful AI-driven tool. There exists a significant latent demand for such tools within the Chinese-speaking community, though the likelihood of widespread adoption remains low at present. Nevertheless, I remain full of anticipation. Wishing you every success in the New Year.

Is this spam, or just a translation issue? Well, in any event, Happy New Year to you as well!

My English language skills are limited. Translation issues. Wishing you every success in your work.

Hi again! I’m curious to learn more about your use case. It sounds like you might be a novelist. If that’s the case, how do you currently use Obsidian in your writing workflow? For example:

  • Do you track characters and their relationships manually, or use another system?
  • How do you visualize family connections or character networks in your stories?
  • Are you working with multi-generational sagas or complex family dynamics?

This plugin is largely focused on genealogists, but I’m also striving to better serve world-builders and fiction writers - especially for tracking fictional family trees, lineages, and character relationships across a story or series.

I’d love to hear what features you think would be most valuable for novelists. What drew you to try the plugin, and what would make it more useful for your creative work?

1 Like

Hello, regarding the question you raised, I shall attempt to respond. I may have misunderstood somewhat, but should I be able to offer creative inspiration, I shall consider it a privilege.
How are you currently utilising Obsidian within your writing workflow? For instance:
• Do you manually track characters and their relationships, or employ other systems?
• I’m quite new to Obsidian, having used it for less than two months.
• After discovering the dual-link feature—a fundamental internet functionality—I’ve been experimenting with using canvases and dual-links to map connections among family members.

• How do you visualise familial connections or character networks within your narrative?
• As I’m writing a historical novel about family history using a polyphonic structure, characters are treated as equals with divergent arcs. This differs from traditional linear genealogical storytelling. Each character possesses their own distinct set of relational links—such as father-son dynamics, intergenerational bonds, and parent-child connections—which interconnect while developing independently.
• Are you dealing with multigenerational households or complex family dynamics?
• Two generations: father and son. A story spanning war and peace.
This add-on primarily targets genealogists, but I’ve also strived to better serve worldbuilders and fiction writers—particularly those tracking fictional family trees, lineages, and character relationships across stories or series.
I’d be keen to hear which features you find most valuable for fiction writers. What drew you to try this plugin? And what makes it particularly helpful for your creative process?
It feels both fortunate and delightful that I happened to be writing a polyphonic novel tracing a father-son family history when I encountered your plugin. Combined with Obsidian, it spares me the chaos and forgetfulness of traditional writing methods.
I find the outline tree particularly valuable. Paired with dual chains and integrated with your family tree feature, it creates remarkably flexible writing templates. This represents an effective tool for the AI era.
Naturally, future integration with AI would provide writers with an automated engine, significantly boosting productivity.

Thank you so much for sharing your use case - this is exactly the kind of feedback that helps me understand how writers are using the plugin!

Your workflow sounds like a great fit:

  • A polyphonic historical novel with father-son dynamics across two generations
  • Characters as equals with divergent arcs (not traditional linear genealogy)
  • Using canvases and dual-links to map family connections

I’m glad the outline tree and family tree features are working well for you. The combination of Obsidian’s linking with Canvas Roots’ relationship tracking does create flexible templates for complex narratives.

A few questions to help me understand your needs better:

  1. Character relationships: Beyond parent-child, are there other relationship types you need to track? (e.g., rivals, mentors, allies - The plugin has a “Feudal/World-building” category with these)

  2. Timeline: Does your story have a specific historical timeline? The plugin can track birth/death dates and life events - would this help you maintain historical consistency?

  3. Multiple perspectives: With your polyphonic structure, do you need to visualize the story from different characters’ points of view? (e.g., “Show all characters connected to Character A”)

  4. Pain points: What’s currently difficult or tedious in your workflow that you wish was easier?

Your feedback about the Chinese-speaking community is interesting. If you ever have time to share how you discovered the plugin or what barriers might exist for non-English users, I’d be curious to hear.

One clarification: Canvas Roots doesn’t actually use AI (and I have no plans to add such features) - it’s a structured data tool that automatically manages relationships, links, and visualizations. But I can see how the automatic linking and relationship tracking feels like a smarter way to work compared to doing it all manually!

Thank you again for the kind words, and best of luck with your novel!

1 Like
  1. Character Relationships: Beyond parent-child bonds, are other relationship types to be tracked? (e.g., rivals, mentors, allies—the add-on features a “Feudal/World-Building” category)

  2. Answer: Yes. Vertical relationships are father-son; horizontal relationships among the elder generation include comrades-in-arms, fellow townsfolk, and childhood friends. This stems from their shared wartime experiences.

  3. The son’s generation has lateral relationships: lovers, classmates, friends, rivals.

  4. Hence the adoption of a polyphonic narrative structure.

  5. Timeline: Does your story have a specific historical timeline? This plugin can track birth/death dates and life events—would this aid historical consistency?

  6. Answer: Yes. 1933–1990.

  7. Multiple Perspectives: Given your polyphonic structure, is it necessary to visualise the story from different characters’ viewpoints? (e.g., “Display all characters related to Character A”)

  8. Answer: Yes. Father and son. The father dominates the polyphonic narrative. The son experiences this conflict to varying degrees due to the father’s influence.

  9. **Pain Points: What difficulties or cumbersome aspects in your current workflow could be simplified?
    All materials are disorganised and require a combination of parallel and serial organisation, akin to a family tree. This would significantly enhance writing efficiency.

Your feedback on the Chinese-speaking community is fascinating. If you have time to share how you discovered this plugin, or potential obstacles non-English speakers might encounter, I’d be very interested to hear.
Answer: As an Obsidian user, the Chinese-speaking community proved overwhelmingly complex with slow response times. As a novice requiring immediate results, I turned to English-speaking communities. This led me to discover your family tree feature, which greatly aids writing. However, I couldn’t locate it in the plugin marketplace. Regarding Git, being non-technical and new to Obsidian, installation proved challenging. Another factor is that I now write on an iPad, away from the Windows work environment. It seems fraught with obstacles.

One clarification: Canvas Roots doesn’t actually use AI (nor do I plan to add such features) — it’s a structured data tool that automatically manages associations, links, and visualisations. But I understand that automatic linking and relationship tracking feels like a smarter way of working than doing it manually!
As for integrating AI, that’s something I’d like to see in similar writing plugins. I also recognise that overly complex designs often end up being counterproductive.
Wishing you all the best in your work.

New name: Charted Roots

Canvas Roots is now Charted Roots. The original name led to confusion — users assumed they needed Obsidian Canvas. In reality, most visualization happens in dedicated views: Interactive Family Chart, Map View, Statistics Dashboard, and PDF exports. “Charted Roots” better captures this range while keeping the cr- prefix.

Features since v0.18.13:

  • Gramps Notes Phase 4: Separate note files (opt-in)
  • Family Chart: Four card styles with state persistence and export
  • Export Privacy: Canvas privacy, field redaction, private fields, deadname protection
  • Staging Management: UI for staged imports with stats, duplicate detection, promotion
  • Web Clipper Integration: Auto-detect clipped notes, Dashboard breakdown, Staging Manager filtering
  • DNA Match Tracking: Template snippet, Bases view, frontmatter properties
  • DMS Coordinates: Opt-in parsing (e.g., 33°51'08"N)
  • Optional Person Names: Placeholder persons for incomplete research
  • MyHeritage GEDCOM: Auto-fix exports (BOM, double-encoded entities, <br>)
  • Wikilink Resolution: Resolve [[Person]] to cr_id in relationship fields

For BRAT users

Update your configuration:

  1. Settings → BRAT → Beta Plugin List
  2. Remove banisterious/obsidian-canvas-roots
  3. Add banisterious/obsidian-charted-roots

Status: Undergoing Obsidian plugin review

GitHub: https://github.com/banisterious/obsidian-charted-roots
Docs: https://github.com/banisterious/obsidian-charted-roots/wiki

3 Likes

This tool could really streamline how people manage complex relationships and track project progress visually. Have you considered how it might integrate with broader GTD or P.A.R.A. systems for managing research as projects?

Thanks for your interest! Charted Roots is specifically focused on genealogy and family history research rather than general productivity systems. That said, the plugin does include research workflow management features inspired by the Genealogical Proof Standard (GPS). These include:

  • Research Projects - Track complex, multi-phase research cases with status tracking (open, in-progress, on-hold, completed)
  • Research Reports - Living documents analyzing specific research questions with findings and evidence
  • Individual Research Notes (IRNs) - Synthesis documents combining analysis across multiple sources for a specific person
  • Research Journals and Log Entries - Session-level research logs for tracking activity, repositories visited, and search results (positive/negative/inconclusive)
  • Research Level tracking - A 0-6 GPS scale per person (from “Unidentified” to “Biography Complete”)
  • Research Gaps Report - Identifies ancestors needing research, sorted by research level

These features are designed for genealogical research specifically - tracking sources, evidence analysis, and progress toward proving family relationships - rather than general GTD or P.A.R.A. workflows. But if you’re managing genealogical research, they may provide some of what you’re looking for within that domain.