Starting an open-source family tree app

I’ve decided to start building a free, open-source family tree application. The goal is to create a browser-based app that will allow people to:

  • work on their genealogy alone or share it with their family members,
  • use it as a full-featured replacement for their desktop genealogy program,
  • run the app offline using HTML5 techniques and sync when they reconnect,
  • publish their data and subscribe to changes on community websites like, FamilySearch, and,
  • get hints on where to find records, and
  • involve non-genealogist family members using game-like features.
It’s a big project and will likely take a couple of years to complete, but I’m starting now.  I’ll post periodic updates here.  If anyone  is interested in getting involved (people experienced with genealogy, graphic artists, ui designers, or developers), please contact me.

11 comments so far

  1. Tod Robbins (@todrobbins) on

    Great news Dallan! We need to get you and Ben Crowder together. I’d love to help with the project as well.

    • Dallan Quass on

      Wonderful! I hope to have some wireframes up this week or next. I’ll post a link to them here.

  2. cacack on

    Have you made any progress on this? I only see a place holder on github. I’m currently using webtrees but need to find something better. Something that is easier to use, for both older adults and the younger generations in my family. Your posts describe exactly what I’d like to see. Unfortunately I’m more of a sysadmin than devel so I know more perl and python than java. But I’d love to help if I can.

    • Dallan Quass on

      Not yet unfortunately. I’ve decided that the first thing that’s needed is a database of online genealogy sources, so if you’re looking at someone in your tree that’s missing a certain piece of information, the game could query the database to see if there’s an online collection that would have the information you’re missing. Think of it as for genealogy, with an API that would allow anyone to query the database for genealogy sources that covered a particular place, time period, and provided specified fields.

      I’ve been working on this project with some people at FamilySearch. You can see some early mockups at I’d like to make this a single-page app written in javascript. Javascript hasn’t been my forte, so for the last several months I’ve been learning javascript, coffeescript, backbone.js, and node.js. Overall I have to say that it’s taken me awhile to get used to, but I’m liking it. I’ve been trying to put together a skeleton application that hopefully will be easy for others to contribute to. I should have something ready to post on github sometime toward the end of May.

      So the game has been sidelined for now, but hopefully this other project will be just as interesting and useful.

      • Justin York on

        Any updates on Genealogy Recipes?

        The sources database would be much easier to do if FamilySearch made their catalog more accessible.

        In regards to the open-source family tree app, you should talk to the guys at BYU that are doing the 20 Minute Genealogist; they have a similar vision.

      • Dallan Quass on

        I’m getting ready to publish something soon I hope. I want to write this as a single-page app in javascript on the client and server, and it’s taking longer than I expected to get up to speed. FWIW, I just posted a simple example

        Regarding the FamilySearch catalog, I crawled the catalog about seven years ago and included the results at I crawled Ancestry’s catalog at the same time, and WeRelate volunteers merged the duplicates. But there are new collections coming online all the time that aren’t associated with either FamilySearch or Ancestry and it’s difficult to keep up with them. Moreover, when you crawl a catalog entry you don’t get enough metadata to determine when the item would fill in a missing piece of information in someone’s tree. So a crowd-sourced global catalog makes more sense.

        FWIW, I just posted a simple example ToDo application using the client-side framework and build tool that I’ve chosen: Chaplin and Brunch.

        Thanks for the pointer to the 20 Minute Genealogist. I’ll have to give them a shout.

      • Justin York on

        A co-worker of mine has the same vision for a crowd-sourced catalog.

        The programmer genealogist community needs a central location for collaborating on ideas like this. Do you know of any good place? We have thought about hosting Ostio for genealogists.

      • Dallan Quass on

        I’d love to talk with your co-worker about the idea. Maybe we could work together. I’m getting closer to being ready to begin. I just posted a boilerplate application using backbone.js and node.js that uses FamilySearch for authentication:

        I agree that we need a central location. Ideally it would be nice to have a set of pages where people could describe what they’re doing or want to do and a place to have discussions. I asked the people behind RootsTech last February if they would be willing to put something together, because I believe that the RootsTech conference could make a good center of gravity. This is as far as it got:

        I’ve just been added to the FamilySearch organization (, so I may be able to push this along further if others are interested.

        Integrating with could be a nice idea, though to be honest I’m trying to figure out how much of an improvement it is over github issues.

  3. […] in solving this problem I highly suggest you read it. In September last year Dallan Quass mentioned on his blog he was starting an effort to build an app with a similar goal (the app has been sidelined for […]

  4. Arnoild on

    I am very curious how for you have gotten with this.
    After a bit of puzzling – Java etc is not my forte either – I managed to get Maven to compile the project, but now I’m lost as to how to actually run it.
    I’d be ver y interested in helping if I can and if this is still ‘under construction’

  5. Dallan Quass on

    Which project are you referring to?

    I haven’t written any code for the genealogy app described above. I started consulting full-time about a year and a half ago and haven’t had free time. But I’ve recently started some design work on a mobile genealogy app that captures much of what I describe above. You can read about it in my latest post:

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s