Development Guide
About this Document
Purpose of this document
The purpose of this document is to support the development of new features for ILIAS. It offers guidance on the process for everyone that wants to participate in proposing, discussing, testing and maintaining functionality of ILIAS.
For developers it contains a lot of conventions that need to be respected, when they add new code. The biggest part contains information of the different programming concepts in ILIAS.
Relation to other documents
A lot of documentation has been moved to README.md files in the main ILIAS code repository in the past. Thus a better starting point for current development documentation may be https://github.com/ILIAS-eLearning/ILIAS/blob/trunk/docs/development/README.md.
However this document contains a) documentation that has not been moved to README files yet and b) documentation on legacy concepts, that are still being used in the ILIAS code.
Other supplementary documentation:
Change Log
Date | Version | Change | Author |
---|---|---|---|
28 June 2009 | 7.3 | Added chapter on code templates | Alex Killing |
6 August 2009 | 7.4 | Added page on standard user name presentation | Alex Killing |
13 August 2009 | 7.5 | Updated repository object plugin example | Alex Killing |
1 September 2009 | 7.6 | Added data table filter documentation | Alex Killing |
7 September 2009 | 7.7 | Added setDisableFilterHiding() method to table filters. | Alex Killing |
16 October 2009 | 7.8 | Fixed repository plugin example due to bug Latest change was due to Bug 5347. | Alex Killing |
21 December 2009 | 7.9 | Another fix in the repository plugin example. Missing break; in ilObjExampleGUI | Alex Killing |
3 May 2010 | 7.10 | Revised docu on tabbed menues | Alex Killing |
30 June 2010 | 7.11 | Added chapter on Import/Export | Alex Killing |
1 July 2010 | 7.12 | Added "selectable columns" feature description to "Data Tables" chapter. | Alex Killing |
7 Sep 2010 | 7.13 | Added "Getting involved as Developer" page. Updated several pages in the introduction chapter. Marked outdated information. | Alex Killing / Matthias Kunkel |
15 Mar 2011 | 7.14 | Added CSS Guidelines | Stephan Heller / Alex Killing |
28 Mar 2011 | 7.15 | Updated repository plugin example | Alex Killing |
6 May 2011 | 7.16 | Updated the chapter on testing | Alex Killing |
22 Jun 2011 | 7.17 | Added user interface plugin slot documentation | Alex Killing |
24 Nov 2011 | 7.18 | Revision of introduction, added $ilCtrl documentation, revised some other pages. | Alex Killing |
21 Dec 2011 | 7.19 | Added chapter on exceptions | Alex Killing |
14 Feb 2012 | 7.20 | Added chapter on event handling | Jörg Lützenkirchen |
10 Jan 2013 | 7.21 | Updated SVN server information (chap 4) | Matthias Kunkel |
6 Apr 2013 | 7.22 | Added chapter on Explorer2 service | Alex Killing |
26 June 2013 | 7.23 | Added chapter on Cloud-Module Plugins | Timon Amstutz |
26 May 2014 | 7.24 | Added chapter an ActiveRecords | Fabian Schmid |
30 July 2014 | 7.25 | Added chapter on Test Question Plugins | Fred Neumann |
1. Mai 2015 | 7.26 | Revised "Repository Object Plugin" Section for ILIAS 5.0 | Timon Amstutz |
07 June 2015 | 7.27 | Revised "The Development Process" and updated steps and descriptions | Matthias Kunkel |
04 April 2017 | 7.28 | Revised "CSS/Less Guidelines" and linked Guideline in Repo | |
18 August 2017 | 7.29 | Revised chapter "PDF Generation" | Maximilian Becker |
28 May 2018 | 7.30 | Revised description and example for Test Question Plugins | Fred Neumann |