/gedcom

👪 A Go library and CLI tools for encoding, decoding, traversing, merging, comparing, querying and publishing GEDCOM files.

Primary LanguageGoMIT LicenseMIT

github.com/elliotchance/gedcom

Build Status codecov GitHub release Join the chat at https://gitter.im/gedcom-app/community Maintainability


github.com/elliotchance/gedcom is an advanced Go-style library and set of command-line tools for dealing with GEDCOM files.

You can download the latest binaries for macOS, Windows and Linux on the Releases page. This will not require you to install Go or any other dependencies.

What Can It Do?

  • Decode and encode GEDCOM files.

  • Traverse and manipulate GEDCOM files with the provided API.

  • A powerful query language called gedcomq lets you query GEDCOM files with a CLI tool. It can output CSV, JSON and other GEDCOM files.

  • Render GEDCOM files as fully static HTML websites.

  • Compare GEDCOM files from the same or different providers to find differences using the very advanced and configurable tool: gedcom diff.

  • Merge GEDCOM files using the same advanced Compare algorithm with gedcomq.

Packages

Package Description
GoDoc
gedcom
Package gedcom contains functionality for encoding, decoding, traversing, manipulating and comparing of GEDCOM data.
GoDoc
gedcom/q
Package q is the gedcomq parser and engine.
GoDoc
gedcom/gedcomq
Gedcomq is a command line tool and query language for GEDCOM files heavily inspired by jq, in name and syntax.
GoDoc
gedcom/html
Package html is shared HTML rendering components that are shared by the other packages.
GoDoc
gedcom/util
Package util contains shared functions used by several packages.