Gramps is programmed in the Python language.
If you are an adventurous user, have some technical experience, or have a programming background, you might like to try Getting started with Gramps master.
You might want to start with obtaining the source code or have a look at Getting started with Gramps development. Once you have the code, writing a report or a quick report is a great way to learn to navigate through the codebase; see also Addons development. After getting familiar with Gramps, you might want to help work on a proposal, or make a proposal yourself you want to spend time on. Both can be done at the Proposals Portal, in collaboration with the bug/feature tracker.
- Getting started with Gramps development - introduction.
- Getting started with Gramps master - advanced.
- Gramps-devel mailing list
- Debugging Gramps
- Using database API - basics introductory programmer's guide to using the Gramps database access routines.
- Signals and Callbacks - The Gramps signaling system used to pass changes in the db, GUI, or other sources to various elements (usually the GUI) that need to be updated when changes occur.
- Translation tutorial
- Programming guidelines
- Developer policies
- Official committing policies
- Project License
- What to do for a new Gramps release - includes process for creating a Gramps source package.
- Addons development
- Git tutorial - used for Gramps and addons development. (for Gramps 4.2 and newer)
- Subversion (SVN) tutorial - used for addons development (for Gramps 4.1 and older)
- Using the bug tracker
- Python, Gtk3 tutorial
- Gramps Code Documentation and simple UML (svg).
No poll running at the moment
A good way to learn the Gramps codebase is by writing a small report. Database API and Report API. There is also a Report writing tutorial and a technical description of report generation.
Gramps Usability Testing Procedures
This page is for specific country genealogy contacts. This page will assist in development of country specific information such as handling of surnames, dates, etc.
This area is for developers to document the projects they are currently working on and their progress.