Welcome to Gigatrees

What is Gigatrees?

Gigatrees is a free genealogy application that can be used to build a complete family tree from your GEDCOM file. You can fine tune the contents and look of your tree using the well over 100 configurable parameters. It includes charts, timelines, maps, ancestor lists, census tables, photos, source images, integrated blogging, data alerts and much, much more. It can create either dynamic or static web pages for both offline and online viewing. Gigatrees can also be used to generate standalone reports, including a GEDCOM Validation report and a Genealogy Data Validation report, which, among other things, compares event dates between related individuals looking for inconsistencies. Gigatrees is unique in that it allows adding new GEDCOM extensions to extend the capability of the often maligned GEDCOM standard. Extensions include, among others, adding source categories and evidence models, attaching source references to parental associations, defining impossible claims, adding privacy flags and extending photo and image handling. Many of these extensions can be adding permenantly via configuration so that your GEDCOM file does not need to be altered in any way.

Gigatrees runs under Microsoft Windows only. It will not run under MacOS, Linux, Android, IOS, or any other operating system. Gigatrees includes two executables, an application interface (AI) built using FormType and a command line interface (CLI). The application interface is used to load, modify and save configuration files and to launch the CLI. For advanced uses, the CLI can run independantly of the application interface. The application interface includes detailed descriptions for each option, which can be viewed when clicking on the option name. These built-in descriptions replace much of the online documentation. The Gigatrees Blog is used to provide additional descriptions, tutorials and help. The source code for the application interface is also freely available so developer's can modify it to suit their needs.

Tim Forsythe (Developer, Genealogist)


The following sample screenshots are taken from the Gigatrees application interface.

FormType Sample Application Main Page FormType Sample Application Option Menu FormType Sample Application Option Page FormType Sample Application Blog Posts Option Page FormType Sample Application Blog Post Edit Option Page

The following sample screenshots are taken directly from the author's website built using Gigatrees. The screenshots highlight many of the features of Gigatrees. Each screenshot is labelled.

Names Index Names 'C' Index Individual Profile Page (part 1) Individual Profile Page (part 2) Individual Profile Page (part 3) Individual Profile Page (part 4) Sources Index Source Profile Page Source Profile Page (image selected) Source Profile Page (image expanded) Locations Index Location Profile Page Timeline Page (with menu) Timeline Page (highlighted source) Blog Page (highlighted menu) Map Page Map Page (partially zoomed) Photo Page Photo Page (selected) Census Table Census Table (location selected) Census Table (location clicked sent to source, part 1) Census Table (location clicked sent to source, part 2) Ancestor List Descendant List (part 1) Descendant List (part 2) Immigrants Page Nobility Page Nobility Page (source highlighted) Data Alerts Page Data Alerts Page (alert clicked sent to individual) Statistics Page (part 1) Statistics Page (part 2) Statistics Page (part 3) Statistics Page (part 4) Recent Updates Page Profile Page (with kinship) Profile Page (MRCA clicked sent to kinship list)

Where do I download the application?

Gigatrees is available as a downloadable, standalone, cost and ad free, Windows 32-bit or 64-bit application. There is no need to create user accounts or upload GEDCOM files to a server for processing. The application does not install itself into your registry.


Revision History


If you use Gigatrees and find it useful, please consider making a donation.



Registration is not required to use Gigatrees. Gigatrees is a fully functional application right out of the box. However, registered users have a couple advantages. Registered users will sometimes have early access to new features. This allows me to better manage releases. Currently, the following features are still under release management: >> Integrated Blogging, Dynamic Page Serving and Ethnicity Estimates.

Also, since I would rather not spend my time making changes and implementing features that goes unused, I consider change requests from registered users only. Questions and bug reports are welcome from everyone.

Keeping Gigatrees free to everyone is my small way of paying back the many researchers and developers that have helped me along the way, Having said that, I only accept registration requests from users who have also made a donation. This is the only way I have found to ensure that registered users are vested in the future direction of the application. Again, donations and registration are NOT required to use Gigatrees. They are only for users who want to support its continued development, or have access to managed features.

When making a registration request, please provide your registration id at the time of donation or by emailing me directly after. You can find your registration id in the header of any build report or log file. Upgrading does not affect your registration id, and it does not expire. The registration id is tied to the hardware platform that your application is installed on, so if you move to another, or use more than one, computer, you will need to provide that id as well. You must have an Internet connection to use any of the features associated with registered users. Also, the Gigatrees server must be online in order to verify your registration id. The latest report from Pingdom says the Gigatrees server was up 99.88% of the time. I have a record of all previous donations, so users who have donated to one of the earlier incarnations of this software can simply email me their registration id if they do not wish to make another donation.

License Agreements

The Gigatrees applications (gigatrees.exe and gigatrees-cli.exe) are written by Tim Forsythe and are licensed under the Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License

Creative Commons License

This license agreement states that you cannot use the Gigatrees applications for any commercial purposes, and that when using them for non-commercial purposes, you may not modify them and that you must provide appropriate attribution. Read the full license agreement for more details. The license agreement applies only to the Gigatrees applications, not to the web pages generated by them. The generated web pages may be subject to other third-party end user agreements (see below).The Gigatrees applications may also be subject to the following third-party license agreements, depending on your configuration.

The application generated web pages may use several third-party libraries, including those loaded by the default header and footer.

Most of the third party license agreements allow you to use them for any reason as long as you don't hold the licensor liable. There are a few things worth noting: mapping and translation services prohibit redistribution of their data, so please do not share your gigatrees.sqlite database or your auto-translated files with others; Disqus prohibits certain types of comments including copyrighted material; and Developer Express does not allow using their charts in commercial applications unless you pay a license fee. This may restrict you from making your Statistics page available only to paid subscribers. If that is your intention, consult their license agreement first. The Statistics page can be disabled, and the ChartJs plugin can be removed from your configuration to avoid potential license conflicts.

Your continued use of Gigatrees indicates your acceptance of all applicable license agreements.

What are some of its features?

Gigatrees has many unique features. The web pages it creates are mobile friendly, built upon the responsive features of jQuery and Bootstrap 3, so that they look good on any size screen. Gigatrees will read virtually any GEDCOM 5.5, 5.5.1 or 5.6 file including many vendor specific extensions. It also has built-in support for ANSI, UTF-8 and UTF-16 encoding, as well as ASCII, extended ASCII and UNICODE character sets. Gigatrees is fully configurable. It includes options for translating your web pages and for replacing data text strings that together allow family trees to be presented in many written languages. Complete website header and footer substitution is also supported. Additionally, stylesheet overrides, menu bars and plugins allow for creating unique websites, or if you would rather, provide for seamless integration into existing websites and content management systems like WordPress. Gigatrees also has integrated blog support for replacing WordPress when your ready. If you need a standalone blog, checkout my blogging platform, Innuendo. Gigatrees can also be configured to generate pages in either HTML or PHP. PHP pages can be created statically or saved in an SQLite3 database for dynamic page serving reducing your website footprint to just a few files.

Gigatrees supports webpage metadata, autodetects and automatically links embedded URLs and allows for embedding HTML into almost any data field. Gigatrees has built in support for many popular vendor specific and Gigatrees-only extensions as well. Gigatrees allows for inserting new GEDCOM records and appending existing records via the configuration file, eliminating in many cases the need to modify a GEDCOM file to add new extensions. Gigatrees supports privacy and living flags, automatic living detection and accurate birth year estimation, allowing for both public and private website generation. Gigatrees has built in support for source categorization, source reference quality, defining evidence models, indicating impossible claims and both automatic and manual certainty assessments ensuring that both you and your visitors understand the accuracy of your claims. Gigatrees also supports several methods for assigning sources to parental associations, providing you to ability to finally provide evidence to back up your biological connections.

Gigatrees has a number of other general features, such as the handling of both individual profile photos and source record images. It also calculates consanguinity between spouses, calculates ethnicity estimates, has advanced date handling allowing it to recognize most unambiguous date formats, including built in support for British monarch dates. It also has advanced location processing, including the ability to automatically determine the coordinates for every location in your database.

Among its many unique report pages are location maps, origin and population heatmaps, data alerts, family tree charts, census tables, ancestor, descendant, kinship, immigrant and nobility lists, event timelines, an autogenerated photo album and a fully integrated blog.

Error Reporting and Anonymous Statistics

Gigatrees provides two Maintenance options that when enabled will send anonymous data to the Gigatrees server for processing. The Send Error Reports option allows Gigatrees to send information about critical failures such as crash dumps and processing errors. This information is necessary for troubleshooting application errors that occur when installed. This is the primary method by which the developer receives bug reports.

The Send Anonymous Stats option allows Gigatrees to send other types of anonymous data. Each time the application runs, performace data, including module timing and memory usage, is collected and sent. This information is used in development to optimize future releases. Aggregated GEDCOM tag counts are also collected and are used to discover when new record fields come into use and which record fields are most commonly used. Information on the GEDCOM file itself, such as its GEDCOM version and revision, encoding and character sets, and exporting application are also collected in order to provide better support for particular versions and vendors. Configuration and feature usage state data is also collected in order to understand how the application is being used so that development can procede in the most effective manner. Lastly, general statistics such as those found on a Statistics Page are collected and aggregated with previously collected data.

None of the information collected by the Gigatrees server is personally identifiable and will only be shared in aggragate form in statistical tables and charts. At no point is any GEDCOM data collected by the server.

Upgrading Gigatrees

Gigatrees does not require the previous version to be uninstalled. You may copy over their previous installation, however doing so may overwrite previously modified configuration and user files. Instead, users should install Gigatrees into a new folder and then copy over any configuration or user files as necessary. Your previous installation can be uninstalled once you've verified the new installation is functioning properly.

Installing Gigatrees

To install Gigatrees, download the latest version and extract the downloaded file into a folder of your choice. The extracted files will be installed into a gigatrees subfolder. Gigatrees is a standalone program and does not require separate installation files nor does it modify the system registry. It should be installed only onto a Windows operating system with the same architecture (x32, x64).

Uninstalling Gigatrees

To uninstall Gigatrees, simply delete the installation folder.

Running Gigatrees

Start the program by double clicking on (gigatrees.exe). On the main screen you can select the report type you would like to build, and enter or browse to the names to your input file and output path. There are additional items that can be configured using the Options menu, but modifying those are not required to build any of the reports. Once the input file and output path have been set, you can launch the application from the Run menu. When the application is launched it will create a batch file in the same folder as your executable, and then run that batch file in a separate command window. The batch file will be given the same base name as your configuration file. If you did not create or save a configuration file yet, it will save your configuration as undefined.xml and put it into the same folder as your executable. Once the application finishes, the build report and the web pages can be accessed using the View menu.

First time users may want to load the sample configuration file (sample.xml) before launching the application to see how Gigatrees works. The sample configuration file uses a torture test GEDCOM file that has been floating around the Internet for ages. The sample configuration will save your web pages to the installation's "web" folder by default. The sample configuration differs from the default configuration in several ways. First, it has enabled the Coordinates lookup services so that it can create the population distribution heatmap and origin maps. The test file only has a few individuals and locations, so the lookup proceeds quickly. The Maintenance Verbose option has been enabled so that the lookup progress can be observed. Census years have been added and a separate census table has been setup for the individual with the record id of PERSON1. An ancestor list, descendant list, and separate origin map has also be setup for this person. Two blog entries have been added to show how easy it is to add an integrated blog to your website. The first blog entry uses the Insert Records option to insert the record id "B1", and the Append Records option to give it a title, author, publication and last modified dates and times, a category, keywords, an external hastag, and a flag. The second blog entries uses a note record with an id of "N2" that already exists within the GEDCOM file and uses just the Append Records option to give it a title and abstract. Giving it a title is what makes it a blog post. Lastly, the Featured Images option was used to provide a single image for the blog entiries. Featured images are randomly selected, but since only one image is defined, both blog posts use the same image.

Once you've run the application on the sample configuration, you can use the View menu to view the website that was created and scroll thorugh the various pages to see how they look. Afterwards you can create your own configuration starting with either the default configuration or the sample configuration and change the input file to your personal GEDCOM. Before launching the application with the new GEDCOM file, you might want to go through the various option pages to see what other features can be enabled, disabled or modified to better suit your needs.

Getting Help

If you would like to see an online gigatree in action, you can visit the author's home page where the latest version of Gigatrees is always in use, and where it implements many of the features available. It runs on an Apache web server and serves its pages dynamically from an SQLite3 database.

There is a comments section located at the bottom of this page where you can ask questions, report bugs or leave feedback. It is also used by the author occasionally to post tips.

Gigatrees has its own Blog where the author posts tutorials, white papers, advanced topics, and other technical articles as well as providing additional help on the various GEDCOM extensions supported and how to use them.

Details about each configurable option, and there are a lot, can be found in the Gigatrees application by clicking on any of the option headings. Your mouse cursor should display a question mark where help is available.

  • Does Gigatrees modify my GEDCOM file?

    No, Gigatrees never writes to your GEDCOM file. On launch, Gigatrees reads your GEDCOM file into memory. Any GEDCOM extensions that you configure are applied on the version in memory only.
  • The program crashed while running, what do I do?

    First, you want to check the build log to see that is actually says "CRASH". Sometimes the program terminates for other reasons like "File Not Found". If you actually had a crash and you have "Send Error Reports" enabled (default) under the Maintenance option, the crash dump was sent to the Gigatrees server for analysis. This is usually all that is necessary to report the error. Sometimes, however, the program stack is corrupted making the crash dump useless for troubleshooting the problem. In that case the only sure-fire way to fix the problem is for me to load the GEDCOM and configuration files into the debugger and attempt to reproduce the crash. Contact me directly and I'll let you know how we need to proceed.