Skip to content

Repository files navigation

greatgramps

A static site generator for Gramps family tree databases.

greatgramps reads a Gramps database and builds a browsable static website from it. Each person in the tree gets their own page with biographical details, family relationships, events, photos, and a relationship label showing how they connect to a chosen root person. The site also includes index pages for people, places, events, census records, birthdays, and surnames.

The site is built from the point of view of one or more root people — typically the living members of a family who each want to browse the tree as themselves. Each root person gets their own section of the site where relationship labels ("your grandmother", "your 2nd cousin") are calculated relative to them. A dropdown in the nav bar lets you switch between roots from any page.

The site is generated once and served as plain HTML — no server-side code required. It's not a web frontend for Gramps (like gramps-web), in that it's read-only, but it produces a rich browsable site for your tree. Once built, the site can be hosted with ease, with no Python or Gramps installation required.

This approach lets you manage your own tree using open source software without relying on subscription or proprietary services, while still making it easy to share your tree with your family on the web.

Demo

A demo is available at gramps.bennuttall.com which features a generated family tree showcasing what greatgramps can build from a Gramps database.

Requirements

  • Python 3.10+
  • A Gramps sqlite database
  • Gramps

Installation

Install Gramps first. See the Gramps installation instructions.

Also install PyICU for locale-aware sorting, via your platform's package manager (otherwise Gramps logs a warning and falls back to less accurate sorting of names and places). On Debian/Ubuntu:

sudo apt install python3-icu

Then install the project. The core package only handles reading the Gramps database; pick the extras for the features you need:

pip install greatgramps[cli,html,pdf]
  • cli — the grgr command-line tool
  • html — the grgr build / grgr rebuild-page commands for generating the static site
  • pdf — the grgr pdf commands (also requires Ghostscript)

If you only have the html extra installed (no cli), build the site with python -m greatgramps.build instead of grgr build — it has no dependency on typer or rich.

Links

Licence

About

Family tree static site generator for Gramps databases

Topics

Resources

Stars

4 stars

Watchers

1 watching

Forks

Contributors

Languages