From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
GenoPro displaying an extended complex family
Original author(s)Daniel Morin[1]
Initial release1998; 24 years ago (1998)
Stable release
2016 ([2] / 27 January 2016; 5 years ago (2016-01-27)
Written inC++
Operating systemWindows
Wine officially supported[3]
Size3 MB
Available inMultilingual (28)
TypeGenealogy software

GenoPro is a software application for drawing family trees and genograms. GenoPro can store additional information such as pictures, contacts, places, sources, occupation and education history for each individual, as well as document the relationships among individuals.


GenoPro was created in 1998 by Daniel Morin while studying computer engineering at the University of Waterloo. His original idea stemmed from his father's request to design a genogram during his training as a family counselor.

The first version 1.00, was named "Generations". This version was a little portable 32 bit freeware version of only 202kB working on windows. With all the useful information and ability to edit very simply a generation tree of parents and child's.

GenoPro has had many constant updates and improvements over the years. The following is a list of major version number updates.[4]

  • December, 2006 - GenoPro 2007 also known as GenoPro 2.0
  • August, 2009 - GenoPro
  • December, 2010 - GenoPro 2011
  • October 2015 - GenoPro 2016 was released.


GenoPro’s architecture revolves around the pedigree layout where the user can view the entire genealogy tree at once, including family branches in any direction to illustrate the complex scenarios based on today's reconstructed families. With GenoPro, the user can manually customize the layout by positioning the individuals as well as using color to graphically emphasize what he/she feels is important in the family, such as ethnicity, culture, citizenship, education level, religion, political affiliations, and diseases in the case of medical pedigrees.

GenoPro can split a large family tree into many sub-trees and hyperlink them together. With only two mouse clicks, the user can move an entire branch to another sheet. GenoPro creates the necessary hyperlinks to connect the trees. Supporting multiple sub trees is necessary for scaling large family trees containing tens of thousands of individuals.

GenoPro can display data just like traditional genealogy software. GenoPro's spreadsheet includes hyperlinks to navigate between any objects, from parents to children to siblings, or across pictures, places, sources and citations. GenoPro's spreadsheet allows various functions, including in-place editing, bulk-editing, finding and replacing, data sorting, copying and pasting with other commercial spreadsheet applications, and of course, unlimited use of the undo/redo function for every operation.

GenoPro displays special symbols to distinguish different family relationships such as marriage, divorce, cohabitation and love affairs, as well as other symbols for emotional relationships such as friendship, love, distrust, hostility and jealousy.

GenoPro supports the creation of same-sex relationships,[5] unlike other programs such as Personal Ancestral File, which do not.

GenoPro's report generator can create HTML pages linked to interactive SVG (Scalable Vector Graphics) family trees. Reports in GenoPro can be customized by modifying the full source code for each built-in report. GenoPro's report generator uses scripting languages such as VBScript and JavaScript. GenoPro sports built-in ASP objects and many additional objects making it easy to generate elaborate reports. GenoPro can also load third-party COM modules made in other programming languages such C++, C#, VB.NET or Java and/or connect to external databases such as Microsoft SQL, MySQL, or Oracle to fetch additional data for generating a report. The current version of GenoPro includes a new type of report to generate Microsoft Word and OpenOffice documents.

GenoPro has its own object-oriented database engine designed to foster hierarchical data and circular references. Hierarchical data is the key for avoiding redundant data, which in turn eliminates inconsistencies, and reduces typing and memory storage. The greatest benefit of hierarchical data is providing a hierarchy for classifying data, such as grouping places by country, state, city and buildings. A building, such as a hospital or cemetery may further be divided into rooms and lots for finer data granularity. Since places are objects, the user can enter minute details, from street addresses and pictures, to latitude and longitude for GPS positioning. Any place deriving from a parent place will inherit its parent's values, unless overwritten.

GenoPro's report generator understands hierarchical data and its generated reports give the user the option to expand each node to view details. Also, the report generator displays Geo Mapping in the Google Map for every place defined by a city name or a GPS position. Circular referencing is very common in genealogy, such as displaying a picture for a place, and linking this place to its original picture. Relational databases do not handle circular referencing,[6][7][8] or if such a catastrophic scenario happens, the data is in a deadlock and cannot be deleted. Hierarchical data is nearly impossible to achieve for standard databases without writing massive bug-prone code requiring excessive processing, thus rendering the entire application extremely slow and unusable for large amounts of data.[9][10][11]

Languages Available[edit]

GenoPro is available in 56 languages, including Albanian, Arabic, Brazilian Portuguese, Bulgarian, Catalan, Czech, Dutch, English, Estonian, Finnish, French, German, Greek, Hebrew, Hungarian, Icelandic, Indonesian, Italian, Latvian, Lithuanian, Polish, Portuguese, Russian, Scots Gaelic, Spanish, Swedish, Turkish, Vietnamese and Ukrainian. GenoPro features an online collaboration system where users can translate the menus, dialogs and error messages.

File Format[edit]

GenoPro uses XML as its core file format, and its file extension .gno is a zipped-XML file. The user may rename the file extension .gno to .zip for editing the content of the genealogy document with a text editor. GenoPro can also import and export data in the GEDCOM format. It is important to realize that the GenoPro GEDCOM import cannot be relied upon to accurately transfer data from other genealogy programs.[12]

Other Platforms[edit]

Running GenoPro on a Macintosh requires special software such as Parallels, or Virtual PC for older non-Intel Macs. GenoPro runs on Linux and Mac with Wine,[13][14] but without the report generator.

See also[edit]


  1. ^ "Work Experience". Archived from the original on May 17, 2008. "Responsible for software architecture, development and quality of the product GenoPro; personally contributed 295,000 lines of C++ code." - Daniel Morin's Resume
  2. ^ GenoPro 2016 - GenoPro
  3. ^ "Archived copy". Archived from the original on 2011-06-03. Retrieved 2011-04-21.CS1 maint: archived copy as title (link)
  4. ^ "GenoPro Version History". GenoPro Help. GenoPro.
  5. ^ "How do I add relationships like man-man and woman-woman?". GenoPro Help. GenoPro. Retrieved 20 January 2011.
  6. ^ "Microsoft TechNet - SQL Server CREATE TABLE".
  7. ^ "Microsoft Developer Network - SQL Syntax".
  8. ^ "Oracle Documentation - SQL Error Messages".
  9. ^ Celko, Joe (21 May 2004). Book - Joe Celko's Trees and Hierarchies in SQL for Smarties. ISBN 1558609202.
  10. ^ "Optimizing Hierarchical data for Tree Controls".
  11. ^ "Storing Hierarchical Data in a Database".
  12. ^ "Import multiple NAME entries".
  13. ^ "GenoPro Setup on Wine".
  14. ^ WineHQ - GenoPro 2.x