Managing your family history in TiddlyWiki

Wiki technology was not designed to manage large collections that have complex data relationships. Family history collections are best managed in relational or object-oriented database products. They provide data integrity and performance to manage large collections.

I have developed complex data models to support the steel industry, human resources, and various industrial requirements—and family history data models. I have used various home-based products to manage my family history, but remain unsatisfied. There is a large missing requirement that I want—the storytelling. I want the raw data collection and managing the relationships of people, events, etc., but I want more.  As an aside, I also could care less if it’s online for the world to review.  The content I’m adding is personal and includes information about living individuals—so there is nothing more private than offline.

Around 2000 I was looking for a tool to manage my work notes, journals, and personal knowledgebase. I reviewed TiddlyWiki and almost used it—well, I did use it for a while but eventually abandoned it. 

During the Covid pandemic, I was jealous of my wife, using the lockdown to research and capture her family history.  So, I went back and reviewed my genealogy.  Upon reviewing tools again I stumbled upon TiddlyWiki again, but this time, the legacy product was upgraded to TW5. 

I downloaded the empty TW5 HTML file and quickly understood the structure and behaviour. For this to be useable for me I needed a more elegant user presentation. I tried many and settled on “Navigator” by Thomas Elmiger.

The first thing to implement was how I would enter data about a person.  I first created a Tiddler by putting the person’s name in the title—which I quickly put the format of surname, given names. In this way when names are sorted they would appear as I would expect them. I then created birth, death, burial, and other event fields—which I quickly abandoned.  It would be better to have an Event Tiddler, one for each event, and then associate that event with the person. 

Once these fundamental ideas were worked out I added sources, notes, photographs, places, and many more tiddler types. I wanted to prevent the use of tags to associate tiddlers, rather fields made more sense to me, and it added more power.  Tags are used as a binary property to identify a property of an object. A person Tiddler will always have a “person” tag and either a “male” or a “female” tag. An event tag has an “event” tag, and typically a complimenting tag that identifies the type of event, such as “birth”, “death” and “burial”.

Family relationships are linked via three simple fields—all three of them are used on the “person” tiddler. “Father”, “Mother” and “Spouse” fields link a person to the appropriate family member—and, yes a Spouse field supports any number of spouses.

Being a want-a-be writer, and having a family history e-pub book in the works, I wanted to bring the epub experience into TW5.  So, I imported my e-pub CSS and I immediately saw my Tiddlers looking like my epub pages. I then imported in the e-pub HTML chapters from the e-pub and now I could continue to edit my book within TW5.  After adding the concept of “citation” and “bibliography” Tiddlers I was able to add hover bubble pop-up citations, with citations that also appear at the end of the chapter.  The bibliography is a separate tiddler that shows more details about each citation.  BTW, citations can be linked to “source” tiddlers.

My grandparents kept a cardboard box of documents and photographs that had the following written on the side of the box:  “Memory Keeper”.  The name lives on with this project.

There is more to come as the development continues. Stay tuned. 

Memory Keeper