Guide du développeur

De PGVWiki
Sauter à la navigation Sauter à la recherche

Il s'agit d'une liste d'articles qui peut intéresser tous ceux qui veulent contribuer au développement de PhpgedView ou qui désirent comprendre comment fonctionne ce programme.

La plupart des articles originaux dont accessibles sur le site web de documentation de développement de PhpGedView.

Mettre en place un environnement de développement

Si vous voulez contribuer au développement de PhpGedView vous devrez en premier lieu mettre en place un environment de développement. Voici un certain nombre de guides qui vous aideront à mettre en place cet environnement:

Tutoriaux pour le développeur et APIs

Getting Started Tutorial
A tutorial which will walk you through how to get started developing for PhpGedView.
Full Project API (PHPDoc)
Details the full API in PHPDoc format for the entire project.
Editing API
Describes the function calls for editing data in PhpGedView.
Créer un module
comment créer un module basique incluant un menu pour PGV
PGV Variables
Variables available to modules
Translation and Internationalization
Describes how to use the language translation and internationalization features of PhpGedView.
Model-View-Controller Architecture
Describes how PhpGedView uses the MVC pattern.
Commenting and Code Style
Describes the commenting practices for PhpGedView and the code formatting and style.
Language and text styles for Help screens
Provides some basic rules and guidelines for the presentation of Help text.

Structures des données internes

Data Model
The classes and objects which make up the PhpGedView data model.
Global Arrays
A list describing all arrays used in the core data model.

Formats des rapports

PhpGedView XML Report Templates
This page describes the PhpGedView XML report templates and provides information on how you can create your own reports


Testing, and frequent testing is important to the development and uptake of PhpGedView. Testing helps to minimise the occurrence of bugs as well as help stopping them from resurfacing at a later date.

SimpleTest can be used to write unit tests of classes.


The GEDCOM 5.5 Torture Test Files are valid but odd and confusing GEDCOMs that are useful in debugging problems with PhpGedView. It would be great if developers who made changes to PhpGedView to accommodate uncommon and weird GEDCOMs that are valid, update this file so that it can help other applications improve their GEDCOM support.

TODO: have a publicly available PhpGedView install that uses the Torture Test GEDCOM for testing. The PhpGedView modified GEDCOM should be submitted back to the author of the test. See [1]


There is a lot of optimization needed in the CSS code being used in PhpGedView. Many classes are redundant and a lot of streamlining is needed.

The CSS Optimizer can be used to reduce the size of the CSS files prior to a release. We should keep the original as is, and run them through this free online tool before release to greatly reduce the size of the files. Keeping the newlines option in the tool, will allow developers to still read the CSS and get ideas for better optimization (though it might not be in a format that we want to keep).

Another available tool is Formatter and Optimiser.

Travailler avec SVN

An article detailing working with SVN.
Merging Branches
Describes the process for merging SVN branches in the PhpGedView project.