Gramps (software)
Genealogy software
From Wikipedia, the free encyclopedia
Gramps, formerly GRAMPS (an acronym for Genealogical Research and Analysis Management Programming System),[2] is a free and open-source genealogy software.[9] It is developed in Python using PyGObject and utilizes Graphviz to create relationship graphs.
| Gramps | |
|---|---|
![]() | |
Screenshot of Gramps (v. 5.0.1) with its fan chart and the Given name cloud gramplet on the bottom. | |
| Original author | Don Allingham[1][2] |
| Developer | The Gramps Team[3] |
| Initial release | April 21, 2001[4] |
| Stable release | |
| Written in | Python (GTK+ 3) |
| Operating system | Linux, BSD, Solaris, Windows, macOS[6] |
| Platform | GTK+ 3 |
| Available in | Multilingual (40) [7] |
| Type | Genealogy software |
| License | GPL-2.0-or-later[8] |
| Website | gramps-project |
| Repository | |
Gramps represents a form of commons-based peer production,[10] created by genealogists for genealogists.[10][11] Beyond human family trees, the software has been used to create animal pedigree charts[12] and academic genealogies that map mentoring relationships among scientists, physicians, and scholars.[13]
Features
Gramps is a widely used offline genealogy software suite.[14] Its features include:
- Support for multiple languages and cultural contexts,[15] including patronymic, matronymic, and multiple surname systems.
- Full Unicode compatibility.
- Relationship calculators,[16] which accommodate language-specific relationship terminologies that lack direct translations in other languages.
- The ability to generate reports in various formats, such as .odt, LaTeX, .pdf, .rtf, .html, and .txt.
- Tools for creating a wide range of reports and charts, including relationship graphs of large, complex acyclic charts.[17]
- Extendability through more than 10 types of plugins. These plugins include Gramplets and Views; Gramplets provide dynamic or interactive views of data within the main Gramps interface.[18]
- An event-centric documentation approach, similar to the CIDOC Conceptual Reference Model used by many cultural heritage institutions.[19]
- A "sanity check" feature that flags improbable events, such as births involving individuals at unlikely ages.[2]
- Support for multiple calendar systems, including Gregorian, Julian, and Islamic calendars.[20]
- Comprehensive programmer's API documentation, with free and open-source code made publicly available[21]
File format
| Gramps XML[22] | |
|---|---|
| Filename extension |
.gramps |
| Internet media type |
application/x-gramps-xml[23] |
| Developed by | Gramps |
| Initial release | 2004 |
| Latest release | 1.7.2 19 March 2025 |
| Type of format | Genealogy data exchange |
| Extended from | XML |
| Website | gramps-project |
The core archival file format of Gramps is named Gramps XML and uses the file extension .gramps. It is extended from XML. Gramps XML is a free format, and its files are usually compressed using gzip.[24] The file format Portable Gramps XML Package uses the extension .gpkg and is currently a .tar.gz archive including Gramps XML together with all referenced media. Users may rename the file extension .gramps to .gz for editing the content of the genealogy document with a text editor. Internally, Gramps uses SQLite as the default database backend, with other databases available as plugins.[25]
Gramps can import from the following formats:[26] Gramps XML, Gramps Package (Portable Gramps XML), Gramps 2.x .grdb (older versions Gramps), GEDCOM, CSV.
Gramps supports exporting data in the following formats: Gramps XML, Gramps Package (Portable Gramps XML), GEDCOM, GeneWeb's GW format,[27] Web Family Tree (.WFT) format,[28] vCard, vCalendar, CSV.
Programs that support Gramps XML
- Gramps Web is a collaborative web app built on the core of Gramps itself and supports Gramps XML import and export[29]
- Betty by Bart Feenstra generates static websites from Gramps XML and Gramps XML Package files as alternatives to GEDCOM.[30]
- PhpGedView (version 4.1 and up) supports[31] output to Gramps XML.
- The Gramps PHP component JoomlaGen for Joomla uses an upload of the GRAMPS XML database export to show genealogical information and overviews. JoomlaGen is compatible with GRAMPS 3.3.0.[32]
- The script tmg2gramps by Anne Jessel converts The Master Genealogist v6 genealogy software datafile to a Gramps v2.2.6 XML.[33]
The project began as GRAMPS in 2001, and the first stable release was in 2004.[9]
Release history
The following table shows a selected history of new feature releases for project. (Patches and bug fixes are published on GitHub and periodically collated in minor "bug fix" releases.)[37][38][39]
| Version | Release date | Name | Comment |
|---|---|---|---|
| GRAMPS 1.0.0 | 2004-02-11 | "Stable as a Tombstone" | Used XML to store all information. (Don originally called the program Relativity before his father suggested the name GRAMPS (Genealogical Research and Analysis Management Programming System)) |
| GRAMPS 2.0.0 | 2005-05-11 | "The Bright Side of Life" | Introduction of the Berkeley database backend. |
| GRAMPS 2.0.8 | 2005-09-05 | "Romani ite domum" | First port to Macintosh OSX posted to MacPorts. |
| GRAMPS 2.2.1 | 2006-10-30 | "One, two, five!" | Originally only available for Unix-like operating systems, with this release GRAMPS became available for Windows. |
| GRAMPS 3.0.0 | 2008-03-24 | "It was just getting interesting." | Introduced the new Family Tree database format .gpkg and deprecated the old .grdb database format. Plugin system called "Gramplets". |
| Gramps 3.2.0 | 2010-04-15 | "I am your father" | Name changed from GRAMPS. New management system for plugins, performance optimization, hierarchical place list, and map plotting view. |
| Gramps 3.4.0 | 2012-05-21 | "Always look on the bright side of life" | Replaced Source References with Citations that allow sharing and can have media objects and 'data' elements attached to them. The Gramps XML Specification was updated to make it idempotent. |
| Gramps 4.0.0 | 2013-05-21 | "The Miracle of Birth" | Conversion to GTK+ 3, add support for Python 3. Keeps the same data format as Gramps 3.4. |
| Gramps 4.1.0 | 2014-06-18 | "Name go in book" | Full Python 3 support. New place hierarchies model.[40] Different data format to the Gramps 3.4 series. |
| Gramps 4.2.0 | 2015-08-03 | Python 3 support only (Python 2 support dropped).[41] Different data format to the GRAMPS 3.4 series. | |
| Gramps 5.0.0 | 2018-07-24 | Python 3.2+ only / GTK 3.10+ / BSDDB 3 (Default backend) / SQLite3 (Experimental backend) | |
| Gramps 5.1.0 | 2019-08-21 | Python 3.3+ only / GTK 3.12+ / SQLite3 (Default backend) / BSDDB 3 (Legacy backend) | |
| Gramps 5.2.0 | 2024-02-23 | Python 3.8+ only / GTK 3.24+ / SQLite3 / BSDDB 3 (Read-only for upgrades) | |
| Gramps 6.0.0 | 2025-03-19 | Python 3.9+ only / GTK 3.24+ / SQLite3 / BSDDB 3 (Read-only for upgrades) | |
