Template:Developers/Intro
Welcome to the Gramps Developers Portal! This area is for people interested in helping with the development of the Gramps program.
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 view report is a great way to learn to navigate through the codebase; see also Addons development.
After becoming 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.
Developer Resources
- 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.org
- Python, Gtk3 tutorial
- Gramps Code Documentation and simple UML (svg).