Technical information

Third party libs

Slim

../_images/slim.png

New in version 0.9.

Required version: 3.x

All URLs in Galette are handled with Slim micro framework.

Where we previousely use on .php file per page to display, all is now in a routing system named and parameted. This makes changes and enhancements easiest and flexible. Slim documentation is a good starting point to understand how it works.

Laminas DB

../_images/zend.png

Required version: 2.8.2 (see https://github.com/laminas/laminas-db/issues/47)

Laminas Db library is used to manage all databases queries.

Even if the lib is compatible with several database systems; Galette is only compatible with:

Analog

Required version: 1.x

Analog is used to handle log files.

Smarty

../_images/smarty.png

Required version: 3.1.31

Page display is handled by Smarty templating system. All pages are rendered with a HTML5 doctype.

TCPDF

../_images/tcpdf.png

Required version: 6.x

TCPDF is a PDF generation lib Used to produce all PDF from Galette.

User interface

../_images/jquery.png

Required versions: 1.10.2 (JQuery), 1.10.3 (UI), 1.1.14 (Markitup)

To make user interface a bit dynamic and improve user experience, we choose to use a Javascript framework. We rely on JQuery, among others:

  • JQuery UI to handle tabs, date selection, modals, ...
  • markItUp used as HTML editor in mailings,
  • Selectize.js for dropdowns to look better and searchable.

Sending mails

../_images/phpmailer.png

Required version: *

Sending mails ins Galette is done with phpMailer library.

Unit tests

../_images/atoum.png

Galette uses atoum testing framework