Parse GEDCOM files or pull live data from WikiTree. Zero runtime dependencies. Pan, zoom, and edit — all in the browser.
Full round-trip parse and serialise. Handles CONC/CONT, multi-byte characters, and large files.
Ships as a single ESM/UMD bundle. No React, no D3, no bloat. Drop it on any page.
Touch-friendly pan and wheel zoom. Inline side-panel editing with live tree updates.
Load ancestors directly from WikiTree by profile ID. No file required, no auth needed.
npm
npm install family-tree-viewer
CDN (unpkg)
<script src="https://unpkg.com/family-tree-viewer"></script>
import { FamilyTreeViewer } from 'family-tree-viewer';
const viewer = new FamilyTreeViewer('#container', {
theme: 'light',
onSave: (gedcom) => console.log(gedcom),
});
// Load a GEDCOM string
viewer.loadGedcom(gedcomText);
// — or — pull directly from WikiTree
await viewer.loadWikiTree('Einstein-1', { depth: 3 });
See the API documentation for the full option reference, or jump straight to the GEDCOM demo and WikiTree demo.