GENEALOGIX Specification
The official specification for GENEALOGIX (GLX) — a portable, extensible archive format for genealogical research and beyond. Built on Git, designed for collaboration, and customizable through archive-owned vocabularies. Your data, your way, forever.
Installation
Download the latest pre-compiled binary for your operating system from the GitHub Releases page.
Developers can install from source:
# Pin the release tag for a reproducible install; bump it when a new release ships
go install github.com/genealogix/glx/glx@v0.0.0-beta.12Quick Start
# Create a new genealogix repository in a new directory
glx init my-family-archive
# Or create a single-file archive
glx init my-family-archive --single-file
# Validate .glx files (checks cross-references and vocabularies)
cd my-family-archive
glx validateWhy GENEALOGIX?
Traditional formats like GEDCOM solve file exchange but stop short of modern collaborative research. GENEALOGIX is a Git-native, evidence-first archive format that aims to be a permanent foundation, not just an export target.
For a side-by-side look at the GEDCOM-vs-GLX wire formats and the assertion model that backs every claim with evidence, see Core Concepts.
Features
- 📚 Evidence-First Model — every claim backed by documented sources
- 🔍 Quality Assessment — structured confidence on every assertion, with the nature of the source and of the information recorded separately
- 🌳 Git-Native Architecture — full version control and collaboration support
- 📋 Human-Readable Format — clear YAML files instead of binary formats
- ✅ Schema Validation — JSON Schema-based validation and error checking
- 🔗 Complete Provenance — audit trail from repository to conclusion
- 🎯 Repository-Owned Vocabularies — define custom types within each archive
CLI Commands
The glx CLI groups its commands into archive management, import/export, exploration, data entry, analysis, and shell completion. See the full CLI reference for flags, examples, and per-command details.
Archive Management
- glx init — initialize a new archive
- glx validate — validate files and cross-references
- glx split — convert a single-file archive to multi-file
- glx join — convert a multi-file archive to single-file
- glx merge — combine two archives with duplicate detection
- glx migrate — migrate an archive to the current format