My GitHub repo for this project is currently “private” because it may contain sensitive data, although I really doubt it. I just haven’t had time to review all the information so for now it remains private as a precautionary measure.

While that repo remains “private”, I am certainly open to sharing bit of it, so that that end, what you see below is simply the file from the repo shared as-is.


My McFate/Mikkelson spin of the Idris Project, I would like to acknowledge Steve Baker for his pioneering work here, and thank him sincerely for sharing. Thank you, Steve!


The project has been deployed on DigitalOcean’s “App Platform” at Updates pushed to the “main” branch here are automatically deployed at that address.

An alias of will also resolve to this site.


Similar to the Idris Project, the name here comes from my (maternal) grandfather, Henry (Helge) Mikkelson. According to Wikipedia, “The name Helge is derived from Proto-Norse Hailaga with its original meaning being dedicated to the gods.” When passing through Helgeland in Norway in June of 2019, I asked about the name at an information kiosk and the attendant their equated the term’s meaing to holy or blessed.

Mackenzie’s Project

While my name is attached to this repository and project, it’s really intended to be a vehicle for my daughter, Mackenzie Grace McFate, to expand her IT repatorie and keep the family’s history alive on the web. Ultimately you’ll find this site being auto-updated from .ged exports of McFate/Mikkelson family tree data collected by my late sister, Marlene McFate Burkheimer. The site will be a manifestation of data generated using Python and will appear as it does now, in a Hugo static web site.

Content: Generated vs. Permanent

In February 2022 this project started displaying content for individuals that was generated from .ged (aka Gedcom) exports from Gramps. Generated individual files are placed in the project’s ./content/individuals directory with .md filenames that begin with the letter i, for “individual”, followed by a zero-padded 5-digit ID number assigned during export.

Permanent Content

Since not all of the content I want to keep can be managed in Gramps and conveniently exported, I introduced the concept of permanent content. Like the generated content, permanent information is expressed in Markdown, but it resides in files with a .content extension alongside the corresponding generated content. See ./content/individuals/i00007.content as an example.

These .content files are automatically rendered at the end of each individual’s page via the ./layouts/individuals/single.html template.

Python Scripts

The scripts I use to generate .md content from a gedcom export are available in this public repository. If you enhance or add to this set of scripts please share!